AutoGen使用指南 #124

Open
opened 2024-09-25 18:53:26 +08:00 by 11256832216cs · 1 comment

AutoGen使用指南

一、引言

AutoGen是微软推出的一款创新工具,对于复杂任务,AutoGen支持通过多智能体协作来完成。你可以创建多个助理代理,每个代理负责任务的不同部分,通过对话和消息传递机制协同工作。

二、AutoGen的使用步骤

1. 安装与配置

安装AutoGen可以通过pip命令完成:
pip install pyautogen

此外,由于AutoGen依赖于大型语言模型API调用,还需要配置相应的API密钥。以下是一个简单的示例,展示如何设置API密钥:

# 导入AUTOMATION模块
import autogen
 
# 配置你的API密钥
config_list = [
    {'model': 'gpt-4o-mini', 'api_key': 'your_api_key'}
]
autogen.config_list = config_list

2. 定义智能体(Agents)

在AutoGen中,智能体是执行特定任务的核心组件。AutoGen提供了多种类型的智能体,如用户代理(UserProxyAgent)和助理代理(AssistantAgent)。用户代理代表人类用户,负责发布任务和接收反馈;助理代理则代表大型语言模型,负责执行任务并生成响应。

3.智能体之间的对话交互

在AutoGen中,智能体之间的对话交互是通过消息传递机制实现的。

三、举例说明

设定场景,设置两个智能体,从一个问题的正反两方面来论证。有许多问题是没有标准答案的,站在不同的立场便看到的不同,这也正是辩论的魅力所在。

1. 实现步骤

创建智能体:创建两个智能体。
配置对话流程:根据问题主题将任务分配给相应的智能体。

以下是一个实现上述功能的代码示例:

from autogen import ConversableAgent

# 配置LLM
config_list = [
    {
        "model": "gpt-4o-mini",
        "base_url": "https://<api_url>",
        "api_type": "openai",
        "api_key": "xxxxxxxxx",
    }
]


# 创建助理代理
daming = ConversableAgent(
    name="daming",
    llm_config={"config_list": config_list, "temperature": 0.5},
    system_message="你是辩论的正方,你认为AI对人类发展有利,从你的角度论证用户提出的辩题, 每次发言限定50-100字之间"
)
lingling = ConversableAgent(
    name="lingling",
    llm_config={"config_list": config_list, "temperature": 0.5},
    system_message="你是辩论的反方,你认为AI对人类发展不利,请从你的角度来论证用户提出的辩题, 每次发言限定50-100字之间"
)

# 配置对话流程
questions = "lingling, 让我们讨论下AI是否会取代人类?"
daming.initiate_chat(lingling, message=questions, max_turns=2)

2. 效果如下

daming (to lingling):

lingling, 让我们讨论下AI是否会取代人类?

--------------------------------------------------------------------------------

>>>>>>>> USING AUTO REPLY...
lingling (to daming):

AI的快速发展可能导致大量工作岗位被取代,尤其是那些重复性和低技能的职位。这不仅会加剧失业率,还可能引发社会不平等,造成经济分化。此外,依赖AI决策可能削弱人类的判断力和创造力,导致我们在思考和解决问题时变得更加依赖技术,最终影响人类的全面发展。

--------------------------------------------------------------------------------

>>>>>>>> USING AUTO REPLY...
daming (to lingling):

虽然AI可能取代一些低技能职位,但它也创造了新的就业机会,尤其是在技术、数据分析和创新领域。AI的应用提高了生产效率,促进了经济增长,从而为社会提供了更多的财富和资源。此外,AI可以辅助人类做出更明智的决策,解放我们的时间,让我们专注于更具创造性和战略性的工作,从而推动人类全面发展。

--------------------------------------------------------------------------------

>>>>>>>> USING AUTO REPLY...
lingling (to daming):

尽管AI可能创造一些新职位,但这些职位往往需要更高的技能和教育水平,许多被取代的低技能工人难以适应转型。此外,AI的普及可能导致中产阶级的萎缩,进一步加剧贫富差距。过度依赖AI辅助决策也可能削弱人类的批判性思维能力,导致我们在面对复杂问题时缺乏独立判断。这样的趋势可能最终阻碍人类的全面发展。

--------------------------------------------------------------------------------

Process finished with exit code 0

四、参考

https://microsoft.github.io/autogen/docs/Getting-Started

<期待与你交流,希望能玩出更多的花样>

AutoGen使用指南 # 一、引言 AutoGen是微软推出的一款创新工具,对于复杂任务,AutoGen支持通过多智能体协作来完成。你可以创建多个助理代理,每个代理负责任务的不同部分,通过对话和消息传递机制协同工作。 # 二、AutoGen的使用步骤 ## 1. 安装与配置 安装AutoGen可以通过pip命令完成: `pip install pyautogen` 此外,由于AutoGen依赖于大型语言模型API调用,还需要配置相应的API密钥。以下是一个简单的示例,展示如何设置API密钥: ``` # 导入AUTOMATION模块 import autogen # 配置你的API密钥 config_list = [ {'model': 'gpt-4o-mini', 'api_key': 'your_api_key'} ] autogen.config_list = config_list ``` ## 2. 定义智能体(Agents) 在AutoGen中,智能体是执行特定任务的核心组件。AutoGen提供了多种类型的智能体,如用户代理(UserProxyAgent)和助理代理(AssistantAgent)。用户代理代表人类用户,负责发布任务和接收反馈;助理代理则代表大型语言模型,负责执行任务并生成响应。 ## 3.智能体之间的对话交互 在AutoGen中,智能体之间的对话交互是通过消息传递机制实现的。 # 三、举例说明 设定场景,设置两个智能体,从一个问题的正反两方面来论证。有许多问题是没有标准答案的,站在不同的立场便看到的不同,这也正是辩论的魅力所在。 ## 1. 实现步骤 创建智能体:创建两个智能体。 配置对话流程:根据问题主题将任务分配给相应的智能体。 以下是一个实现上述功能的代码示例: ``` from autogen import ConversableAgent # 配置LLM config_list = [ { "model": "gpt-4o-mini", "base_url": "https://<api_url>", "api_type": "openai", "api_key": "xxxxxxxxx", } ] # 创建助理代理 daming = ConversableAgent( name="daming", llm_config={"config_list": config_list, "temperature": 0.5}, system_message="你是辩论的正方,你认为AI对人类发展有利,从你的角度论证用户提出的辩题, 每次发言限定50-100字之间" ) lingling = ConversableAgent( name="lingling", llm_config={"config_list": config_list, "temperature": 0.5}, system_message="你是辩论的反方,你认为AI对人类发展不利,请从你的角度来论证用户提出的辩题, 每次发言限定50-100字之间" ) # 配置对话流程 questions = "lingling, 让我们讨论下AI是否会取代人类?" daming.initiate_chat(lingling, message=questions, max_turns=2) ``` ## 2. 效果如下 ``` daming (to lingling): lingling, 让我们讨论下AI是否会取代人类? -------------------------------------------------------------------------------- >>>>>>>> USING AUTO REPLY... lingling (to daming): AI的快速发展可能导致大量工作岗位被取代,尤其是那些重复性和低技能的职位。这不仅会加剧失业率,还可能引发社会不平等,造成经济分化。此外,依赖AI决策可能削弱人类的判断力和创造力,导致我们在思考和解决问题时变得更加依赖技术,最终影响人类的全面发展。 -------------------------------------------------------------------------------- >>>>>>>> USING AUTO REPLY... daming (to lingling): 虽然AI可能取代一些低技能职位,但它也创造了新的就业机会,尤其是在技术、数据分析和创新领域。AI的应用提高了生产效率,促进了经济增长,从而为社会提供了更多的财富和资源。此外,AI可以辅助人类做出更明智的决策,解放我们的时间,让我们专注于更具创造性和战略性的工作,从而推动人类全面发展。 -------------------------------------------------------------------------------- >>>>>>>> USING AUTO REPLY... lingling (to daming): 尽管AI可能创造一些新职位,但这些职位往往需要更高的技能和教育水平,许多被取代的低技能工人难以适应转型。此外,AI的普及可能导致中产阶级的萎缩,进一步加剧贫富差距。过度依赖AI辅助决策也可能削弱人类的批判性思维能力,导致我们在面对复杂问题时缺乏独立判断。这样的趋势可能最终阻碍人类的全面发展。 -------------------------------------------------------------------------------- Process finished with exit code 0 ``` # 四、参考 https://microsoft.github.io/autogen/docs/Getting-Started <期待与你交流,希望能玩出更多的花样>

写得很好喔,又学到了

写得很好喔,又学到了
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: HswOAuth/llm_course#124
No description provided.