微信扫码
添加专属顾问
我要投稿
LangChain与通义千问向量模型结合使用指南,解决常见报错问题。核心内容: 1. 使用LangChain调用通义千问向量模型的初始代码示例 2. 分析报错原因:文本预处理问题 3. 解决方案:添加check_embedding_ctx_length参数
开始用的代码如下:
import os
from langchain_openai import OpenAIEmbeddings, OpenAI
embeddings_model = OpenAIEmbeddings(
api_key=os.getenv("DASHSCOPE_API_KEY"), # 换成你的API KEY
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
model="text-embedding-v3"
)
embeddings = embeddings_model.embed_documents(
[
"你好!",
"你能做什么"
]
)
print(f"Embedding: {embeddings}")
执行时报错:
openai.BadRequestError: Error code: 400 - {
'error': {
'code': 'InvalidParameter', 'param': None,
'message': '<400> InternalError.Algo.InvalidParameter: Value error, contents is neither str nor list of str.: input.contents',
'type': 'InvalidParameter'},
'id': '2aadf398-7093-9b37-be4c-c85829fce932',
'request_id': '2aadf398-7093-9b37-be4c-c85829fce932'}
文本列表 在送入 embeddings.create 之前已经被 token 化了,发送给模型的并不是文本原文
增加参数check_embedding_ctx_length = False。最终代码如下:
import os
from langchain_openai import OpenAIEmbeddings, OpenAI
embeddings_model = OpenAIEmbeddings(
api_key=os.getenv("DASHSCOPE_API_KEY"), # 换成你的API KEY
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
model="text-embedding-v3",
check_embedding_ctx_length = False
)
embeddings = embeddings_model.embed_documents(
[
"你好!",
"你能做什么"
]
)
print(f"Embedding: {embeddings}")
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-08-29
Claude code prompt原来这么写的,怪不得这么厉害
2025-08-27
从LangChain到LangGraph:AI智能体提示词工程的系统化学习
2025-08-25
Agent实战教程:LangGraph相关概念介绍以及快速入门
2025-08-23
企业级复杂任务智能体构建:解锁LangChain新品Deep Agents及其UI利器
2025-08-20
使用LLamaIndex Workflow来打造水墨风格图片生成工作流
2025-08-19
让 LangChain 知识图谱抽取更聪明:BAML 模糊解析助力升级
2025-08-17
Manus、LangChain一手经验:先别给Multi Agent判死刑,是你不会管理上下文
2025-08-16
关于Langchain/Langgraph框架的流式与非流式返回——invoke/ainvoke/stream/astream
2025-06-05
2025-07-14
2025-06-26
2025-07-14
2025-07-16
2025-06-16
2025-08-19
2025-06-26
2025-06-13
2025-06-16
2025-07-14
2025-07-13
2025-07-05
2025-06-26
2025-06-13
2025-05-21
2025-05-19
2025-05-08