Skip to content

Commit 86f1ed3

Browse files
authored
DOC-812 | New Query Editor & AQLizer feature page (#810)
* Initial content about the new Query Editor * Describe how to work with/generate queries and adjust the viewport * Remembered/saved queries, product naming * Capitalize Query Editor, long page title * Add icons, update product name * Query management, AQLizer setup and feature overview * Remove Experimental tag * Add AQLizer to list of major AI Suite components * Add screenshot * AQLizer screenshot, hotkey, and Open in Editor button * Crop screenshot
1 parent 17e9b62 commit 86f1ed3

File tree

14 files changed

+196
-20
lines changed

14 files changed

+196
-20
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@ To document hotkeys and key combinations to press in a terminal or graphical
454454
user interface, use the `kbd` shortcode:
455455

456456
```markdown
457-
Hit {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}} to run the query.
457+
Press {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}} to run the query.
458458
```
459459

460460
#### Cards

site/content/ai-suite/_index.md

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: AI Suite
2+
title: The AI Suite of the Arango AI Data Platform
33
menuTitle: AI Suite
44
weight: 2
55
description: >-
@@ -11,13 +11,15 @@ description: >-
1111
---
1212
## What's included
1313

14-
AI Suite are comprised of two major components:
14+
The AI Suite is composed of three major components:
1515

16-
- [**GraphRAG**](./graphrag/_index.md): A complete solution for extracting entities
16+
- [**GraphRAG**](graphrag/_index.md): A complete solution for extracting entities
1717
from text files to create a knowledge graph that you can then query with a
1818
natural language interface.
19-
- [**GraphML**](./graphml/_index.md): Apply machine learning to graphs for link prediction,
19+
- [**GraphML**](graphml/_index.md): Apply machine learning to graphs for link prediction,
2020
classification, and similar tasks.
21+
- [**AQLizer**](aqlizer.md): Generate AQL queries from natural language to explore
22+
your data and gain insights without having to learn the query language first.
2123

2224
Each component has an intuitive graphical user interface integrated into the
2325
Arango Data Platform web interface, guiding you through the process.
@@ -26,14 +28,14 @@ Alongside these components, you also get the following additional features:
2628

2729
- [**Graph Analytics**](graph-analytics.md): Run graph algorithms such as PageRank
2830
on dedicated compute resources.
29-
- [**Jupyter notebooks**](notebook-servers.md): Run a Jupyter kernel in the platform for hosting
30-
interactive notebooks for experimentation and development of applications
31-
that use ArangoDB as their backend.
32-
- **Public and private LLM support**: Use public LLMs such as OpenAI
33-
or private LLMs with [Triton Inference Server](reference/triton-inference-server.md).
34-
- [**MLflow integration**](reference/mlflow.md): Use the popular MLflow as a model registry for private LLMs
35-
or to run machine learning experiments as part of the Arango Data Platform.
36-
- **Application Programming Interfaces**: Use the underlying APIs of the
31+
- [**Jupyter notebooks**](notebook-servers.md): Run a Jupyter kernel in the
32+
Data Platform for hosting interactive notebooks for experimentation and
33+
development of applications that use ArangoDB as their backend.
34+
- **Public and private LLM support**: Use public large language models (LLMs)
35+
such as OpenAI or private LLMs with [Triton Inference Server](reference/triton-inference-server.md).
36+
- [**MLflow integration**](reference/mlflow.md): Use the popular MLflow as a
37+
model registry for private LLMs or to run machine learning experiments.
38+
- **Application Programming Interfaces (APIs)**: Use the underlying APIs of the
3739
AI Suite and build your own integrations. See the
3840
[Protocol Documentation](https://arangoml.github.io/platform-dss-api/GenAI-Service/proto/index.html)
3941
for more details.

site/content/ai-suite/aqlizer.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
title: The AQLizer feature of the Arango AI Data Platform
3+
menuTitle: AQLizer
4+
weight: 17
5+
description: >-
6+
Generate AQL queries from natural language with the AQLizer feature of the
7+
AI Suite
8+
---
9+
## Overview
10+
11+
The AQLizer feature makes it very easy to query your data in the AI Data Platform.
12+
It automatically translates your requests written in plain language to ArangoDB's
13+
query language AQL using generative AI. You can start to explore your data and
14+
gain insights without having to learn the query language first.
15+
16+
For example, you can ask questions or use instructions like the following:
17+
- List all distinct surnames in the database and sorted in descending order
18+
- How many persons are there with the surname "Stark"?
19+
- Find the parents of "Arya Stark"
20+
21+
## Interfaces
22+
23+
### Web interface
24+
25+
The AQLizer feature is integrated into the AI Data Platform web interface.
26+
You can access it directly from the **Query Editor**. You can generate, verify,
27+
and refine queries in one place. To learn more about how to set up and generate
28+
queries, see the [Query Editor](../data-platform/query-editor.md#generate-queries-aqlizer)
29+
documentation of the Data Platform.
30+
31+
![Screenshot of the AQLizer UI with a prompt and the generated query](../images/data-platform-aqlizer.png)
32+
33+
### API
34+
35+
You can also utilize the AQLizer feature programmatically using an API.
36+
See the [Natural Language to AQL Translation Service](reference/natural-language-to-aql.md)
37+
documentation for details.

site/content/ai-suite/graph-analytics.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22
title: Graph Analytics
33
menuTitle: Graph Analytics
44
weight: 15
5-
description: |
5+
description: >-
66
Graph analytics analyzes information networks to extract insights from data
7-
relationships using algorithms like PageRank for fraud detection, recommendations, and network analysis
7+
relationships using algorithms like PageRank for fraud detection,
8+
recommendations, and network analysis
89
aliases:
910
- ../graphs/graph-analytics
1011
---
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Reference
2+
title: AI Suite Reference Documentation
33
menuTitle: Reference
44
description: ''
5+
weight: 40
56
---
6-

site/content/ai-suite/reference/natural-language-to-aql.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ description: >-
55
The Natural Language to AQL Translation Service is a powerful tool that allows
66
you to interact with your ArangoDB database using natural language queries
77
weight: 20
8-
draft: true # Not available in pre-release
98
---
109
## Overview
1110

site/content/arangodb/3.12/get-started/start-using-aql/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ ArangoDB's web interface has a **Queries** section for
3232
4. Specify any needed bind parameters in the panel on the right-hand side on the
3333
**Bind Variables** tab, e.g. set `name` to a value of `AQL`.
3434
5. Optionally set query options on the **Options** tab.
35-
6. Click the **Execute** button or hit {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}}.
35+
6. Click the **Execute** button or press {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}}.
3636
{{< /tab >}}
3737

3838
{{< tab "arangosh" >}}

site/content/arangodb/3.13/get-started/start-using-aql/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ ArangoDB's web interface has a **Queries** section for
3232
4. Specify any needed bind parameters in the panel on the right-hand side on the
3333
**Bind Variables** tab, e.g. set `name` to a value of `AQL`.
3434
5. Optionally set query options on the **Options** tab.
35-
6. Click the **Execute** button or hit {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}}.
35+
6. Click the **Execute** button or press {{< kbd "Ctrl Return" >}} respectively {{< kbd "Cmd Return" >}}.
3636
{{< /tab >}}
3737

3838
{{< tab "arangosh" >}}
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
---
2+
title: The Query Editor of the Arango Data Platform
3+
menuTitle: Query Editor
4+
weight: 30
5+
description: >-
6+
Write, run, and analyze AQL queries using an IDE-like interface
7+
---
8+
## Features
9+
10+
The Query Editor of the Arango Data Platform offers the following features:
11+
12+
- **Tabbed interface**:
13+
Work on multiple queries concurrently via tabs.
14+
15+
- **Query and results side by side**:
16+
View the results of running, explaining, and profiling a query in a separate
17+
tab, with one results tab for each query tab.
18+
19+
- **Result history**:
20+
A results tab shows the previous run, explain, and profile outputs.
21+
You can individually collapse and expand the entries, as well as clear the
22+
entire history.
23+
24+
- **Saved queries**:
25+
You can save frequently used queries to add them to a sidebar for all users
26+
in the current database.
27+
28+
- **Remembered queries and results**:
29+
The Query Editor remembers its state including unsaved queries as well as
30+
results across sessions using your local browser storage.
31+
32+
- **Re-organizable viewport**:
33+
You can drag and drop tabs to re-order them and move them between existing
34+
panels, as well as split panels vertically and horizontally into more panels.
35+
36+
- **Ask AI for AQL Queries (AQLizer)**:
37+
Describe what you want in natural language and generate AQL queries right
38+
from the Query Editor. This feature is only available in the
39+
Arango AI Data Platform.
40+
41+
![Screenshot of the Query Editor with an AQL query for retrieving movie documents on the left and the results displayed on the right](../images/data-platform-query-editor.png)
42+
43+
{{< info >}}
44+
The Query Editor of the Data Platform is not feature-complete. It currently
45+
lacks features like syntax highlighting and a way to set query options.
46+
Use the query editor of ArangoDB instead if you need these features.
47+
You can find it under **Management** in the Data Platform web interface, and
48+
then **Queries** in the second-level navigation.
49+
{{< /info >}}
50+
51+
## Work with queries
52+
53+
You can enter your AQL query code into the default tab, or open more query tabs
54+
at any point by clicking the button at the top of a panel to the right of the
55+
tabs ({{< icon "add" >}}).
56+
57+
You can close tabs with the button next to the tab name ({{< icon "close" >}}).
58+
When you close all tabs, the viewport opens the **Welcome** tab.
59+
60+
A floating panel in the top right corner lets you enter values for
61+
**Bind variables** if there are any such placeholders in the query. You can
62+
minimize this panel to a button.
63+
64+
The following buttons are available at the bottom of a query tab:
65+
66+
- **Save**: Store the query and the bind variables under a name you provide.
67+
The saved queries of the current database are listed in the sidebar on the
68+
left-hand side under **Saved**, where you can also clone, rename, and delete them.
69+
- **AQLizer**: This button is only visible if you use the AI Data Platform.
70+
See [Generate queries (AQLizer)](#generate-queries-aqlizer).
71+
- **Run query**: Execute the AQL query normally.
72+
- **Explain**: Show the execution plan for the query.
73+
- **Profile**: Run the query with detailed tracking of its performance.
74+
75+
The sidebar on the left-hand side allows you to manage queries:
76+
77+
- **Search queries**: Filter the list of **Saved** queries by name.
78+
- **Saved**: Open previously saved queries by clicking the name, or click the
79+
small button ({{< icon "ellipsis" >}}) to duplicate, rename, or delete
80+
saved queries.
81+
- **Running**: Open a tab with an overview over the currently executing queries.
82+
You can also kill a query from this view.
83+
- **Slow Queries**: Open a tab with a list of past queries that ran longer than
84+
a server-configured threshold.
85+
86+
## Generate queries (AQLizer)
87+
88+
{{< tag "AI Data Platform" >}}
89+
90+
For an introduction to the AQLizer, see
91+
[The AQLizer feature of the Arango AI Data Platform](../ai-suite/aqlizer.md).
92+
93+
Before you can generate AQL queries, you need to set up the AQLizer feature.
94+
95+
1. Click the **AQLizer** button to open the panel for generating AQL queries
96+
with AI.
97+
2. On first use, you are asked for an **OpenAPI API Key** and you can select the
98+
desired **OpenAI Model**.
99+
3. Click **Start Service**.
100+
4. You can check the status of the service as well as stop it from the
101+
**Manage Services** dialog.
102+
103+
Once the AQLizer service is ready, you can generate queries.
104+
105+
1. In the AQLizer tab, enter a self-contained question or instructions in
106+
natural language, like "List all distinct surnames of characters older than 30".
107+
2. Click **Ask** or press {{< kbd "Return" >}} to use GenAI for generating an AQL query.
108+
3. Click **Open in Editor** for a new query tab, where you can verify, refine,
109+
and run the query.
110+
111+
{{< warning >}}
112+
Always verify AI-generated queries.
113+
AI can make mistakes or produce unexpected results.
114+
{{< /warning >}}
115+
116+
![Screenshot of the AQLizer UI with a prompt and the generated query](../images/data-platform-aqlizer.png)
117+
118+
## Adjust the viewport
119+
120+
The following options for re-organizing how tabs and panels are arranged in the
121+
Query Editor are available:
122+
123+
- You can drag a tab with your mouse to a different place in the tab list to
124+
change the order of the tabs or move a tab to a different panel.
125+
- You can drag a tab to the left or right side of a panel to split it
126+
horizontally, or to the top or bottom to split it vertically.
127+
If you move or close the last remaining tab of panel elsewhere, the space is
128+
automatically reclaimed.
31.1 KB
Loading

0 commit comments

Comments
 (0)