All changes in feature/doc_improvements branch#555
Conversation
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
|
|
||
| ## What you'll build | ||
|
|
||
| A local DIAL stack — DIAL Core, DIAL Chat, Redis, and chat themes — running the [Echo application](https://github.com/epam/ai-dial/tree/main/dial-docker-compose/application/echo), which repeats back whatever you type. This is the canonical "hello world" for the platform. |
There was a problem hiding this comment.
I would consider using the full Docker Compose instead. Let's see how we can re-shape quick starts based on a Docker Compose that includes Keycloak and Admin
|
|
||
| ## Step 1: Get the Docker Compose files | ||
|
|
||
| Download the [`dial-docker-compose/application`](https://github.com/epam/ai-dial/tree/main/dial-docker-compose/application/) folder from the DIAL repository. |
There was a problem hiding this comment.
I would consider using the full Docker Compose instead. Let's see how we can re-shape quick starts based on a Docker Compose that includes Keycloak and Admin
|
|
||
| ## Prerequisites | ||
|
|
||
| - Access to a running DIAL deployment that includes [DIAL Admin](../5.administering-dial/0.index.md). If you do not have one, follow the [DevOps quick start](devops-quick-start) first, or use a deployment provided by your platform team. |
There was a problem hiding this comment.
The DevOps Quick Start doesn’t include DIAL Admin. In my opinion, we need to change the focus of Quick Starts from “quick and dirty” docker compose files “developer only” to the minimal Docker Compose with Keycloak and Admin
|
|
||
| DIAL is deliberately modular. Only one component is mandatory. | ||
|
|
||
| ```text |
There was a problem hiding this comment.
I would make a visual diagram
| owner: "@dial-docs-team" | ||
| --- | ||
|
|
||
| # DIAL vs app builders |
There was a problem hiding this comment.
I would explicitly highlight QuickApps limitations as a no code tool: while canvas-based platforms allow building deterministic flows in addition to AI-based logic, QuickApps are fully agentic - you only have a model, a system prompt, a set of tools and a knowledge base.
| |---|---|---| | ||
| | Compose chains / agents / RAG in code | Yes | Via apps that use a framework | | ||
| | Deployed runtime / app server | No | Yes | | ||
| | Unified API across providers | No | Yes | |
There was a problem hiding this comment.
Frameworks provide abstractions where you can use the same code regardless of the underlying model, so most likely “No” for “Unified API across providers” is not completely fair for frameworks.
|
|
||
| - **Vendor- and cloud-agnostic.** DIAL puts every provider behind one Unified API and runs on any cloud or on-prem. Studios are anchored to their own cloud and model family — Azure with OpenAI and partners, Google with Gemini. | ||
| - **Open-source and self-hostable.** DIAL is licensed under Apache 2.0 and runs in your own environment. Studios are proprietary managed services. | ||
| - **Portability and lock-in.** Building on DIAL keeps applications portable across providers and clouds. Building in a studio ties applications to that vendor. |
There was a problem hiding this comment.
"Vendor- and cloud-agnostic” and “Portability and lock-in” look the same
| |---|---|---| | ||
| | Build and run AI applications | Yes | Yes | | ||
| | Agent runtime and governance | Yes (varies) | Yes | | ||
| | Reach models across many vendors | No (vendor's own) | Yes | |
There was a problem hiding this comment.
Sometimes there is some flexibility like Google Vertex AI giving access to Claude, though it is limited. Thus, “No (vendor's own)” looks not completely fair in this case.
| | Dependency | Purpose | Supported options | | ||
| |---|---|---| | ||
| | Blob storage | Persists conversations, prompts, applications, and user files | AWS S3, Google Cloud Storage, Azure Blob Storage, or a local file system (self-hosted) | | ||
| | Redis | In-memory cache with write-back (write-behind) caching | Standalone or cluster | |
There was a problem hiding this comment.
Perhaps it makes sense to note that any compatible PaaS offering for Redis (e.g. Azure Cache for Redis) can be used either
| - **Rate and cost limits** — flexible usage and cost limits for JWTs and API keys. See [roles and rate limits](../../4.operating-dial/5.auth-and-access-control/3.roles-and-rate-limits.md). | ||
| - **Load balancer** — request distribution across model deployments, with provisioned-throughput support, to prevent bottlenecks and optimize cost. | ||
| - **Observability** — OpenTelemetry-based insight into performance and health. | ||
| - **Evaluation toolkit** — measurement of retrieval and generation quality for RAG-like applications. See [evaluations](../../3.building-with-dial/4.evaluations/0.index.md). |
There was a problem hiding this comment.
Need to double-check if evaluation toolkit is about RAG applications only. The whole section about evaluation may need to be updated based on the most recent developments.
| - **Attachments** — applications can accept and produce file attachments. | ||
| - **Stages** — render the intermediate steps an agent took to produce a response. | ||
| - **Interactive controls** — buttons, dropdowns, checkboxes, and other controls in generated responses for richer interaction. | ||
| - **Custom renderers** — define custom visualizers for conversations using any visualization library. |
There was a problem hiding this comment.
Are custom renderers relevant to the Unified API?
|
|
||
| ## Token rate limiting | ||
|
|
||
| Token rate limiting caps the volume of tokens a subject may process within a time window. DIAL counts both input and output tokens and enforces limits across minute, daily, weekly, and monthly intervals. When a subject reaches a limit, further requests are rejected until the window resets. |
There was a problem hiding this comment.
We need to explicitly explain the logic, that the consumption for both limits is calculated based on a rolling window, not on a calendar window. And also highlight that the consumption is calculated for each user separately. There are no budgets tied to other entities yet.
|
|
||
| ### Application | ||
|
|
||
| A first-class extension in DIAL that exposes chat completion or embedding endpoints via the [DIAL SDK](#dial-sdk) and conforms to the [Unified API](#unified-api). Applications can be invoked directly by users or composed as building blocks in multi-agent workflows. |
There was a problem hiding this comment.
Custom applications can expose custom APIs in addition to or instead of the standard Unified API endpoints. However, I am not sure if we need to mention it here.
|
|
||
| The move to open source and then to a public SaaS offering also signals the intended audience. DIAL is built to be deployed and governed by an enterprise, not only consumed as a hosted service — which is why so much of the platform is about access control, deployment, and operations rather than the model interaction alone. | ||
|
|
||
| The DIAL roadmap is not publicly available. To learn more about the platform's history and direction, see [About Us](https://dialx.ai/about-us). |
There was a problem hiding this comment.
DIAL roadmap is in fact publicly available: https://dialx.ai/roadmap
|
|
||
| ## Q | ||
|
|
||
| ### Quick App |
There was a problem hiding this comment.
Let's check with the team if we need to keep both QuickApps and QuickApps 2.0 in the documentation
this is for @YuriyIvon
check BRANCH_GUIDE.md first!