
一、场景说明使用阿里云DashScope 文本嵌入模型生成文本的向量表示embedding支持单句生成、文档批量生成可直接用于RAG 知识库、向量数据库、语义搜索、对话匹配二、安装依赖pipinstalllangchain langchain_community三、完整可运行代码importosfromlangchain_community.embeddingsimportDashScopeEmbeddings# 设置 dashscope api key必须在创建对象之前os.environ[DASHSCOPE_API_KEY]sk-你的API_KEY# 创建嵌入模型对象# 不传 model 参数默认使用 text-embedding-v1embeddingsDashScopeEmbeddings()# 1. embed_query 方法用于单条文本/查询语句的嵌入text我喜欢你vectorembeddings.embed_query(text)print(单文本向量长度:,len(vector))print(单文本向量前5个值:,vector[:5])# 2. embed_documents 方法用于文档列表批量嵌入documents[我喜欢你,你喜欢我]vectorsembeddings.embed_documents(documents)print(\n批量文档向量数量:,len(vectors))print(第1条向量前5个值:,vectors[0][:5])print(第2条向量前5个值:,vectors[1][:5])四、代码逐行讲解1. 导入与配置 API Keyimportosfromlangchain_community.embeddingsimportDashScopeEmbeddings os.environ[DASHSCOPE_API_KEY]你的API_KEYAPI Key 必须在创建对象前设置从阿里云 DashScope 控制台获取2. 初始化 Embedding 模型embeddingsDashScopeEmbeddings()默认模型text-embedding-v1你也可以手动指定模型embeddingsDashScopeEmbeddings(modeltext-embedding-v2)3. 单文本向量化embed_querytext我喜欢你vectorembeddings.embed_query(text)用于用户问题、单条句子返回一个浮点数列表向量4. 批量文档向量化embed_documentsdocuments[我喜欢你,你喜欢我]vectorsembeddings.embed_documents(documents)用于知识库文档、批量句子返回多个向量的列表五、运行结果示例单文本向量长度: 1536 单文本向量前5个值: [-0.02143326, 0.03567211, 0.01232234, ...] 批量文档向量数量: 2 第1条向量前5个值: [-0.02143326, 0.03567211, ...] 第2条向量前5个值: [0.01567233, -0.02345612, ...]六、常用方法总结方法用途适用场景embed_query(text)生成单文本向量用户提问、检索词embed_documents([text1, text2])批量生成文档向量知识库入库、批量处理七、常见问题报错API Key 未设置把os.environ写在DashScopeEmbeddings()前面报错模型不存在使用阿里云支持的模型text-embedding-v1、text-embedding-v2返回向量太长这是正常的embedding 一般是 768/1536 维八、下一步能做什么学会 Embedding 后你可以直接做RAG 检索增强生成对接Chroma / FAISS / Milvus向量数据库文本相似度匹配、语义搜索对话意图识别