在 AgentRun 中,向量模型(Embedding Model) 用于将文本内容转换为高维向量,是实现语义相似度计算、向量检索、知识库召回等核心能力的基础组件。
功能介绍
通过向量模型管理,可以:
添加并配置向量模型(如通义千问的
text-embedding-v3);接入自定义服务,支持符合 OpenAI 规范的第三方向量模型 API;
统一管理多个向量模型,按场景灵活切换;
在 Agent 的知识库、检索增强(RAG)等模块中直接引用。
操作步骤
步骤 1:进入向量模型管理页面
进入AgentRun控制台,首次使用需要进行SLR授权,在弹出的提示框中点击确认即可;
在顶部菜单栏点击模型管理,然后选择向量模型;
页面展示所有已创建的向量模型,并提供“添加模型”入口。
步骤 2:添加模型
点击添加模型;
在弹出的对话框中,默认选中API 模型。
步骤 3:填写基本信息
名称(必填):输入易于识别的名称,如
kb-embedding-cn。建议包含服务商或模型版本信息。描述(可选):简要说明用途,例如“中文知识库语义检索”。
步骤 4:选择服务提供商
在服务提供商下拉框中按需选择:
通义千问:阿里云官方大模型服务,提供多版本文本嵌入模型(如 text-embedding-v3);
自定义服务:接入任意符合 OpenAI 规范的第三方向量模型 API,适合私有化部署或定制化场景。
步骤 5:模型配置
通义千问
API端点配置:
选择通义千问后,系统自动填充 API 端点,无需修改
https://dashscope.aliyuncs.com/compatible-mode/v1在配置具体模型区域,勾选需要的模型版本,可多选,但实际调用时会根据配置使用其中一个:
text-embedding-v1text-embedding-v2text-embedding-v3text-embedding-v4
自定义服务
VPC 配置:如果模型服务部署在阿里云 VPC 内网,为了保证从 AgentRun 到目标服务网络连通,需要选择与模型服务一致的VPC/子网/安全组,对于部署在公网的服务,此配置可以留空;
API端点:在API 端点输入框中填写服务地址,要求该地址下提供兼容 OpenAI 的
/v1/embeddings接口。输入模型名称:如
my-embedding-v1(在 Agent 中引用时使用)
步骤6:访问凭证(按需配置)
是否配置凭证,取决于你的服务端是否要求认证,判断标准:如果调用接口时需要 Authorization: Bearer xxx 或类似认证字段,则必须配置凭证;否则可以选择“不使用凭证”。点击出站:访问第三方凭证打开配置面板,可选择以下方式之一:
选择使用已有凭证(推荐):适合多服务共享同一凭证、集中管理密钥的场景。从下拉框中选择在凭证管理中创建好的 API Key,如果没有可以选择的凭证,可以参考凭证管理添加;
选择API 密钥:密钥仅用于当前模型,不会保存到全局凭证管理。在访问密钥中直接输入第三方服务的 API Key;
不使用凭证:适用于允许匿名访问的测试或内部服务。
步骤7:创建并验证模型
检查配置无误后,点击对话框右下角创建模型;
创建成功后,会跳转到该向量模型管理页,可以对模型进行查看和管理,在目标模型的卡片中,点击详情,可以查看模型名称、创建时间、支持的模型以及服务配置等信息;
模型测试:可以查看详情页调用示例,使用下列方式进行测试:
API
curl https://dashscope.aliyuncs.com/compatible-mode/v1/embeddings \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "input": "The food was delicious and the waiter...", "model": "text-embedding-ada-002", "encoding_format": "float" }'Python SDK
from agentrun import ModelClient ms = ModelClient().get(name="model-9FIYil") result = ms.completions( messages=[{"role": "user", "content": "写一首赞美 AI 的诗歌"}], stream=True, ) for chunk in result: print(chunk.choices[0].delta.content, end="", flush=True)Node.js SDK
import OpenAI from "openai"; const openai = new OpenAI(); async function main() { const embedding = await openai.embeddings.create({ model: "text-embedding-ada-002", input: "The quick brown fox jumped over the lazy dog", encoding_format: "float", }); console.log(embedding); } main();