This is an automated email from the ASF dual-hosted git repository.
wenjin272 pushed a commit to branch release-0.4
in repository https://gitbox.apache.org/repos/asf/flink-agents.git
The following commit(s) were added to refs/heads/release-0.4 by this push:
new 3afc91780 [docs] Standardize Alibaba Cloud Model Studio naming (#1329)
(#1345)
3afc91780 is described below
commit 3afc917807b09e202d0f1a5844c555446df08b33
Author: Wenjin Xie <[email protected]>
AuthorDate: Mon Nov 2 14:44:13 2026 +0800
[docs] Standardize Alibaba Cloud Model Studio naming (#1329) (#1345)
Generated-by: Codex CLI 0.153.4 (GPT-6)
(cherry picked from commit bd68b323c28e015008a52978ce7da2b100c094b2)
Co-authored-by: Codex <[email protected]>
---
.../calling-llms/chat-models/providers.md | 142 ++++++++++-----------
.../create-agent/choose-apis-and-languages.md | 4 +-
docs/content/docs/development/create-agent/yaml.md | 4 +-
docs/content/docs/development/decision_models.md | 11 +-
.../vector-search/embedding_models/providers.md | 136 ++++++++++----------
5 files changed, 150 insertions(+), 147 deletions(-)
diff --git
a/docs/content/docs/development/calling-llms/chat-models/providers.md
b/docs/content/docs/development/calling-llms/chat-models/providers.md
index 39952a1d1..a29a87148 100644
--- a/docs/content/docs/development/calling-llms/chat-models/providers.md
+++ b/docs/content/docs/development/calling-llms/chat-models/providers.md
@@ -49,12 +49,12 @@ model, deployment, and server must also support the
requested input and tool cal
| Integration | Implementation language | Media input accepted by the
integration |
|---|---|---|
+| [Alibaba Cloud Model Studio
(DashScope)](#alibaba-cloud-model-studio-dashscope) | Python | No media input;
media blocks are rejected. |
| [OpenAI Chat Completions](#multimodal-input), [Azure OpenAI](#azure-openai),
[vLLM](#vllm) | Java, Python | User messages: images by URL or Base64; WAV/MP3
audio and documents by Base64. See the conversion and model restrictions below.
|
| [OpenAI Responses](#responses-api) | Java | No media input; media blocks are
rejected. |
| [Anthropic](#anthropic) | Java, Python | User messages: JPEG/PNG/GIF/WebP
images and PDF documents by URL or Base64; plain-text documents by Base64. |
| [Ollama](#ollama) | Java, Python | User messages: Base64 images, sent
separately from text; requires a vision model. |
| [Amazon Bedrock](#amazon-bedrock), [Gemini](#gemini) | Java | No media
input; media blocks are rejected. |
-| [DashScope (Alibaba Cloud Model
Studio)](#alibaba-cloud-model-studio-dashscope) | Python | No media input;
media blocks are rejected. |
| [IBM watsonx.ai](#watsonx-ibm-watsonxai) | Java, Python | No media input;
media blocks are rejected. |
All listed integrations can send tool definitions and return tool calls when
the
@@ -71,6 +71,76 @@ The implementation language does not limit the Agent API you
can use: see
[Cross-Language Resources]({{< ref
"docs/development/create-agent/resources#cross-language-resources" >}})
for dependencies and execution requirements.
+### Alibaba Cloud Model Studio (DashScope)
{#alibaba-cloud-model-studio-dashscope}
+
+This integration connects to Alibaba Cloud Model Studio (Bailian) through the
DashScope SDK to access chat models.
+
+{{< hint info >}}
+The DashScope integration currently has a Python implementation only. To use
it from Java agents, see [Cross-Language Resources]({{< ref
"docs/development/create-agent/resources#cross-language-resources" >}}).
+{{< /hint >}}
+
+#### Prerequisites
+
+1. Get an API key from [Alibaba Cloud Model
Studio](https://dashscope.aliyun.com/)
+
+#### DashScopeChatModelConnection Parameters
+
+| Parameter | Type | Default | Description |
+|-----------|------|---------|-------------|
+| `api_key` | str | `$DASHSCOPE_API_KEY` | DashScope API key for
authentication |
+| `request_timeout` | float | `60.0` | HTTP request timeout in seconds |
+
+#### DashScopeChatModelSetup Parameters
+
+| Parameter | Type | Default | Description |
+|-----------|------|---------|-------------|
+| `model` | str | `"qwen-plus"` | Name of the chat model to use (an
`output_schema` is enforced natively only on `qwen3.7-max`,
`qwen3.7-max-preview`, `qwen3.7-max-2026-05-17` and `qwen3.7-max-2026-05-20`,
the schema-capable models DashScope serves on the text-generation interface
this connection calls; every other model, the `qwen-plus` default included,
falls back to prompting) |
+| `temperature` | float | `0.7` | Sampling temperature (0.0 to 2.0) |
+| `extract_reasoning` | bool | `False` | Extract reasoning content from
response |
+| `additional_kwargs` | dict | `{}` | Additional DashScope API parameters. A
`response_format` supplied here is rejected only when it would be overwritten,
that is when an `output_schema` carrying a Pydantic model is set on a model
that applies it natively; otherwise it is passed through unchanged |
+
+#### Usage Example
+
+```python
+class MyAgent(Agent):
+
+ @chat_model_connection
+ @staticmethod
+ def dashscope_connection() -> ResourceDescriptor:
+ return ResourceDescriptor(
+ clazz=ResourceName.ChatModel.DASHSCOPE_CONNECTION,
+ api_key="your-api-key-here", # Or set DASHSCOPE_API_KEY env var
+ request_timeout=60.0
+ )
+
+ @chat_model_setup
+ @staticmethod
+ def dashscope_chat_model() -> ResourceDescriptor:
+ return ResourceDescriptor(
+ clazz=ResourceName.ChatModel.DASHSCOPE_SETUP,
+ connection="dashscope_connection",
+ model="qwen-plus",
+ temperature=0.7,
+ extract_reasoning=True
+ )
+
+ ...
+```
+
+#### Available Models
+
+Visit the [Alibaba Cloud Model Studio models
documentation](https://help.aliyun.com/zh/dashscope/developer-reference/model-introduction)
for the complete and up-to-date list of available chat models.
+
+Some popular options include:
+- **qwen-plus**
+- **qwen-max**
+- **qwen-turbo**
+- **qwen-long**
+
+{{< hint warning >}}
+Model availability and specifications may change. Always check the official
Alibaba Cloud Model Studio documentation for the latest information before
implementing in production.
+{{< /hint >}}
+
### Amazon Bedrock
Amazon Bedrock provides access to a wide range of foundation models from
leading AI providers through a unified API. The Flink Agents Bedrock
integration uses the [Converse
API](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html),
which provides a consistent interface across all supported models with native
tool calling support. Authentication is handled via SigV4 using the AWS default
credentials chain. No API keys are required.
@@ -973,76 +1043,6 @@ Some popular options include:
Model availability and specifications may change. Always check the official
OpenAI documentation for the latest information before implementing in
production.
{{< /hint >}}
-### DashScope (Alibaba Cloud Model Studio)
{#alibaba-cloud-model-studio-dashscope}
-
-This integration connects to Alibaba Cloud Model Studio (Bailian) through the
DashScope SDK to access chat models.
-
-{{< hint info >}}
-The DashScope integration currently has a Python implementation only. To use
it from Java agents, see [Cross-Language Resources]({{< ref
"docs/development/create-agent/resources#cross-language-resources" >}}).
-{{< /hint >}}
-
-#### Prerequisites
-
-1. Get an API key from [Alibaba Cloud Model
Studio](https://dashscope.aliyun.com/)
-
-#### DashScopeChatModelConnection Parameters
-
-| Parameter | Type | Default | Description |
-|-----------|------|---------|-------------|
-| `api_key` | str | `$DASHSCOPE_API_KEY` | DashScope API key for
authentication |
-| `request_timeout` | float | `60.0` | HTTP request timeout in seconds |
-
-#### DashScopeChatModelSetup Parameters
-
-| Parameter | Type | Default | Description |
-|-----------|------|---------|-------------|
-| `model` | str | `"qwen-plus"` | Name of the chat model to use (an
`output_schema` is enforced natively only on `qwen3.7-max`,
`qwen3.7-max-preview`, `qwen3.7-max-2026-05-17` and `qwen3.7-max-2026-05-20`,
the schema-capable models DashScope serves on the text-generation interface
this connection calls; every other model, the `qwen-plus` default included,
falls back to prompting) |
-| `temperature` | float | `0.7` | Sampling temperature (0.0 to 2.0) |
-| `extract_reasoning` | bool | `False` | Extract reasoning content from
response |
-| `additional_kwargs` | dict | `{}` | Additional DashScope API parameters. A
`response_format` supplied here is rejected only when it would be overwritten,
that is when an `output_schema` carrying a Pydantic model is set on a model
that applies it natively; otherwise it is passed through unchanged |
-
-#### Usage Example
-
-```python
-class MyAgent(Agent):
-
- @chat_model_connection
- @staticmethod
- def dashscope_connection() -> ResourceDescriptor:
- return ResourceDescriptor(
- clazz=ResourceName.ChatModel.DASHSCOPE_CONNECTION,
- api_key="your-api-key-here", # Or set DASHSCOPE_API_KEY env var
- request_timeout=60.0
- )
-
- @chat_model_setup
- @staticmethod
- def dashscope_chat_model() -> ResourceDescriptor:
- return ResourceDescriptor(
- clazz=ResourceName.ChatModel.DASHSCOPE_SETUP,
- connection="dashscope_connection",
- model="qwen-plus",
- temperature=0.7,
- extract_reasoning=True
- )
-
- ...
-```
-
-#### Available Models
-
-Visit the [Alibaba Cloud Model Studio models
documentation](https://help.aliyun.com/zh/dashscope/developer-reference/model-introduction)
for the complete and up-to-date list of available chat models.
-
-Some popular options include:
-- **qwen-plus**
-- **qwen-max**
-- **qwen-turbo**
-- **qwen-long**
-
-{{< hint warning >}}
-Model availability and specifications may change. Always check the official
Alibaba Cloud Model Studio documentation for the latest information before
implementing in production.
-{{< /hint >}}
-
### vLLM
[vLLM](https://docs.vllm.ai) serves open-weight models behind an
OpenAI-compatible API and is a popular choice for self-hosted production
deployments. Flink Agents provides a dedicated connection that reuses the
OpenAI integration with vLLM-friendly defaults, in both Java and Python.
diff --git
a/docs/content/docs/development/create-agent/choose-apis-and-languages.md
b/docs/content/docs/development/create-agent/choose-apis-and-languages.md
index 49d1cca38..0fa5e3062 100644
--- a/docs/content/docs/development/create-agent/choose-apis-and-languages.md
+++ b/docs/content/docs/development/create-agent/choose-apis-and-languages.md
@@ -120,6 +120,7 @@ where supported and install its dependencies.
| Provider | Python | Java |
|---|---|---|
+| [Alibaba Cloud Model Studio (DashScope)]({{< ref
"docs/development/calling-llms/chat-models/providers#alibaba-cloud-model-studio-dashscope"
>}}) | ✅ | ❌ |
| [Amazon Bedrock]({{< ref
"docs/development/calling-llms/chat-models/providers#amazon-bedrock" >}}) | ❌ |
✅ |
| [Anthropic]({{< ref
"docs/development/calling-llms/chat-models/providers#anthropic" >}}) | ✅ | ✅ |
| [Azure OpenAI]({{< ref
"docs/development/calling-llms/chat-models/providers#azure-openai" >}}) | ✅ | ✅
|
@@ -127,7 +128,6 @@ where supported and install its dependencies.
| [Ollama]({{< ref
"docs/development/calling-llms/chat-models/providers#ollama" >}}) | ✅ | ✅ |
| [OpenAI Chat Completions]({{< ref
"docs/development/calling-llms/chat-models/providers#completions-api" >}}) | ✅
| ✅ |
| [OpenAI Responses]({{< ref
"docs/development/calling-llms/chat-models/providers#responses-api" >}}) | ❌ |
✅ |
-| [DashScope (Alibaba Cloud Model Studio)]({{< ref
"docs/development/calling-llms/chat-models/providers#alibaba-cloud-model-studio-dashscope"
>}}) | ✅ | ❌ |
| [vLLM]({{< ref "docs/development/calling-llms/chat-models/providers#vllm"
>}}) | ✅ | ✅ |
| [Watsonx (IBM watsonx.ai)]({{< ref
"docs/development/calling-llms/chat-models/providers#watsonx-ibm-watsonxai"
>}}) | ✅ | ✅ |
@@ -135,10 +135,10 @@ where supported and install its dependencies.
| Provider | Python | Java |
|---|---|---|
+| [Alibaba Cloud Model Studio (DashScope)]({{< ref
"docs/development/vector-search/embedding_models/providers#alibaba-cloud-model-studio-dashscope"
>}}) | ✅ | ❌ |
| [Amazon Bedrock]({{< ref
"docs/development/vector-search/embedding_models/providers#amazon-bedrock" >}})
| ❌ | ✅ |
| [Ollama]({{< ref
"docs/development/vector-search/embedding_models/providers#ollama" >}}) | ✅ | ✅
|
| [OpenAI]({{< ref
"docs/development/vector-search/embedding_models/providers#openai" >}}) | ✅ | ✅
|
-| [DashScope (Alibaba Cloud Model Studio)]({{< ref
"docs/development/vector-search/embedding_models/providers#alibaba-cloud-model-studio-dashscope"
>}}) | ✅ | ❌ |
**Vector Stores**
diff --git a/docs/content/docs/development/create-agent/yaml.md
b/docs/content/docs/development/create-agent/yaml.md
index ea6988fb8..a23b6ea99 100644
--- a/docs/content/docs/development/create-agent/yaml.md
+++ b/docs/content/docs/development/create-agent/yaml.md
@@ -716,7 +716,7 @@ Common chat-model aliases:
| `gemini` | — | Gemini (Java)
|
| `azure_openai` | Azure OpenAI (Python) | Azure OpenAI (Java)
|
| `bedrock` | — | Bedrock (Java)
|
-| `dashscope` | DashScope (Alibaba Cloud Model Studio, Python) | —
|
+| `dashscope` | Alibaba Cloud Model Studio (DashScope, Python) | —
|
| `vllm` | vLLM (Python) | vLLM (Java)
|
| `watsonx` | IBM watsonx.ai (Python) | IBM watsonx.ai (Java)
|
@@ -737,7 +737,7 @@ Embedding-model aliases (apply to both
`embedding_model_connections` and `embedd
| --------- | -------------- | -------------- |
| `ollama` | Ollama | Ollama |
| `openai` | OpenAI | OpenAI (Java) |
-| `dashscope` | DashScope (Alibaba Cloud Model Studio) | — |
+| `dashscope` | Alibaba Cloud Model Studio (DashScope) | — |
| `bedrock` | — | Bedrock (Java) |
Vector-store aliases:
diff --git a/docs/content/docs/development/decision_models.md
b/docs/content/docs/development/decision_models.md
index ce29eede3..bd798c025 100644
--- a/docs/content/docs/development/decision_models.md
+++ b/docs/content/docs/development/decision_models.md
@@ -113,7 +113,8 @@ finally:
connection.close()
```
-For a standard Bailian workspace endpoint, reuse the TypeSafe implementation:
+For a standard Alibaba Cloud Model Studio workspace endpoint, reuse
+the TypeSafe implementation:
```python
import os
@@ -134,7 +135,8 @@ finally:
```
The SDK appends `/v1/systemone` to the TypeSafe API root. Choose a model and
-regional endpoint available to your account. The Bailian example follows its
+regional endpoint available to your account. The Alibaba Cloud Model Studio
+example follows its
[standard Decision API
documentation](https://help.aliyun.com/zh/model-studio/decision-model-api);
other gateway or fine-tuned deployment authentication must be checked
separately.
@@ -429,8 +431,9 @@ accepts the same descriptors for programmatic registration.
For Python connections, the Python package and the selected provider SDK must
be
installed in the job's Python environment. Configure authentication there, as
for
a Python Action. Use the OpenAI implementation classes for OpenAI; use the
-TypeSafe classes with the Bailian endpoint for Bailian. The same typed
question definitions are
-converted by the selected adapter. No Java provider SDK is required.
+TypeSafe classes with the workspace endpoint for Alibaba Cloud Model Studio.
+The same typed question definitions are converted by the selected adapter.
+No Java provider SDK is required.
Java questions have concrete `DecisionRequest.PredicateQuestion`,
`ChoiceQuestion`, and `ScoreQuestion` types. The `Question.predicate`,
diff --git
a/docs/content/docs/development/vector-search/embedding_models/providers.md
b/docs/content/docs/development/vector-search/embedding_models/providers.md
index 2927e8b52..25ec7244e 100644
--- a/docs/content/docs/development/vector-search/embedding_models/providers.md
+++ b/docs/content/docs/development/vector-search/embedding_models/providers.md
@@ -32,6 +32,74 @@ for registration methods and scopes, see
[Resources]({{< ref
"docs/development/create-agent/resources#registering-resources" >}}).
This page describes the built-in implementations and their provider options.
+### Alibaba Cloud Model Studio (DashScope)
{#alibaba-cloud-model-studio-dashscope}
+
+This integration connects to Alibaba Cloud Model Studio (Bailian) through the
DashScope SDK to access embedding models.
+
+{{< hint info >}}
+The DashScope integration currently has a Python implementation only. To use
it from Java agents, see [Cross-Language Resources]({{< ref
"docs/development/create-agent/resources#cross-language-resources" >}}).
+{{< /hint >}}
+
+#### Prerequisites
+
+1. Get an API key from [Alibaba Cloud Model
Studio](https://dashscope.console.aliyun.com/)
+
+#### Usage Example
+
+```python
+class MyAgent(Agent):
+
+ @embedding_model_connection
+ @staticmethod
+ def dashscope_connection() -> ResourceDescriptor:
+ return ResourceDescriptor(
+ clazz=ResourceName.EmbeddingModel.DASHSCOPE_CONNECTION,
+ api_key="your-api-key-here", # Or set DASHSCOPE_API_KEY env var
+ request_timeout=30.0
+ )
+
+ @embedding_model_setup
+ @staticmethod
+ def dashscope_embedding() -> ResourceDescriptor:
+ return ResourceDescriptor(
+ clazz=ResourceName.EmbeddingModel.DASHSCOPE_SETUP,
+ connection="dashscope_connection",
+ model="text-embedding-v4",
+ text_type="query"
+ )
+```
+
+#### DashScopeEmbeddingModelConnection Parameters
+
+| Parameter | Type | Default | Description |
+|-----------|------|---------|-------------|
+| `api_key` | str | `$DASHSCOPE_API_KEY` | DashScope API key for
authentication |
+| `request_timeout` | float | `30.0` | HTTP request timeout in seconds |
+
+#### DashScopeEmbeddingModelSetup Parameters
+
+| Parameter | Type | Default | Description |
+|-----------|------|---------|-------------|
+| `connection` | str | Required | Registered connection Resource name |
+| `model` | str | `"text-embedding-v4"` | Embedding model name |
+| `text_type` | str | None | Input type: `"query"` or `"document"` |
+| `dimension` | int | None | Output vector dimensions (model-dependent) |
+| `additional_kwargs` | dict | `{}` | Additional DashScope API parameters |
+
+#### Available Models
+
+Visit the [Alibaba Cloud Model Studio embedding models
documentation](https://help.aliyun.com/zh/dashscope/developer-reference/text-embedding-api-details)
for the complete and up-to-date list of available embedding models.
+
+Some popular options include:
+- **text-embedding-v4** (default, recommended)
+- **text-embedding-v3**
+- **text-embedding-v2**
+- **text-embedding-v1**
+
+{{< hint warning >}}
+Model availability and specifications may change. Always check the official
Alibaba Cloud Model Studio documentation for the latest information before
implementing in production.
+{{< /hint >}}
+
### Amazon Bedrock
Amazon Bedrock provides embedding capabilities through the Amazon Titan Text
Embeddings V2 model via the [InvokeModel
API](https://docs.aws.amazon.com/bedrock/latest/userguide/titan-embedding-models.html).
The integration supports configurable output dimensions (256, 512, or 1024)
and parallelizes batch embedding via a configurable thread pool, since the
Titan V2 model processes one text per API call. Authentication is handled via
SigV4 using the AWS default credentials chain.
@@ -408,71 +476,3 @@ Current popular models include:
{{< hint warning >}}
Model availability and specifications may change. Always check the official
OpenAI documentation for the latest information before implementing in
production.
{{< /hint >}}
-
-### DashScope (Alibaba Cloud Model Studio)
{#alibaba-cloud-model-studio-dashscope}
-
-This integration connects to Alibaba Cloud Model Studio (Bailian) through the
DashScope SDK to access embedding models.
-
-{{< hint info >}}
-The DashScope integration currently has a Python implementation only. To use
it from Java agents, see [Cross-Language Resources]({{< ref
"docs/development/create-agent/resources#cross-language-resources" >}}).
-{{< /hint >}}
-
-#### Prerequisites
-
-1. Get an API key from [Alibaba Cloud Model
Studio](https://dashscope.console.aliyun.com/)
-
-#### Usage Example
-
-```python
-class MyAgent(Agent):
-
- @embedding_model_connection
- @staticmethod
- def dashscope_connection() -> ResourceDescriptor:
- return ResourceDescriptor(
- clazz=ResourceName.EmbeddingModel.DASHSCOPE_CONNECTION,
- api_key="your-api-key-here", # Or set DASHSCOPE_API_KEY env var
- request_timeout=30.0
- )
-
- @embedding_model_setup
- @staticmethod
- def dashscope_embedding() -> ResourceDescriptor:
- return ResourceDescriptor(
- clazz=ResourceName.EmbeddingModel.DASHSCOPE_SETUP,
- connection="dashscope_connection",
- model="text-embedding-v4",
- text_type="query"
- )
-```
-
-#### DashScopeEmbeddingModelConnection Parameters
-
-| Parameter | Type | Default | Description |
-|-----------|------|---------|-------------|
-| `api_key` | str | `$DASHSCOPE_API_KEY` | DashScope API key for
authentication |
-| `request_timeout` | float | `30.0` | HTTP request timeout in seconds |
-
-#### DashScopeEmbeddingModelSetup Parameters
-
-| Parameter | Type | Default | Description |
-|-----------|------|---------|-------------|
-| `connection` | str | Required | Registered connection Resource name |
-| `model` | str | `"text-embedding-v4"` | Embedding model name |
-| `text_type` | str | None | Input type: `"query"` or `"document"` |
-| `dimension` | int | None | Output vector dimensions (model-dependent) |
-| `additional_kwargs` | dict | `{}` | Additional DashScope API parameters |
-
-#### Available Models
-
-Visit the [Alibaba Cloud Model Studio embedding models
documentation](https://help.aliyun.com/zh/dashscope/developer-reference/text-embedding-api-details)
for the complete and up-to-date list of available embedding models.
-
-Some popular options include:
-- **text-embedding-v4** (default, recommended)
-- **text-embedding-v3**
-- **text-embedding-v2**
-- **text-embedding-v1**
-
-{{< hint warning >}}
-Model availability and specifications may change. Always check the official
Alibaba Cloud Model Studio documentation for the latest information before
implementing in production.
-{{< /hint >}}