本文在Win11操作系统下进行,工具pycharm
一、环境准备
1.建议使用conda虚拟环境
安装anaconda参考:Windows10下Anaconda的安装_windows anaconda 路径-CSDN博客
打开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 Actionclass 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@classmethoddef parse_code(rsp):pattern = r'"""python(.*)"""'match = re.match(pattern,rsp,re.DOTALL)code_text = match.group(1) if match else rspreturn code_textif __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)
代码含义见上面开发文档
虽然报错了,但是运行成功了
资源消耗情况
数量正好对上,本次练习完成,接着练习其他的吧!!!