You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行LangChain入门示例报错:InvalidRequestError参数缺失

问题排查与解决方案

错误原因分析

错误提示InvalidRequestError:创建<class 'openai.api_resources.completion.Completion'>必须提供'engine'或'deployment_id'参数,核心原因是当前请求被识别为Azure OpenAI服务调用模式,但未配置对应引擎/部署ID;或是OpenAI SDK版本更新后,默认不再自动指定模型参数。


具体解决步骤

1. 清理Azure相关环境变量

若之前误配置了Azure OpenAI的环境变量,会导致LangChain默认走Azure调用流程:

  • 查看本地.env文件或系统环境变量,删除以下内容(如果存在):
    AZURE_OPENAI_API_KEY=xxx
    OPENAI_API_TYPE=azure
    OPENAI_API_BASE=xxx
    OPENAI_API_VERSION=xxx
    
  • 重新加载环境变量后运行代码。

2. 显式指定OpenAI模型参数

新版本的OpenAI SDK/LangChain可能不再默认设置模型,初始化OpenAI时需明确指定:
修改代码中的初始化部分:

llm = OpenAI(temperature=0.9, model="text-davinci-003")

可根据需求替换为其他支持的模型(如gpt-3.5-turbo-instruct)。

3. 强制指定API类型为OpenAI

若环境变量清理后仍有问题,可在代码中显式指定API类型:

llm = OpenAI(
    temperature=0.9,
    model="text-davinci-003",
    openai_api_type="openai"
)

4. 核对依赖版本兼容性

若以上方法无效,检查依赖包版本:

  • 执行pip list | grep openai和pip list | grep langchain,确保OpenAI版本在0.27.0以上,LangChain版本适配当前OpenAI SDK。
  • 若版本不兼容,可回退到之前能正常运行的版本,例如:
    pip install openai==0.27.8 langchain==0.0.286
    

内容的提问来源于stack exchange,提问作者Andrey Tagaew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 03:47:20