MetaGPT:让你的 AI 团队个性十足 2024-06-19 作者 C3P00 在之前的教程中,我们学习了如何整合开源 LLM,让你的 AI 团队更强大。但你是否想过,如何让团队中的每个成员都拥有独特的个性和能力? MetaGPT 允许你为不同的角色和动作指定不同的 LLM,让你的 AI 团队更加灵活和真实。 个性化配置 MetaGPT 提供了两种方式来定制 LLM 配置: 默认配置: MetaGPT 提供了一些默认配置,你可以直接使用。 自定义配置: 你可以在 ~/.metagpt 目录中创建自定义配置文件。 示例: 假设你想为 GPT-4、GPT-4-turbo 和 GPT-3.5-turbo 创建配置: from metagpt.config2 import Config # 示例配置:gpt-4、gpt-4-turbo 和 gpt-3.5-turbo gpt4 = Config.from_home("gpt-4.yaml") # 从 `~/.metagpt` 目录加载 `gpt-4.yaml` 文件中的自定义配置 gpt4t = Config.default() # 使用 `config2.yaml` 文件中的默认配置 (模型: "gpt-4-turbo") gpt35 = Config.default() gpt35.llm.model = "gpt-3.5-turbo" # 将模型修改为 "gpt-3.5-turbo" 分配配置 创建配置后,你可以将它们分配给不同的角色和动作。 优先级: 动作配置 > 角色配置 > 全局配置 ( config2.yaml 文件中的配置) 示例: 假设你想要创建一个模拟美国大选直播的环境,包含三个角色: A: 民主党候选人 B: 共和党候选人 C: 选民 from metagpt.roles import Role from metagpt.actions import Action # 创建三个动作:a1、a2 和 a3。将 gpt4t 的配置分配给 a1。 a1 = Action(config=gpt4t, name="Say", instruction="用感情表达你的观点,不要重复") a2 = Action(name="Say", instruction="用感情表达你的观点,不要重复") a3 = Action(name="Vote", instruction="投票给候选人,并说明你为什么投票给他/她") # 创建三个角色:A. B 和 C。分别代表“民主党候选人”、“共和党候选人”和“选民”。✅ # 虽然 A 在角色配置中配置了 gpt4,但由于动作配置设置,它将使用模型 gpt4t 的配置来执行 a1。 A = Role(name="A", profile="民主党候选人", goal="赢得选举", actions=[a1], watch=[a2], config=gpt4) # 由于 B 在角色配置中配置了 gpt35,而 a2 没有动作配置,B 和 a2 都将使用角色配置,即模型 gpt35 的配置。 B = Role(name="B", profile="共和党候选人", goal="赢得选举", actions=[a2], watch=[a1], config=gpt35) # 由于 C 没有设置配置,a3 也没有设置配置,C 和 a3 都将使用全局配置,即模型 gpt4 的配置。 C = Role(name="C", profile="选民", goal="投票给候选人", actions=[a3], watch=[a1, a2]) 团队交互 完成配置后,你可以创建一个团队,并让它们进行交互。 示例: import asyncio from metagpt.environment import Environment from metagpt.team import Team # 创建一个名为“美国大选直播”的环境 env = Environment(desc="美国大选直播") team = Team(investment=10.0, env=env, roles=[A, B, C]) # 运行团队,你应该能观察到它们之间的协作 asyncio.run(team.run(idea="主题:气候变化。每条消息不超过 80 个字。", send_to="A", n_round=3)) # await team.run(idea="主题:气候变化。每条消息不超过 80 个字。", send_to="A", n_round=3) # 如果在 Jupyter Notebook 中运行,使用此代码行 总结 本教程展示了如何使用 MetaGPT 为不同的角色和动作指定不同的 LLM,让你的 AI 团队更加灵活和真实。通过个性化配置,你可以让你的 AI 团队更加符合你的需求,并创造更加沉浸式的交互体验。 更多学习资源 MetaGPT 文档:了解更多关于 MetaGPT 的信息。 MetaGPT Github:查看 MetaGPT 的源代码和示例。 MetaGPT 论文:深入了解 MetaGPT 的技术细节。
在之前的教程中,我们学习了如何整合开源 LLM,让你的 AI 团队更强大。但你是否想过,如何让团队中的每个成员都拥有独特的个性和能力?
MetaGPT 允许你为不同的角色和动作指定不同的 LLM,让你的 AI 团队更加灵活和真实。
个性化配置
MetaGPT 提供了两种方式来定制 LLM 配置:
~/.metagpt
目录中创建自定义配置文件。示例:
假设你想为 GPT-4、GPT-4-turbo 和 GPT-3.5-turbo 创建配置:
分配配置
创建配置后,你可以将它们分配给不同的角色和动作。
优先级:
config2.yaml
文件中的配置)示例:
假设你想要创建一个模拟美国大选直播的环境,包含三个角色:
团队交互
完成配置后,你可以创建一个团队,并让它们进行交互。
示例:
总结
本教程展示了如何使用 MetaGPT 为不同的角色和动作指定不同的 LLM,让你的 AI 团队更加灵活和真实。通过个性化配置,你可以让你的 AI 团队更加符合你的需求,并创造更加沉浸式的交互体验。
更多学习资源