MetaGPT入门(一)

本文介绍了在Windows11系统中,如何通过Anaconda创建虚拟环境、安装metagpt及其国内API,以及使用WriteSimpleCode类实现基础编程任务的详细步骤。作者分享了配置过程和一个示例代码,尽管遇到了一些小问题,但最终成功完成了练习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文在Win11操作系统下进行,工具pycharm

一、环境准备

1.建议使用conda虚拟环境

安装anaconda参考:Windows10下Anaconda的安装_windows anaconda 路径-优快云博客

打开Anaconda Powershell Prompt命令窗口,输入下面命令,创建3.10版本的python解释器

conda create -n metagpt python=3.10

2.切换到创建的metagpt虚拟环境

conda activate metagpt

3.安装metagpt,输入下面命令,以指定源形式,安装特定版本的metagpt

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple metagpt==0.5.2

4、配置metagpt

没有openai,练习用,国内api也行啊,用智谱的吧,一个月 有效,够练习的了

https://open.bigmodel.cn/usercenter/resourcepack

智谱AI开放平台 (bigmodel.cn)

修改key.yaml文件ZHIPUAI_API_KEY:

5、开始练习吧,按照第3章,编写实现一个单动作Agent

‌⁡⁣⁡⁡​​⁤‌⁡‌​⁡‍⁡​⁣⁤‬​⁣‍⁢​‬⁣⁣⁣​‬⁣‌⁢​​‌​⁤‬⁢‍‬‍《MetaGPT智能体开发入门》教程 - 飞书云文档 (feishu.cn)

代码如下

import re
import asyncio
from metagpt.actions import Action

class WriteSimpleCode(Action):

    PROMPT_TEMPLATE = ''' 
    Write a python function that can {instruction} and provide two runnable test cases.
    Return ```python your_code_here ``` with NO other texts,
    your code:
    '''

    def __init__(self,name:'WriteSimpleCode',context=None, llm=None):
        super().__init__(name,context,llm)

    async def run(self, instruction:str):

        prompt = self.PROMPT_TEMPLATE.format(instruction=instruction)
        rsp = await self._aask(prompt)

        code_text = WriteSimpleCode.parse_code(rsp)
        return code_text

    @classmethod
    def parse_code(rsp):
        pattern = r'"""python(.*)"""'
        match = re.match(pattern,rsp,re.DOTALL)
        code_text = match.group(1) if match else rsp
        return code_text

if __name__ == '__main__':
    # 创建 WriteSimpleCode 类的实例
    action = WriteSimpleCode(name='WriteSimpleCode', context=None, llm=None)

    # 调用 run 方法,传入指令参数
    instruction = 'reverse_string'
    # 使用 await 调用 run 方法,传入指令参数
    code_text = asyncio.run(action.run(instruction))

    # 打印提取出的 Python 代码
    print(code_text)
   

代码含义见上面开发文档

虽然报错了,但是运行成功了

资源消耗情况

数量正好对上,本次练习完成,接着练习其他的吧!!!

03-14
<think>好的,我现在需要处理用户关于MetaGPT的查询。用户希望了解MetaGPT的介绍或使用教程。首先,我应该先确认用户的需求,他们可能对MetaGPT的基本概念、功能以及如何使用感兴趣。 根据用户提供的引用资料,引用[1]提到了MetaGPT项目的目录结构、启动文件和配置文件,而引用[2]则涉及多智能体协作框架。我需要结合这些信息来构建回答。 首先,介绍MetaGPT是什么。它是个多智能体协作框架,结合了SOP和LLM,适用于复杂任务。需要解释其核心思想,比如标准化操作流程和智能体分工,这样用户能理解其优势。 接下来是使用教程部分。根据引用[1],教程涵盖目录结构、启动文件和配置。我需要分步骤说明,比如安装、配置API密钥、项目结构、编写智能体逻辑和运行示例。同时,要提供代码示例,如config.yaml的配置,这能帮助用户直观了解如何设置。 然后,生成相关问题。考虑到用户可能想深入技术细节或应用场景,问题可以包括技术原理、应用案例、与传统方法的对比、调试技巧、扩展性以及学习资源。这些问题能引导用户进步探索。 需要确保回答符合格式要求:行内数学公式用$...$,独立公式用$$...$$,但当前内容中可能不需要数学公式。同时,引用标识要正确添加,如[^1]和[^2]。 检查是否有遗漏点,比如是否需要提及MetaGPT的优势或与其他工具的比较。但根据用户问题,重点在介绍和使用教程,所以保持相关即可。 最后,确保语言简洁,结构清晰,分点说明,便于用户理解。避免使用复杂术语,必要时解释概念。确认所有引用正确,没有格式错误。</think>### MetaGPT 介绍 MetaGPT个基于多智能体协作的框架,旨在通过标准化操作流程(SOP)和大语言模型(LLM)的结合,解决复杂任务。其核心思想是将任务分解为标准化步骤,并分配给不同角色的智能体(如产品经理、工程师、测试员等),模拟真实团队协作流程。 #### 核心功能 1. **多角色协同**:通过定义不同角色的智能体,实现任务分工。 2. **标准化流程**:支持代码生成、文档编写、测试等开发环节的自动化。 3. **可扩展性**:允许用户自定义角色、任务流程和工具集成。 --- ### MetaGPT 使用教程 #### 1. 安装与配置 ```bash # 克隆项目仓库 git clone https://github.com/geekan/MetaGPT.git cd MetaGPT # 安装依赖 pip install -r requirements.txt # 配置 OpenAI API 密钥 echo "OPENAI_API_KEY=your-api-key" > .env ``` #### 2. 项目结构 - **`config` 目录**:存放配置文件(如模型参数、角色定义)。 - **`metagpt` 目录**:核心代码,包含角色类、动作定义和流程控制器。 - **`examples` 目录**:提供使用示例(如自动生成需求文档、代码生成)。 #### 3. 编写智能体逻辑 示例:定义个生成用户故事的角色 ```python from metagpt.roles import Role class ProductManager(Role): def __init__(self): super().__init__( name="Alice", profile="Product Manager", goal="Generate user stories based on requirements", actions=[WritePRD, ReviewPRD] # 定义动作序列 ) ``` #### 4. 运行示例 ```bash # 运行需求文档生成示例 python examples/start_company.py ``` --- ### 配置文件示例(`config.yaml`) ```yaml roles: - name: Engineer skills: ["coding", "debugging"] model: "gpt-4" actions: - name: WriteCode timeout: 600 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值