请问如何在微软的Autogen 0.4框架下使用Qwen模型实现工具调用?

目前Qwen模型官方文档中,工具调用的语法格式如下:

tools = [
    # 工具1 获取当前时刻的时间
    {
        "type": "function",
        "function": {
            "name": "get_current_time",
            "description": "当你想知道现在的时间时非常有用。",
            "parameters": {}  # 因为获取当前时间无需输入参数,因此parameters为空字典
        }
    },

但是在微软Autogen 0.4中按照该语法调用工具,则会返回错误ValueError: Unsupported tool type: 。
而如果按照Autogen语法调用工具,则会返回错误openai.BadRequestError: Error code: 400 - {'error': {'message': '<400> InternalError.Algo.InvalidParameter: messages with role "tool" must be a response to a preceeding message with "tool_calls". (request id: 20250)', 'type': 'upstream_error', 'param': '400', 'code': 'bad_response_status_code'}}
请问应当如何解决?

展开
收起
n7m5rpxebzapk 2025-03-20 16:34:47 856 分享 版权
1 条回答
写回答
取消 提交回答
  • 资深 C++与人工智能程序员。精通 C++,善用其特性构建稳健架构。在人工智能领域,深入研习机器学习算法,借 C++与 OpenCV 等实现计算机视觉应用,于自然语言处理构建文本处理引擎。以敏锐洞察探索技术融合边界,用代码塑造智能未来。

    在微软Autogen 0.4框架下使用Qwen模型实现工具调用,可按以下一般步骤:

    1. 安装依赖:确保安装了Autogen 0.4和Qwen模型相关库,可通过包管理器(如pip)安装,如 pip install autogen qwen (实际安装可能需调整)。

    2. 配置Qwen模型:设置Qwen模型访问密钥等必要信息,如在代码中添加 os.environ["QWEN_API_KEY"] = "your_api_key" 等代码(依实际情况)。

    3. 导入模块并初始化:在Python脚本中导入Autogen和Qwen相关模块,初始化用户代理、助手代理等,如 user_proxy = autogen.UserProxyAgent(...) 、 assistant_proxy = autogen.AssistantAgent(...) 。

    4. 定义工具:用Autogen工具调用机制定义要使用的工具,如 def my_tool(arg): ... ,并注册工具到助手代理, assistant_proxy.register_function(...) 。

    5. 进行交互:用户代理发送消息给助手代理,助手代理在需要时调用工具,如 user_proxy.initiate_chat(assistant_proxy, message="...") ,助手代理根据Qwen模型和工具调用处理请求并回复。

    实际操作中,需依Autogen 0.4和Qwen模型官方文档调整代码,解决身份验证、模型参数配置等问题。

    2025-04-07 22:38:07
    赞同 383 展开评论
问答分类:
问答地址:

基于通义系列大模型和开源大模型的一站式大模型服务平台,提供「生成式大模型的全流程应用工具」和「企业大模型的全链路训练工具」。为大模型,也为小应用。 阿里云百炼官网网址:https://www.aliyun.com/product/bailian

还有其他疑问?
咨询AI助理