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

使用AzureOpenAI的gpt-35-turbo-1106调用create_sql_agent报错咨询

问题分析与解决方案

错误根源

你遇到的TypeError: Completions.create() got an unexpected keyword argument 'tools',核心原因有两个:

  1. Azure OpenAI API版本过低:tools参数属于OpenAI Chat Completions的工具调用能力,Azure OpenAI需要api_version≥2023-10-01-preview才支持该参数,旧版本API仅支持基础补全接口,无法识别tools。
  2. LLM实例或agent_type配置不匹配:若误用了针对文本补全的AzureOpenAI类(对应Completions接口)而非聊天补全的AzureChatOpenAI类,或者agent_type配置未适配Azure环境,会导致代码错误调用不支持tools的接口。

模型支持确认

Azure OpenAI的gpt-35-turbo-1106模型完全支持工具调用/Function Calling能力,因此可以用于创建SQL agent,只需配置正确。

修复步骤

  • 指定兼容的API版本:初始化Azure OpenAI客户端时,必须设置api_version="2023-10-01-preview"或更高版本(如2024-02-15-preview):
    from langchain.chat_models import AzureChatOpenAI
    
    llm = AzureChatOpenAI(
        azure_deployment="gpt-35-turbo-1106",
        api_version="2023-10-01-preview",
        temperature=0
    )
    
  • 确保使用正确的LLM类:必须用AzureChatOpenAI(对应Chat Completions接口)而非AzureOpenAI(对应Completions接口),后者不支持tools参数。
  • 验证agent_type配置:若使用LangChain的create_sql_agent,agent_type="openai-tools"是兼容Azure的,但前提是LLM实例为AzureChatOpenAI且API版本达标。若仍有问题,可尝试切换为agent_type="openai-functions"(部分LangChain版本中对Azure的适配更稳定)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 10:33:05