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

Microsoft Autogen函数调用的推荐方法及相关技术疑问

AutoGen函数调用常见问题解答

问题背景

我发现AutoGen中的函数调用存在多种实现方式:官方教程采用register_function或user_proxy.register_for_execution方法;部分第三方教程则通过llm_config中的"functions"参数,或是在Agent构造器中使用function_map实现工具调用,其中function_map可一次性绑定多个函数。但这两种第三方方法在我这里无法生效,仅官方文档中的方法可用。

现咨询两个问题:

  1. 处理函数或工具调用的正确且有效的方式是什么?
  2. 官方教程提到无需像OpenAI函数调用那样构造函数定义,但仍有部分案例在Autogen中沿用该做法,这种操作是否真的必要?

代码示例参考

第三方functions实现方式(已弃用)

SQL_executor = AssistantAgent(
    name="ExecutorAgent",    
    system_message="execute SQL Queries.", 
    llm_config={"config_list": config_list , "functions":execute_sql_query }, 
    code_execution_config={"work_dir":"coding", "use_docker":False},   
)

第三方function_map实现方式(仅特定Agent生效)

SQL_executor = AssistantAgent(
    name="ExecutorAgent",    
    system_message="execute SQL Queries.", 
    llm_config={"config_list": config_list}, 
    code_execution_config={"work_dir":"coding", "use_docker":False},   
    function_map = function_name   
)

官方文档实现方式

方式1:UserProxyAgent局部注册

user_proxy.register_for_execution(name="calculator")(calculator)

方式2:全局注册函数

register_function(
    calculator,
    caller=assistant,  
    executor=user_proxy, 
    name="calculator", 
    description="A simple calculator", 
)

问题解答

1. 函数/工具调用的正确有效方式

AutoGen官方推荐的稳定生效方式为**register_function全局注册或user_proxy.register_for_execution局部注册**,这是当前版本(>=0.2)的标准实现:

  • user_proxy.register_for_execution():将函数注册给UserProxyAgent,由其负责执行函数,适合单Agent场景
  • register_function():全局注册,同时指定调用函数的Agent(caller)和执行函数的Agent(executor),适配多Agent协作场景

第三方方法失效的核心原因是版本兼容问题:

  • llm_config["functions"]是AutoGen早期版本写法,现已被官方弃用,新版本不再支持
  • function_map参数仅在特定Agent(如FunctionCallAgent)中有效,普通AssistantAgent构造器传入不会生效,第三方教程可能使用了旧版或非标准Agent类型

2. 是否需要像OpenAI那样构造函数定义?

不需要强制这么做,需根据场景判断:

  • 普通场景:AutoGen会自动提取函数的名称、参数和注释生成函数定义,无需手动编写,这也是官方推荐的简化方式
  • 手动构造的适用场景:
    • 函数参数复杂(如嵌套结构、枚举值),自动生成的定义不够准确时
    • 需要自定义函数描述文本,让大模型更精准理解函数用途时
    • 兼容旧版代码或特定第三方工具集成时

简单来说,常规场景用自动生成足够,复杂场景可手动补充定义。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 12:15:02