AutoGen:微软AI多智能体会话框架的新变革

本文介绍了微软的AutoGen框架,一个基于多智能体对话的工具,它利用大语言模型开发应用程序,被广泛认为是AI领域的重大突破。AutoGen简化了开发者创建LLM应用的过程,并展示了在多种领域中的实际应用和增强的LLM推理功能。
摘要由CSDN通过智能技术生成

        在人工智能发展的今天,对话系统和自然语言处理技术的创新日新月异。微软推出了名为AutoGen的框架,它标志着在使用大型预训练语言模型(LLM)开发应用程序方面的一次飞跃。AutoGen不仅因其技术突破而受到业界的广泛关注,并且在短短的时间里,已经被TheSequence评为2023年我最喜爱的AI论文之一,并且仅在从FLAML(一个机器学习工具库)分支出来后35天就入选了Open100:最佳100个开源成就,可见其影响力之大。

什么是 AI Agent

        AI Agent/人工智能代理,指的是能在某种环境中自主运作的软件实体,它通过感知环境并在此基础上进行决策来实现特定的目标或任务。AI代理可以是简单的,比如基于规则的系统,也可以是复杂的,应用了机器学习技术的自适应系统。AI代理在多个领域有广泛的应用,比如个人助手、游戏AI、推荐系统和自动驾驶车辆。

在技术实现上,AI代理可能会应用如下方法和技术:

  1. 规则引擎:基于一系列预先定义好的规则做出决策。

  2. 大模型:通过大语言预训练模型,然后利用该模型做出预测和决策。

  3. 计划和调度:编排一系列的动作以达成长期的目标。

多智能体会话

        多智能体会话(Multi-Agent Conversations)则涉及多个AI代理之间,或AI代理与人类之间的互动。在这种场景中,不同的智能体可能有着不同的目标、资源和知识,它们必须通过交流和协作来解决问题或完成任务。多智能体系统(Multi-Agent Systems,MAS)是研究这种互动的一门跨学科领域,它结合了人工智能、计算机科学、工程学等多个学科的研究成果。

592709d3f67c073f60322416ffab4649.jpeg


AutoGen简介

        AutoGen是一个基于多智能体会话的框架,它使得开发者可以使用多个可对话的代理来实现LLM应用程序,这些代理既可自定义,也支持与人类的无缝互动。AutoGen代理能够运行在多种模式下,结合了LLM、人类输入和工具,从而优化复杂流程的编排、自动化和性能。

        在AutoGen框架的支持下,开发者无需投入大量努力,就能构建下一代的LLM应用。它支持多样的对话模式,用于更加复杂的工作流程。开发者可以根据对话的自主性、代理数量和代理对话拓扑等需求,定制各种对话模式。

        AutoGen还提供了各种复杂性的工作系统示例,广泛应用于不同领域,展示了它对多样对话模式的支持能力。增强型LLM推理提供了诸如API统一、缓存、错误处理、多配置推理、上下文编程等高级使用模式。


开始使用AutoGen

        最简单的开始方式是使用GitHub Codespace,将OAI_CONFIG_LIST_sample复制到./notebook文件夹,重命名为OAI_CONFIG_LIST,并进行正确的配置。然后可以在notebook中开始实验。

Note: 默认情况下推荐使用GPT-4模型,因为它与AutoGen的配合已知效果很好。如果你选择使用GPT-3.5-turbo等其他模型,你可能需要修订系统提示。

安装AutoGen
  • 选项1:在Docker中安装和运行AutoGen
    用户和开发者的具体指南分别位于相关链接。

  • 选项2:本地安装AutoGen
    AutoGen需要Python版本 >= 3.8, < 3.13,并且可以通过pip安装:

pip install pyautogen

多智能体会话框架

        AutoGen的多智能体会话框架使得LLM应用更具通用性,集成了LLM、工具和人类参与的自定义和可对话的代理。它通过自动化多个能力强大的代理间的聊天,可以轻松地让它们集体自主地完成任务,或者在融入人类反馈的情况下完成任务,其中包括通过代码使用工具所必需的任务。例如:

from autogen import AssistantAgent, UserProxyAgent, config_list_from_json


config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST")
assistant = AssistantAgent("assistant", llm_config={"config_list": config_list})
user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding", "use_docker": True})


user_proxy.initiate_chat(assistant, message="绘制英伟达和特斯拉今年股价的变化图")

下图显示了使用 AutoGen 的示例对话流。
1676a5668aa7193d88732d5f554b7dfa.png

强化LLM推理

        AutoGen还通过诸如缓存、错误处理、多配置推理和模板化等功能,帮助用户最大限度地发挥昂贵LLM的作用,例如ChatGPT和GPT-4。


文档和社区参与

        详细的AutoGen文档可在官方网站找到,此外,鼓励开发者社区参与AutoGen项目。对开源文化的贡献者需要签署CLA(Contributor License Agreement),确保能够合法地授权使用其贡献。

        AutoGen项目遵循微软开源行为准则,并且主动接受来自社区的意见和建议。如有任何额外问题或评论,可通过电子邮件opencode@microsoft.com联系。


结语

        AutoGen以其革命性的多智能体会话框架,为未来的AI应用打下了坚实的基础。不仅对技术爱好者,对于所有追求前沿技术和希望将复杂AI工作流程自动化的开发者来说,AutoGen无疑是值得关注和探索的重要工具。如果你想要深入了解或参与到AutoGen项目中,请访问官方GitHub仓库,一起推动人工智能的未来发展。

https://github.com/microsoft/autogen
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值