Skip to content

Commit 4593097

Browse files
authored
chore: admin updates (#395)
1 parent 8b59bba commit 4593097

File tree

136 files changed

+1659
-925
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

136 files changed

+1659
-925
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,4 @@ docs/tutorials/1.developers/4.apps-development/3.multimodality/dial-cookbook/exa
3636
# Local dev files
3737
~*
3838
**/*.quarto_ipynb
39+
.vscode/spellright.dict

docs/platform/0.architecture-and-concepts/4.agentic-platform.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ DIAL can serve as an agentic platform, where any existing agent can be used as a
1414
1515
### Model Adapters
1616

17-
DIAL includes connectors to all major LLM vendors such as [Amazon Bedrock](https://github.com/epam/ai-dial-adapter-bedrock/?tab=readme-ov-file#supported-models), [Google Vertex AI](https://github.com/epam/ai-dial-adapter-vertexai/?tab=readme-ov-file#supported-models), and [Azure OpenAI](https://github.com/epam/ai-dial-adapter-openai). You can also work with open-source and micro models, self-hosted or models listed on HuggingFace or DeepSeek.
17+
DIAL includes connectors to all major LLM vendors such as [Amazon Bedrock](https://github.com/epam/ai-dial-adapter-bedrock/?tab=readme-ov-file#supported-models), [Google Vertex AI](https://github.com/epam/ai-dial-adapter-vertexai/?tab=readme-ov-file#supported-models), and [Azure OpenAI](https://github.com/epam/ai-dial-adapter-openai). You can also work with open-source and micro models, self-hosted or models listed on Hugging Face or DeepSeek.
1818

1919
> Refer to [available language models](/docs/platform/2.supported-models.md) to see the list of supported models and available model adapters.
2020

docs/platform/0.architecture-and-concepts/5.app-server.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ The platform also includes a rich set of tools and features to support the devel
2424
* **Application Runners**: DIAL supports the concept of application runners which process parameters of specific application types. Refer to [Schema-Rich Applications](/docs/platform/3.core/7.apps.md#schema-rich-applications) for more details.
2525
* **Experimentation and Prototyping**: Application Runners enable users to quickly [prototype](/docs/tutorials/0.user-guide.md#application-builder) apps in no-code editors and test them before deployment. [Code apps](/docs/platform/3.core/7.apps.md#code-apps) enable power users to write and execute custom Python code directly within the DIAL Chat application and deploy it on the platform's infrastructure in a few clicks. Once ready, applications can be published on the [Marketplace](/docs/platform/4.chat/1.marketplace.md) or [shared](/docs/platform/7.collaboration-intro.md#sharing) with specific users.
2626
* **Middleware**: DIAL provides a robust middleware available out of the box to create powerful apps, enabling you to focus on your core business needs without having to reinvent the wheel. The middleware includes:
27-
* [Language models](/docs/platform/2.supported-models.md): DIAL supports connectivity with leading LLM vendors, allowing you to configure the system to match your preferences. You can also integrate language models from the open-source community, alternative vendors, fine-tuned micro models, self-hosted models, or those listed on platforms like HuggingFace or DeepSeek.
27+
* [Language models](/docs/platform/2.supported-models.md): DIAL supports connectivity with leading LLM vendors, allowing you to configure the system to match your preferences. You can also integrate language models from the open-source community, alternative vendors, fine-tuned micro models, self-hosted models, or those listed on platforms like Hugging Face or DeepSeek.
2828
* [Interceptors](/docs/platform/3.core/6.interceptors.md): Interceptors let you add custom logic to incoming and outgoing requests for models and applications. This enables functionality such as PII obfuscation, guardrails, safety checks, and more.
2929
* [RBAC](/docs/platform/3.core/2.access-control-intro.md): DIAL integrates with various identity providers (IDPs), allowing you to implement and support a custom RBAC system tailored to your organizational needs.
3030
* [Rate Limit](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/roles.md#rolesrole_namelimits): DIAL allows you to define flexible usage and cost limits for [JWT](/docs/tutorials/2.devops/2.auth-and-access-control/1.jwt.md) and [API keys](/docs/tutorials/2.devops/2.auth-and-access-control/0.api-keys.md), giving you control over the usage of your applications and models.

docs/platform/2.supported-models.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Supported Models
22

3-
DIAL allows you to access models from all major LLM providers, language models from the open-source community, alternative vendors, and fine-tuned micro models, as well as self-hosted or models listed on HuggingFace or [DeepSeek](https://youtu.be/79jR9-wg4vk?si=oE06sFiGjVlhlkZn).
3+
DIAL allows you to access models from all major LLM providers, language models from the open-source community, alternative vendors, and fine-tuned micro models, as well as self-hosted or models listed on Hugging Face or [DeepSeek](https://youtu.be/79jR9-wg4vk?si=oE06sFiGjVlhlkZn).
44

55
Compatibility with [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference), makes it simple to add new adapters for language models or develop them with [DIAL SDK](https://github.com/epam/ai-dial-sdk).
66

docs/tutorials/1.developers/0.local-run/4.quick-start-with-self-hosted-model-vllm.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,20 @@ cd dial-docker-compose/vllm
2121
## Step 2: Choose a model to run
2222

2323
vLLM supports a wide range of popular open-source models.
24-
We'll demonstrate how integrate HuggingFace chat model served by vLLM in the DIAL Platform.
24+
We'll demonstrate how integrate Hugging Face chat model served by vLLM in the DIAL Platform.
2525

2626
## Step 3: Launch DIAL Chat
2727

2828
1. Configure `.env` file in the current directory according to the type of model you've chosen:
2929

30-
* Set `VLLM_CHAT_MODEL` for the name of a chat model. A lightweight [Qwen/Qwen2.5-Coder-0.5B-Instruct-GPTQ-Int4](https://huggingface.co/Qwen/Qwen2.5-Coder-0.5B-Instruct-GPTQ-Int4) chat model from HuggingFace is a default.
30+
* Set `VLLM_CHAT_MODEL` for the name of a chat model. A lightweight [Qwen/Qwen2.5-Coder-0.5B-Instruct-GPTQ-Int4](https://huggingface.co/Qwen/Qwen2.5-Coder-0.5B-Instruct-GPTQ-Int4) chat model from Hugging Face is a default.
3131

3232
2. Then run the following command to run vLLM server and key DIAL Platform components:
3333

3434
```sh
3535
docker compose up --abort-on-container-exit
3636
```
3737

38-
> Keep in mind that a typical size of a lightweight HuggingFace model is around a few gigabytes. So it may take a few minutes _(or more)_ to download it on the first run, depending on your internet bandwidth and the size of the model you choose.
38+
> Keep in mind that a typical size of a lightweight Hugging Face model is around a few gigabytes. So it may take a few minutes _(or more)_ to download it on the first run, depending on your internet bandwidth and the size of the model you choose.
3939

4040
3. Finally, open http://localhost:3000/ in your browser to launch the DIAL Chat application and select an appropriate DIAL deployment to converse with `Self-hosted chat model` deployment for the `VLLM_CHAT_MODEL`.

docs/tutorials/3.admin/access-management-keys.md

Lines changed: 39 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Keys
22

3-
## About API Keys
3+
## Introduction
44

55
DIAL Core uses API keys to manage access of external applications for resources in DIAL.
66

77
> * Refer to [Access Control](/docs/platform/3.core/2.access-control-intro.md) to learn more about access control in DIAL.
88
> * Refer to [Tutorials](/docs/tutorials/2.devops/2.auth-and-access-control/0.api-keys.md) to learn how to configure access and usage control for API keys.
99
10-
## Keys Main Screen
10+
## Main Screen
1111

1212
On the main screen you can see all existing API keys with their details.
1313

@@ -17,19 +17,20 @@ On the main screen you can see all existing API keys with their details.
1717

1818
> **TIP**: Use the **Columns** selector to customize which columns are visible in the grid.
1919
20-
| Column | Definition |
20+
| Column | Definition |
2121
|---------------------------|---------------------------------------------------------------------------------------------------------------------|
22-
| **ID** | A unique key under the Keys section of DIAL Admin. |
23-
| **Display Name** | A user-friendly name of the Key. |
22+
| **ID** | A unique key under the Keys section of DIAL Admin. |
23+
| **Display Name** | A user-friendly name of the Key. |
2424
| **Description** | Optional notes explaining the key’s purpose, owner/team, or special instructions. |
2525
| **Key generation time** | A key's creation timestamp. Useful for auditing and correlating the key's usage with system changes or deployments. |
2626
| **Expiration time** | A key's expiration timestamp. Setting expirations enforces regular key rotation. |
27-
| **Status** | The current state of the key. |
28-
| **Project** | The name of the project the key is associated with. |
29-
| **Updated time** | Timestamp of the latest change. |
30-
| **Creation time** | Date and time when the key artefact was created in DIAL. |
31-
| **Project contact point** | Email of the responsible person or group. |
32-
| **Secured** | Indication if it is secured API key. |
27+
| **Status** | The current state of the key. |
28+
| **Project** | The name of the project the key is associated with. |
29+
| **Updated time** | Timestamp of the latest change. |
30+
| **Creation time** | Date and time when the key artefact was created in DIAL. |
31+
| **Project contact point** | Email of the responsible person or group. |
32+
| **Secured** | Indication if it is secured API key. |
33+
| **Topics** | Tags assigned to the key (e.g. "admin", "user"). |
3334

3435

3536
## Create Keys
@@ -39,14 +40,14 @@ Follow these steps to create a new API key:
3940
1. Click **Create** to invoke the **Create Key** modal.
4041
2. In the modal, specify the following parameters for the new key:
4142

42-
| Field | Required | Description & Use Cases |
43-
|---------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
44-
| **ID** | Yes | A unique key under the Keys section of DIAL Admin. Click Generate to automatically create unique GUID. |
45-
| **Display Name** | Yes | A user-friendly name of the Key. |
46-
| **Description** | No | An optional free-form text.<br />Use to document the key’s purpose, owner team, or usage context. |
47-
| **Project** | Yes | Logical project or department grouping (e.g. "AnalyticsTeam").<br />Helps organize keys and apply cost/usage reporting by project. |
43+
| Field | Required | Description |
44+
|---------------------|----------|-------------|
45+
| **ID** | Yes | A unique key under the Keys section of DIAL Admin. Click Generate to automatically create unique GUID.|
46+
| **Display Name** | Yes | A user-friendly name of the Key. |
47+
| **Description** | No | An optional free-form text.<br />Use to document the key’s purpose, owner team, or usage context. |
48+
| **Project** | Yes | Logical project or department grouping (e.g. "AnalyticsTeam").<br />Helps organize keys and apply cost/usage reporting by project. |
4849
| **Key value** | Yes | The actual secret string used for authentication.<br />Initially hidden; click **👁️** to reveal.<br />Press **Generate** to have its value automatically generated in GUID format. |
49-
| **Validity Period** | Yes | A key's expiration time period. Use to enforce credential rotation and retirement. |
50+
| **Validity Period** | Yes | A key's expiration time period. Use to enforce credential rotation and retirement. |
5051

5152
3. Once all required fields are filled, click **Create**. The dialog closes and the new [key configuration](#key-configuration) screen is opened. A new key entry will appear immediately in the listing once created.
5253

@@ -73,20 +74,20 @@ In the Properties tab, you can view metadata and manage the selected settings fo
7374

7475
![](img/img_44.png)
7576

76-
| Field | Required | Description & Use Cases |
77-
|---------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------|
78-
| **ID** | - | A unique key under the Keys section of DIAL Admin. |
79-
| **Creation Time** | - | Date and time when the key artefact was created in DIAL. |
80-
| **Key Generation Time** | - | Date and time when the actual key value was last modified. |
81-
| **Expiration Time** | - | Date and time when the key is expiring. |
82-
| **Status** | - | Indicates whether the key is valid or not. |
77+
| Field | Required | Description |
78+
|---------------------------|----------|------------|
79+
| **ID** | - | A unique key under the Keys section of DIAL Admin. |
80+
| **Creation Time** | - | Date and time when the key artefact was created in DIAL. |
81+
| **Key Generation Time** | - | Date and time when the actual key value was last modified. |
82+
| **Expiration Time** | - | Date and time when the key is expiring. |
83+
| **Status** | - | Indicates the validity status of a key.<br /> A key is **invalid** in cases when there are no roles assigned to it, or its secret value is missing or is expired.|
8384
| **Display Name** | Yes | A user-friendly identifier of a key.<br />Use meaningful names to tie keys back to projects, environments, or teams. |
8485
| **Description** | No | A free-form text.<br />Use to document the key’s purpose, owner team, or usage context (e.g. "Used by QH Data Ingestion pipeline"). |
8586
| **Project** | Yes | Logical project or department grouping (e.g. "QH", "AnalyticsTeam").<br />Helps organize keys and apply cost/usage reporting by project. |
86-
| **Project contact point** | No | Email of the responsible person or group. |
87+
| **Project contact point** | No | Email of the responsible person or group. |
8788
| **Key value** | Yes | The actual secret string used for authentication.<br />Initially hidden - click **👁️** to reveal.<br />Press **Copy** to copy it to clipboard. |
88-
| **Secured** | Yes | Toggle to make the key a [secured API key](/docs/platform/3.core/4.privacy.md#applications-audit-logs). |
89-
89+
| **Secured** | Yes | Toggle to make the key a [secured API key](/docs/platform/3.core/4.privacy.md#applications-audit-logs). |
90+
| **Topics** | No | Tags that you can assign to keys (e.g. "admin", "user"). Helps to split keys into categories for better navigation on UI. |
9091

9192
### Roles
9293

@@ -122,17 +123,21 @@ Use to stop associating API keys with roles.
122123
123124
### JSON Editor
124125

125-
For advanced scenarios of bulk updates, copy/paste between environments, or tweaking settings not exposed in the form UI—you can switch to the **JSON Editor** in any key's configuration page.
126+
**Advanced users with technical expertise** can work with the keys properties in a JSON editor view mode. It is useful for advanced scenarios of bulk updates, copy/paste between environments, or tweaking settings not exposed on UI.
126127

127-
![](img/75.png)
128+
> **TIP**: You can switch between UI and JSON only if there are no unsaved changes.
128129
129-
##### Switching to the JSON Editor
130+
![](img/keys_json.png)
130131

131-
1. Navigate to **Access Management → Keys**, then select the key you want to edit.
132-
2. Click the **JSON Editor** toggle (top-right). The UI reveals the raw JSON.
132+
In JSON editor, you can use the view dropdown to select between Admin format and Core format. Note, that these formatting options are for your convenience only and do not render properties as they are defined in DIAL Core. After making changes, the **Sync with core** indicator on the main configuration screen will inform you about the synchronization state with DIAL Core.
133133

134-
> **TIP**: You can switch between UI and JSON only if there are no unsaved changes.
134+
##### Working with JSON Editor
135135

136+
1. Navigate to **Access Management → Keys**, then select the key you want to edit.
137+
2. Click the **JSON Editor** toggle (top-right). The UI reveals the raw JSON.
138+
3. Chose between the Admin and Core format to see and work with properties in the necessary format. **Note**: Core format view mode does not render the actual configuration stored in DIAL Core but the configuration in Admin service displayed in the DIAL Core format.
139+
4. Make changes and click **Save** to apply them.
140+
5. After making changes, the **Sync with core** indicator on the main configuration screen will inform you about the synchronization state with DIAL Core.
136141

137142
## Delete
138143

0 commit comments

Comments
 (0)