Skip to content

Commit e45fcca

Browse files
authored
chore: admin updates (#408)
1 parent 3ddf09a commit e45fcca

40 files changed

+396
-240
lines changed

docs/platform/2.supported-models.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,22 @@
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 Hugging Face or [DeepSeek](https://youtu.be/79jR9-wg4vk?si=oE06sFiGjVlhlkZn).
3+
DIAL allows you to access and use AI 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, NVIDIA NIM or [DeepSeek](https://youtu.be/79jR9-wg4vk?si=oE06sFiGjVlhlkZn).
4+
5+
## Model Adapters
6+
7+
Adapters unify the APIs of respective AI models to align with the Unified Protocol of DIAL Core.
48

59
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).
610

7-
## Model Adapters
11+
DIAL includes adapters for all major LLM providers:
12+
13+
* [OpenAI](https://github.com/epam/ai-dial-adapter-openai)
14+
* [Bedrock](https://github.com/epam/ai-dial-adapter-bedrock/?tab=readme-ov-file#supported-models)
15+
* [Vertex](https://github.com/epam/ai-dial-adapter-vertexai/?tab=readme-ov-file#supported-models)
816

9-
DIAL includes adapters for all major LLM providers such as Amazon Bedrock, Google Vertex AI, and Azure OpenAI:
17+
## How to Enable AI Models in DIAL
1018

11-
> * [OpenAI](https://github.com/epam/ai-dial-adapter-openai)
12-
> * [Bedrock](https://github.com/epam/ai-dial-adapter-bedrock/?tab=readme-ov-file#supported-models)
13-
> * [Vertex](https://github.com/epam/ai-dial-adapter-vertexai/?tab=readme-ov-file#supported-models)
19+
You can add a model into the DIAL platform either by a direct configuration of [DIAL Core](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/models.md) or via the [DIAL Admin panel](/docs/tutorials/3.admin/entities-models.md), where you can add AI models that are based on DIAL AI model adapters, containers deployed in DIAL or external endpoints.
1420

1521
## Available Models
1622

docs/tutorials/3.admin/assets-toolsets.md

Lines changed: 62 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ In the **Properties** tab, you can preview and modify selected toolset's basic p
109109
| **Author** | Username or system ID associated with the user who created or last updated this toolset. |
110110
| **Creation Time** | Timestamp of when the toolset was created. |
111111
| **Updated Time** | Date and time when the toolset's configuration was last updated. |
112-
| **Authentication** | Current authentication status of the selected toolset. |
112+
| **Authentication** | Current authentication status of the selected toolset: <br />- **Logged out**: The toolset in not authenticated with the related MCP server. <br />- **Logged in (Personal)**: The toolset is authenticated for your user only. <br />- **Logged in (Organization)**: The toolset is authenticated for all users in your organization. |
113113
| **Folder Storage** | Path to the toolset's location in the hierarchy of the public folder. |
114114
| **Display Name** | The name of the toolset assigned by the author. |
115115
| **Version** | Version of the toolset. Can be selected from the dropdown to display information for different versions. |
@@ -119,35 +119,82 @@ In the **Properties** tab, you can preview and modify selected toolset's basic p
119119
| **Storage folder** | The path to the toolset's location in the hierarchy of folders. It allows you to move the toolset between folders. |
120120
| **External Endpoint** | The MCP endpoint that a Quick App can call to fetch external data. |
121121
| **Transport** | A transport supported by MCP server. The available options are: HTTP or SSE. Default: HTTP. Choose SSE for server-sent events when supported. |
122-
| **Authentication** | Authentication settings for the Toolset. Supported OAUTH, API_KEY, or NONE. Refer to [DIAL Core](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/toolset_credentials_api.md) to learn more about toolset authentication. |
122+
| **Authentication** | [Authentication settings for the toolset.](#authentication) |
123123
| **Forward per request key** | Set this flag to `true` if you want a [per-request key](/docs/platform/3.core/3.per-request-keys.md) to be forwarded to the toolset endpoint allowing a toolset to access files in the DIAL storage. **Note**: it is not allowed to create toolsets with `authType.API_KEY` and `forwardPerRequestKey=true`. |
124124
| **Max retry attempts** | Number of times DIAL Core will [retry](/docs/platform/3.core/5.load-balancer.md#fallbacks) a failed call (due to timeouts or 5xx errors). |
125125

126+
#### Authentication
127+
128+
If the toolset you have chosen requires authentication at the related MCP server, you will have to sign in before you can use it. For example, if you are using an application that relies on the MCP toolset and authentication is required, you will not be able to access it unless you are logged in. Therefore, make sure you are authenticated with MCP server you are about to use.
129+
130+
**Note**, that toolset can be published with credentials by other users. In this case, a toolset can be already authenticated for all users in the organization - **Logged in (Organization)**. You can use it or log out and log back in with your personal credentials - **Logged in (Personal)**.
131+
132+
> Refer to [DIAL Core](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/toolset_credentials_api.md) to learn more about toolset authentication
133+
134+
##### Step 1: Select and configure the authentication method
135+
136+
DIAL supports several authentication methods for toolsets:
137+
138+
* **OAuth**: Authenticate via OAuth 2.0 with an external identity provider. If this option is selected, you have to choose **With login** for a dynamic registration of clients or **With login & configuration** for a static registration of clients - depending on what method your MCP server supports. For a dynamic option, it is enough to provide an **External Endpoint** in the toolset properties. For a static, populate the authentication form with correct values provided by the identity provider:
139+
- **Redirect URI**: Redirect URI used during sign in flows. After authentication, the MCP Server redirects the User to the provided URI.
140+
- **Client ID**: The unique identifier of the client/application requesting access to the resource.
141+
- **Client Secret**: A confidential key used by the client to authenticate itself with the authentication server.
142+
- **Scopes Supported**: List of supported scopes that define access levels. May be discovered via .well-known endpoints.
143+
- **Default authorization endpoint**: URL for performing authorization. Can be discovered via .well-known metadata if provided by the Authorization Server.
144+
- **Default token endpoint**: The URL where the client exchanges the authorization code for an access token. Can be discovered via .well-known metadata if provided by the Authorization Server.
145+
- **PKCE method**: The method used for Proof Key for Code Exchange (PKCE), usually `plain` or `S256`.
146+
* **API Key**: Authenticate using API key. If this option is selected, you have to provide the API key and header name in the configuration.
147+
* **Without authentication**: No authentication enforced, endpoint is publicly accessible.
148+
149+
![](img/assets_toolsets_auth.png)
150+
151+
##### Step 2: Choose personal or organization authentication
152+
153+
Having selected and configured any authentication method, click **Save** and **Log In** to authenticate a toolset with the related MCP server. At this step, prior to the actual authentication, you will be prompted to select between **Personal** and **Organization** authentication:
154+
155+
* **Personal**: the toolset will be authenticated for your user only with the authentication state labeled **Logged in (Personal)**.
156+
* **Organization**: the toolset will be authenticated for all users in your organization with the authentication state labeled **Logged in (Organization)**. Any user will be able to log out and log back in with personal credentials.
157+
158+
**Important**: at this step, for authentication with API keys, you will be prompted to provide a valid API key value.
159+
160+
![](img/assets_toolsets_auth2.png)
161+
126162
### Tools Overview
127163

128-
Tools in toolsets are functionalities supported by a corresponding MCP server that can be used to extend the capabilities of your toolset. In this tab, you can find all tools included in the toolset and add more tools.
164+
[Tools](https://modelcontextprotocol.io/specification/2025-06-18/server/tools) are specific functions supported by a related MCP server that can be used by clients to perform specific actions. On this screen, you can find and manage all tools supported by the related MCP server.
165+
166+
In case your toolset was created based on the MCP container deployed in DIAL, the content of this screen is inherited from the related [MCP container](/docs/tutorials/3.admin/deployments-mcp.md#tools-overview).
167+
168+
#### Use all tools
169+
170+
Enable **Use all available tools** toggle to automatically include all tools supported by the related MCP server. When enabled, you cannot add or remove tools manually.
171+
172+
Click on any tool to preview its details or [try it out](#try-tools).
129173

130-
![](img/135.png)
174+
![](img/assets_tools_tools_overview.png)
131175

132-
#### Add
176+
#### Manage tools
133177

134-
You can add a tool manually only if **Use all available tools** toggle is **Off**.
178+
Disable **Use all available tools** toggle to enable a manual tools management mode.
135179

136-
1. Click **+ Add** on the top-right.
137-
2. Click **+ Add** in the modal and give names to the tools that will be added.
138-
3. **Add** to add tools to the toolset.
180+
![](img/assets_manage_tools.png)
139181

140-
![](img/113.png)
182+
1. Disable **Use all available tools** toggle and click **Manage tool** button to open the **Manage tools** modal.
183+
2. The modal displays all tools available to your user. You can preview and enable/disable each tool individually.
184+
3. MCP sever can support other tools that are not available to your user and therefore are not rendered in the list of available tools. If you know their names, you can manually add them. Manually-added tools are labeled accordingly on the Tools Overview screen.
185+
4. Click **Confirm** to apply changes.
186+
5. On the **Tools overview** screen, use the filter to see all tools, just auto-detected tools or manually added tools.
187+
6. Hover over any tool to see its details or [try it out](#try-tools).
141188

142-
#### Remove
189+
![](img/assets_toolsets_manage_tools.png)
143190

144-
You can remove a tool only if **Use all available tools** toggle is **Off**.
191+
#### Try tools
145192

146-
1. Hover the tool by the pointer to see Delete button.
147-
2. Click **Delete** to remove a tool.
193+
Click or hover over any **enabled** tool to enter the Try out mode.
148194

149-
![](img/remove-tool.png)
195+
In the **Try out mode**, you can test each enabled tool by sending a sample request to the server. When sending a request, you can use the rendered UI form to populate the request input fields or enter JSON view mode to get access to all the fields supported by the input schema.
150196

197+
![](img/assets_toolset_tryout.png)
151198

152199
### JSON Editor
153200

docs/tutorials/3.admin/deployments-mcp.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,9 @@ In the Properties tab, you can preview and modify selected container's basic pro
123123

124124
### Tools Overview
125125

126-
MCP server-specific functions exposed to the LLM to take actions. These tools provide specific capabilities to process, transform, or analyze data flowing through the MCP server. Each tool can be configured independently within the container to support different operational requirements.
126+
[Tools](https://modelcontextprotocol.io/specification/2025-06-18/server/tools) are specific functions supported by a related MCP server that can be used by clients to perform specific actions (e.g., process, transform, or analyze data flowing through the MCP server).
127+
128+
On this screen, you can view the list of tools supported by the selected MCP server along with their details. Toolsets created based on this container will inherit these tools in the [Tools Overview](/docs/tutorials/3.admin/entities-toolsets.md#tools-overview) configuration tab.
127129

128130
![](img/mcp_container_tools.png)
129131

docs/tutorials/3.admin/entities-applications.md

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,25 @@
11
# Applications
22

3+
## Introduction
4+
5+
DIAL supports two types of applications: schema-rich and standalone.
6+
7+
* [Schema-rich applications](/docs/platform/3.core/7.apps.md#schema-rich-applications) are defined by a JSON schema which describes the application's structure, including properties, endpoints and more. [Application Runners](/docs/tutorials/3.admin/builders-application-runners.md) are used to run schema-rich applications. An application runner can be seen as an application factory that allows end-users and admins create individual logical instances of applications (using API, Admin Panel or UI wizards) each with its own configuration. An application runner definition includes a configuration schema that enforces data structure persisted for each instance. It is worth noting that Quick Apps, Code Apps and Mind Maps are application runners available in DIAL platform out of the box. You can create your own custom application runners to enable creation of specific types of applications. Applications of standard types (e.g. Quick Apps, Code Apps, and Mind Maps) are automatically hosted and deployed on the DIAL infrastructure. This eliminates the need for developers to manage tasks like hosting, scaling, file storage, and application management, as these are handled seamlessly by DIAL.
8+
* In [standalone applications](/docs/platform/3.core/7.apps.md#applications-without-schemas), business logic properties are embedded in the application code or container environment meaning they cannot be modified through the DIAL Core API, contrary to schema-rich applications. Such applications exist as a single logical instance on the DIAL platform. When enabling such an app, you must explicitly specify standard parameters of the application and available endpoints the application offers. DIAL does not impose any limitation as for technologies used to develop such applications.
9+
10+
Applications that adhere to the Unified Protocol of DIAL are [DIAL-native applications](/docs/platform/3.core/7.apps.md). DIAL-native apps can be enabled in DIAL and used directly (via API or UI) or as building blocks, agents in other apps and custom workflows. Such application can be developed using DIAL SDK and are compatible with OpenAI API.
11+
12+
DIAL allows adding and using custom conversational (implementing a completion endpoint) or non-conversational apps into DIAL, even if they don't follow the unified protocol of DIAL. There are no limitations of how and where the custom applications are deployed, the only requirement is that there must be network connectivity between DIAL Core and the backend service, as well as between UI applications and DIAL Core. Any communication between components is made only through API.
13+
14+
You can add both DIAL-native and custom applications into DIAL via a direct configuration of [DIAL Core](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/applications.md), using [DIAL Core API](https://dialx.ai/dial_api#tag/Applications) or DIAL Admin Panel. Refer to [Documentation](/docs/tutorials/1.developers/4.apps-development/3.enable-app.md) to learn more.
15+
16+
In this tutorial we will explore how to add and manage applications using DIAL Admin.
17+
318
## Main Screen
419

5-
In Applications, you can see, create and manage applications deployed in your instance of DIAL.
20+
On this screen, you can access all the available application deployments in your instance of DIAL. Here, you can also create and manage new application deployments.
621

7-
> Refer to [DIAL-Native Applications](/docs/platform/3.core/7.apps.md) to learn about applications in DIAL.
22+
> You can use DIAL Core API to [access](https://dialx.ai/dial_api#tag/Deployment-listing/operation/getApplications) available application deployments and to [add and manage](https://dialx.ai/dial_api#tag/Applications) applications.
823
924
![](img/entities_apps.png)
1025

@@ -14,7 +29,7 @@ In Applications, you can see, create and manage applications deployed in your in
1429
1530
| Field | Description |
1631
|-------|-------------|
17-
| **Display Name** | User-friendly name of the application (e.g. "Data Clustering Application"). |
32+
| **Display Name** | Name of the application (e.g. "Data Clustering Application") rendered on UI. |
1833
| **Version** | Semantic identifier of the application version (e.g. 1.0.0). |
1934
| **Description** | Brief free-text summary describing the application (e.g. "Clusters incoming text into semantic groups"). |
2035
| **ID** | Unique identifier used in the DIAL [dynamic settings](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/applications.md) (e.g. dca, support-bot). This is the path segment of the Application's HTTP endpoint. |
@@ -39,15 +54,15 @@ Follow these steps to add a new application deployment:
3954
| Field | Required | Description |
4055
|-------|----------|-------------|
4156
| **ID** | Yes | Unique identifier under the `applications` section of DIAL Core's [dynamic settings](https://github.com/epam/ai-dial-core?tab=readme-ov-file#dynamic-settings) (e.g. support-bot, data-cluster). |
42-
| **Display Name** | Yes | User-friendly label (e.g. "Customer Support Bot") shown throughout the Admin UI. |
57+
| **Display Name** | Yes | Name of the application (e.g. "Data Clustering Application") rendered on UI. |
4358
| **Display version** | No | Semantic identifier (e.g., 1.2.0) of an application's version. |
4459
| **Description** | No | Free-text summary describing the application (e.g. supported inputs, business purpose). |
4560
| **Source Type** | Yes | Source type of application.<br />- **Endpoints**: Application with this source type is a standalone application. DIAL Core communicates with such application via the explicitly-provided endpoints.<br />- **Application runner**: Application runners can be seen as application factories, allowing users to create logical instances of apps with different configurations. Application runners are based on JSON schemas, which define structure, properties and endpoints for applications. In [Builders/Application Runners](/docs/tutorials/3.admin/builders-application-runners.md) you can see all the available runners and add new ones. |
46-
| **Completion endpoints** | Conditional | The application's completion endpoint DIAL COre will use to communicate with application. Required if Source Type is **Endpoints**. |
61+
| **Completion endpoints** | Conditional | The application's completion endpoint DIAL Core will use to communicate with application. Required if Source Type is **Endpoints**. |
4762
| **Application runner** | Conditional | Select one of the [available application runners](/docs/tutorials/3.admin/builders-application-runners.md). Required if Source Type is **Application runner**. |
4863

4964

50-
3. Once all required fields are filled click **Create**. The dialog closes and the new [application configuration](#configuration) screen is opened. This entry will appear immediately in the listing once created. It may take some time for the changes to take effect after saving.
65+
3. Once all required fields are filled click **Create**. The dialog closes and the new [application configuration](#configuration) screen is opened. New application deployment appears immediately in the listing once created. It may take some time for the changes to take effect after saving.
5166

5267
![](img/img_12.png)
5368

0 commit comments

Comments
 (0)