45 lines
1.4 KiB
Python
45 lines
1.4 KiB
Python
import os
|
||
import asyncio
|
||
|
||
|
||
from agentscope.agent import ReActAgent
|
||
from agentscope.formatter import OllamaChatFormatter
|
||
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")
|
||
|
||
|
||
async def creating_react_agent() -> None:
|
||
"""创建一个 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(),
|
||
formatter=OllamaChatFormatter(),
|
||
toolkit=toolkit,
|
||
)
|
||
|
||
msg = Msg(
|
||
name="user",
|
||
content="你好!yyp_bot,用 Python 运行 Hello World。",
|
||
role="user",
|
||
)
|
||
|
||
await yyp_bot(msg)
|
||
|
||
|
||
asyncio.run(creating_react_agent()) |