|
| 1 | +# Instructions |
| 2 | + |
| 3 | +## Versions |
| 4 | + |
| 5 | +1. Helm chart versions: |
| 6 | + - dial: `5.18.0` |
| 7 | + - dial-core: `4.3.1` |
| 8 | + - dial-extension: `1.3.3` |
| 9 | + - dial-admin: `0.6.0` |
| 10 | +2. Main components versions: |
| 11 | + - ai-dial-adapter-bedrock: `0.35.0` |
| 12 | + - ai-dial-adapter-openai: `0.34.0` |
| 13 | + - ai-dial-adapter-vertexai: `0.29.0` |
| 14 | + - ai-dial-adapter-dial: `0.10.0` |
| 15 | + - ai-dial-auth-helper: `0.4.0` |
| 16 | + - ai-dial-chat-themes: `0.12.0` |
| 17 | + - ai-dial-chat: `0.40.1` |
| 18 | + - ai-dial-core: `0.38.0` |
| 19 | + - ai-dial-analytics-realtime: `0.19.4` |
| 20 | + - ai-dial-rag: `0.36.0` |
| 21 | + - ai-dial-log-parser: `0.2.0` |
| 22 | + - ai-dial-code-interpreter: `0.2.0` |
| 23 | + - ai-dial-app-controller: `0.3.0` |
| 24 | + - ai-dial-app-builder-python: `0.1.0` |
| 25 | + - quick-apps: `0.8.2` |
| 26 | + - quick-apps-2.0: `0.2.0` |
| 27 | + - mindmap-backend: `0.11.6` |
| 28 | + - mindmap-frontend: `0.8.13` |
| 29 | + - admin-backend: `0.11.2` |
| 30 | + - admin-frontend: `0.11.2` |
| 31 | + - ai-dial-admin-mcp-manager-backend: `0.2.2` |
| 32 | + - ai-dial-admin-mcp-manager-frontend: `0.2.1` |
| 33 | + |
| 34 | +## Before upgrade |
| 35 | + |
| 36 | +### General notes |
| 37 | + |
| 38 | +- Please review the [Config changes](#config-changes) chapter carefully for each component that is used in your DIAL installation. Changes in components' configuration may be required. |
| 39 | +- Please check if any image tag overrides (`image.tag`) are present and remove them if they are not required anymore. |
| 40 | +- Please check and add `image.repository` to change the image location for `redis`, `postgresql`, `keycloak` and `keycloakConfigCli` components to start using alternative Docker registries (e.g. Amazon ECR Public Gallery) if required. |
| 41 | +- Verify `COMPATIBILITY_MAPPING` parameter of DIAL Adapters which are used in your DIAL installation and remove mappings for models that are natively supported by the adapters. |
| 42 | + |
| 43 | +### Release-specific notes |
| 44 | + |
| 45 | +If DIAL Admin Panel is used for managing the DIAL Core configuration, please consider the following order of updating the DIAL components: |
| 46 | + |
| 47 | +1. Update DIAL Admin Panel using `dial-admin` Helm chart with the following parameters being set: |
| 48 | + 1. Disable `ENABLE_CORE_CONFIG_VERSION_AUTO_DETECT`. |
| 49 | + 2. Set `CORE_CONFIG_VERSION` to the version of DIAL Core you are going to update to (e.g. `0.38.0`). |
| 50 | +2. Update DIAL using `dial` Helm chart. |
| 51 | +3. Enable `ENABLE_CORE_CONFIG_VERSION_AUTO_DETECT` and disable `CORE_CONFIG_VERSION` parameters of DIAL Admin Panel. |
| 52 | + |
| 53 | +## Config changes |
| 54 | + |
| 55 | +### ai-dial-core |
| 56 | + |
| 57 | +Changes in [DIAL Core](https://github.com/epam/ai-dial-core) configuration: |
| 58 | + |
| 59 | +|Parameter|Required|Description| |
| 60 | +|-|-|-| |
| 61 | +|`supportCommentInRateResponse`|No|When enabled, it allows users to include a text comment along with their like/dislike feedback for this deployment. The comment is sent in the `comment` field of the rate response payload.| |
| 62 | +|`globalInterceptors`|No|A list of [interceptors](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/interceptors.md#local-interceptors) applicable for any deployment on you DIAL setup.| |
| 63 | +|`dial:applicationTypeInterceptors`|No|A field that can be added to the application's JSON schema. This field can include a list of [interceptors](https://github.com/epam/ai-dial-core/blob/development/docs/dynamic-settings/interceptors.md#application-type-interceptors) that will apply to all applications created based on this schema.| |
| 64 | +|`applications.features.addonsSupported`|No|The flag `addonsSupported` is removed from application's features.| |
| 65 | +|`models.features.addonsSupported`|No|The flag `addonsSupported` is removed from model's features.| |
| 66 | +|`addons`|No|The section is removed from the DIAL Core config.| |
| 67 | +|`assistant`|No|The section is removed from the DIAL Core config.| |
| 68 | + |
| 69 | +### ai-dial-chat |
| 70 | + |
| 71 | +Changes in [DIAL Chat](https://github.com/epam/ai-dial-chat/blob/development/apps/chat/README.md) configuration: |
| 72 | + |
| 73 | +|Parameter|Required|Description| |
| 74 | +|-|-|-| |
| 75 | +|`code-interpreter`|No|Include this feature in [`ENABLED_FEATURES`](https://github.com/epam/ai-dial-chat/blob/development/libs/shared/src/types/features.ts) [environment variable](https://github.com/epam/ai-dial-chat/blob/development/apps/chat/README.md#environment-variables) to enable Code Interpreter on the current DIAL setup.| |
| 76 | +|`dislike-comment`|No|Include this feature in [`ENABLED_FEATURES`](https://github.com/epam/ai-dial-chat/blob/development/libs/shared/src/types/features.ts) [environment variable](https://github.com/epam/ai-dial-chat/blob/development/apps/chat/README.md#environment-variables) to enable sending a comment in addition to a dislike feedback in the chat message.| |
| 77 | + |
| 78 | +### ai-dial-chat-themes |
| 79 | + |
| 80 | +Changes in [DIAL Chat Themes](https://github.com/epam/ai-dial-chat-themes) configuration: |
| 81 | + |
| 82 | +- Icons were added for RAG (RAG_files_search.svg) and Echo (Echo.svg). |
| 83 | +- The default icon was added for Toolsets (default-toolset.svg). |
| 84 | +- The default icon for Addons (Addon_Wolfram.svg) was removed. |
| 85 | + |
| 86 | +### ai-dial-adapter-openai |
| 87 | + |
| 88 | +Changes in [DIAL OpenAI Adapter](https://github.com/epam/ai-dial-adapter-openai) configuration: |
| 89 | + |
| 90 | +|Variable|Required|Default|Description| |
| 91 | +|-|-|-|-| |
| 92 | +|`AUDIO_AZURE_API_VERSION`|No|`2025-03-01-preview`|Include this [environment variable](https://github.com/epam/ai-dial-adapter-openai?tab=readme-ov-file#environment-variables) to specify the API version for requests to the [Azure Audio API](https://github.com/epam/ai-dial-adapter-openai?tab=readme-ov-file#azure-audio-api) endpoints.| |
| 93 | + |
| 94 | +### ai-dial-adapter-bedrock |
| 95 | + |
| 96 | +Changes in [DIAL Bedrock Adapter](https://github.com/epam/ai-dial-adapter-bedrock) configuration: |
| 97 | + |
| 98 | +|Variable|Required|Description| |
| 99 | +|-|-|-| |
| 100 | +|`AWS_SESSION_TOKEN`|No|Include this [environment variable](https://github.com/epam/ai-dial-adapter-bedrock?tab=readme-ov-file#environment-variables) to add an alternative way to specify access credentials for the Bedrock service.| |
| 101 | + |
| 102 | +- [Removed support](https://github.com/epam/ai-dial-adapter-bedrock/pull/335) of retired AI21 and Stability AI models. These models **MUST** be deleted from the adapter configuration before upgrade. |
| 103 | + |
| 104 | +### ai-dial-adapter-vertexai |
| 105 | + |
| 106 | +- Removed support of retired Gemini 1.5 models ([#309](https://github.com/epam/ai-dial-adapter-vertexai/pull/309), [#315](https://github.com/epam/ai-dial-adapter-vertexai/pull/315)). These models **MUST** be deleted from the adapter configuration before upgrade. |
| 107 | + |
| 108 | +### admin-frontend |
| 109 | + |
| 110 | +Changes in [DIAL Admin Frontend](https://github.com/epam/ai-dial-admin-frontend) configuration: |
| 111 | + |
| 112 | +- The [environment variable](https://github.com/epam/ai-dial-admin-frontend?tab=readme-ov-file#environment-variables) `THEMES_CONFIG_IMAGES` was removed. |
| 113 | + |
| 114 | +### admin-backend |
| 115 | + |
| 116 | +Changes in [DIAL Admin Backend](https://github.com/epam/ai-dial-admin-backend) configuration: |
| 117 | + |
| 118 | +#### Changes made to environment variables |
| 119 | + |
| 120 | +|Previous Variable Name|New Variable Name|Description| |
| 121 | +|-|-|-| |
| 122 | +|`SECURITY_ALLOWED_ROLES`|`providers.<your_provider_name>.allowed-roles`|Comma-separated list of roles with access permissions defined for the specific identity provider.| |
| 123 | +|`SECURITY_JWT_JWKS_URI`|`providers.<your_provider_name>.jwk-set-uri`|URI for JSON Web Key Set defined for the specific identity provider.| |
| 124 | +|`SECURITY_JWT_ACCEPTED_ISSUERS`|`providers.<your_provider_name>.issuer`|List of accepted JWT token issuers defined for the specific identity provider.| |
| 125 | +|`SECURITY_JWT_ACCEPTED_ISSUERS_ALIAS`|`providers.azure.aliases`|Aliases for accepted JWT token issuers (applicable only for Azure provider).| |
| 126 | +|`DIAL_ADMIN_CLIENT_ID`|`providers.<your_provider_name>.audiences`|Previously used as a unique identifier of the DIAL Admin backend application. This environment variable was removed bacause it defined the same property as `SECURITY_JWT_ACCEPTED_AUDIENCES`.| |
| 127 | +|`SECURITY_JWT_ACCEPTED_AUDIENCES`|`providers.<your_provider_name>.audiences`|List of accepted JWT token audiences. Defines the intended recipients of the claim `aud` in JWT.| |
| 128 | +|`SECURITY_ROLES_CLAIM`|`providers.<your_provider_name>.role-claims`|JWT claim name for user roles defined for the specific identity provider.| |
| 129 | + |
| 130 | +#### Added support for multiple identity providers |
| 131 | + |
| 132 | +The DIAL Admin application now supports the use of multiple identity providers, which offers greater flexibility and integration with various identity services. Below is an example of configuration demonstrating how to set up multiple providers: |
| 133 | + |
| 134 | +```properties |
| 135 | +providers.auth0.jwk-set-uri: "https://example-auth0.com/.well-known/jwks.json" |
| 136 | +providers.auth0.issuer: "https://example-auth0.com" |
| 137 | +providers.auth0.role-claims: "example_roles" |
| 138 | +providers.auth0.audiences: "example-audience-id" |
| 139 | +providers.keycloak.jwk-set-uri: "https://example-keycloak.com/realms/Example/protocol/openid-connect/certs" |
| 140 | +providers.keycloak.issuer: "https://example-keycloak.com/realms/Example" |
| 141 | +providers.keycloak.role-claims: "example_roles" |
| 142 | +providers.keycloak.audiences: "example-ui, example-admin" |
| 143 | +providers.azure.jwk-set-uri: "https://example.microsoft.com/common/discovery/v2.0/keys" |
| 144 | +providers.azure.issuer: "example-issuer-id" |
| 145 | +providers.azure.role-claims: "example_groups" |
| 146 | +providers.azure.audiences: "example-audience-id" |
| 147 | +providers.azure.aliases: "login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net, login.partner.microsoftonline.cn, login.chinacloudapi.cn, login.microsoftonline.de, login.microsoftonline.us, login.usgovcloudapi.net, login-us.microsoftonline.com" |
| 148 | +providers.azure.allowed-roles: "example-role-id" |
| 149 | +``` |
| 150 | +#### Detect dial-core versions changes |
| 151 | + |
| 152 | +1. **Mandatory `CORE_CONFIG_VERSION`**: |
| 153 | + |
| 154 | +The `CORE_CONFIG_VERSION` environment variable is now **required** to be set in case `ENABLE_CORE_CONFIG_VERSION_AUTO_DETECT` is set to `false`. To resolve any breaking changes in the DIAL Core JSON config (e.g. the deletion of any property), it is recommended to define `CORE_CONFIG_VERSION` environment variable even if `ENABLE_CORE_CONFIG_VERSION_AUTO_DETECT` is set to `true`. |
| 155 | + |
| 156 | +2. **Handling of breaking changes in DIAL Core configuration**: |
| 157 | + |
| 158 | +If a non-compatible JSON configuration is used with dial-core, the dial-admin application will not be able to start and connect with it to retrieve its config version. If the connection to the dial-core application cannot be established, the dial-admin application will apply the configuration version specified in the `CORE_CONFIG_VERSION` environment variable. |
| 159 | + |
| 160 | + |
0 commit comments