实现一个多动作Agent
都在代码注释里了,主要记住这些步骤就写出代码来了
import asyncio
import os
import re
import subprocess
from metagpt.schema import Message
from metagpt.logs import logger
from metagpt.actions import Action
from metagpt.roles import Role
class SimpleWriteCode(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="SimpleWriteCode", 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 = SimpleWriteCode.parse_code(rsp)
return code_text
@staticmethod
def parse_code(rsp):
pattern = r'```python(.*)```'
match = re.search(pattern, rsp, re.DOTALL)

最低0.47元/天 解锁文章
1013

被折叠的 条评论
为什么被折叠?



