update CR comment

This commit is contained in:
张建生 2025-02-20 19:57:16 +08:00
parent 141713738c
commit 44fa8d63d4

View file

@ -1,24 +1,52 @@
import asyncio
import time
from metagpt.logs import logger
from metagpt.environment.mgx.mgx_env import MGXEnv
from metagpt.schema import Message
from metagpt.roles.di.team_leader import TeamLeader
from metagpt.roles import Architect, ProductManager
from metagpt.roles.di.data_analyst import DataAnalyst
from metagpt.roles.di.engineer2 import Engineer2
from metagpt.roles.di.team_leader import TeamLeader
from metagpt.schema import Message
async def main():
msg = "Write code for a 2048 game"
async def main(requirement="", user_defined_recipient="", enable_human_input=False, allow_idle_time=30):
env = MGXEnv()
env.add_roles([TeamLeader(), Engineer2()])
env.publish_message(Message(content=msg, role="user"))
tl = env.get_role("Mike")
await tl.run()
env.add_roles(
[
TeamLeader(),
Engineer2(),
ProductManager(),
Architect(),
DataAnalyst(),
]
)
role = env.get_role("Alex")
result = await role.run(msg)
logger.info(result)
msg = Message(content=requirement)
env.attach_images(msg) # attach image content if applicable
if user_defined_recipient:
msg.send_to = {user_defined_recipient}
env.publish_message(msg, user_defined_recipient=user_defined_recipient)
else:
env.publish_message(msg)
allow_idle_time = allow_idle_time if enable_human_input else 1
start_time = time.time()
while time.time() - start_time < allow_idle_time:
if not env.is_idle:
await env.run()
start_time = time.time() # reset start time
if __name__ == "__main__":
asyncio.run(main())
requirement = "Write code for a 2048 game"
user_defined_recipient = ""
asyncio.run(
main(
requirement=requirement,
user_defined_recipient=user_defined_recipient,
enable_human_input=False,
allow_idle_time=60,
)
)