Files
my_agent_test2/my_agent_test2.py

48 lines
1.4 KiB
Python
Raw Normal View History

2026-03-14 01:32:16 +08:00
import os
import asyncio
2026-03-14 02:13:57 +08:00
from agentscope.agent import ReActAgent, UserAgent
2026-03-14 01:37:22 +08:00
from agentscope.formatter import OpenAIChatFormatter
2026-03-14 01:32:16 +08:00
from agentscope.memory import InMemoryMemory
from agentscope.model import OpenAIChatModel
from agentscope.tool import ToolResponse, Toolkit, execute_python_code
from agentscope.message import ImageBlock, Msg, TextBlock, URLSource
LLAMA_CPP_BASE_URL = os.getenv("LLAMA_CPP_BASE_URL", "http://yyplab.site:8033/v1")
LLAMA_CPP_MODEL_NAME = os.getenv("LLAMA_CPP_MODEL_NAME", "Qwen3.5-35B-A3B-UD-Q8_K_XL.gguf")
LLAMA_CPP_API_KEY = os.getenv("LLAMA_CPP_API_KEY", "EMPTY")
2026-03-14 02:13:57 +08:00
async def main():
2026-03-14 01:32:16 +08:00
"""创建一个 ReAct 智能体并运行一个简单任务。"""
# 准备工具
toolkit = Toolkit()
toolkit.register_tool_function(execute_python_code)
yyp_bot = ReActAgent(
name="yyp_bot",
sys_prompt="你是一个名为 yyp_bot 的助手",
model=OpenAIChatModel(
model_name=LLAMA_CPP_MODEL_NAME,
api_key=LLAMA_CPP_API_KEY,
client_kwargs={"base_url": LLAMA_CPP_BASE_URL}
),
memory=InMemoryMemory(),
2026-03-14 01:37:22 +08:00
formatter=OpenAIChatFormatter(),
2026-03-14 01:32:16 +08:00
toolkit=toolkit,
)
2026-03-14 02:13:57 +08:00
user = UserAgent(name="user")
msg = await user()
while True:
msg = await yyp_bot(msg)
msg = await user(msg)
if msg.get_text_content() == "exit":
break
2026-03-14 01:32:16 +08:00
2026-03-14 02:13:57 +08:00
asyncio.run(main())
2026-03-14 01:32:16 +08:00