refactor: 简化 AgentScope 运行时模块与事件处理

- 移除冗余的 user_token 参数传递
- 重构 tool.result 事件使用 ToolAgentOutput 模型
- 重构 text.end 事件使用 WorkerAgentOutput 模型
- 简化 store 模块的 tool result 处理逻辑
- 更新 router/service 适配新事件结构
- 清理废弃的测试文件与设计文档
- 新增 AgentRuns 多模态存储设计文档
This commit is contained in:
qzl
2026-03-13 17:27:18 +08:00
parent 3273d63b23
commit 1c02503d1d
29 changed files with 1259 additions and 2725 deletions
+2 -16
View File
@@ -1,11 +1,3 @@
from core.agentscope.schemas.agui_input import (
extract_latest_tool_result,
extract_latest_user_content,
extract_latest_user_payload,
extract_latest_user_text,
parse_run_input,
validate_run_request_messages_contract,
)
from schemas.agent.runtime_models import (
ResultType,
RouterAgentOutput,
@@ -14,17 +6,17 @@ from schemas.agent.runtime_models import (
ToolAgentOutput,
ToolStatus,
UiMode,
WorkerAgentOutput,
WorkerAgentOutputLite,
WorkerAgentOutputRich,
WorkerAgentOutput,
resolve_worker_output_model,
)
from schemas.agent.system_agent import AgentType, SystemAgentLLMConfig
from schemas.agent.ui_hints import (
UiHintAction,
UiHintBlock,
UiHintsPayload,
)
from schemas.agent.system_agent import AgentType, SystemAgentLLMConfig
__all__ = [
"AgentType",
@@ -43,10 +35,4 @@ __all__ = [
"WorkerAgentOutputRich",
"WorkerAgentOutput",
"resolve_worker_output_model",
"extract_latest_tool_result",
"extract_latest_user_content",
"extract_latest_user_payload",
"extract_latest_user_text",
"parse_run_input",
"validate_run_request_messages_contract",
]
-1
View File
@@ -1 +0,0 @@
from core.agentscope.schemas.agui_input import * # noqa: F403
+1 -1
View File
@@ -374,7 +374,7 @@ class WorkerAgentOutputRich(WorkerAgentOutputLite):
)
WorkerAgentOutput = WorkerAgentOutputRich
WorkerAgentOutput = WorkerAgentOutputLite | WorkerAgentOutputRich
def resolve_worker_output_model(ui_mode: UiMode) -> type[WorkerAgentOutputLite]:
+2 -2
View File
@@ -1,3 +1,3 @@
from schemas.messages.chat_message import AgentChatMessageMetadata
from schemas.messages.chat_message import AgentChatMessage, AgentChatMessageMetadata
__all__ = ["AgentChatMessageMetadata"]
__all__ = ["AgentChatMessage", "AgentChatMessageMetadata"]
+17 -1
View File
@@ -1,8 +1,11 @@
from __future__ import annotations
from datetime import datetime
from decimal import Decimal
from typing import ClassVar
from uuid import UUID
from pydantic import BaseModel, ConfigDict
from pydantic import BaseModel, ConfigDict, Field
from ..agent import AgentType, ToolAgentOutput, WorkerAgentOutput
@@ -22,3 +25,16 @@ class AgentChatMessageMetadata(BaseModel):
user_message_attachments: UserMessageAttachments | None = None
tool_agent_output: ToolAgentOutput | None = None
worker_agent_output: WorkerAgentOutput | None = None
class AgentChatMessage(BaseModel):
"""Canonical schema aligned with `messages` table columns."""
model_config: ClassVar[ConfigDict] = ConfigDict(extra="forbid")
id: UUID
seq: int
role: str
content: str
metadata: AgentChatMessageMetadata | dict[str, object] | None = None
timestamp: datetime