"""记忆提取工具的输入和输出"""
from pydantic import BaseModel, Field
from apps.scheduler.call.core import DataBase
class DomainGen(BaseModel):
"""生成的领域信息结果"""
keywords: list[str] = Field(description="关键词或标签列表,可以为空。")
class FactsGen(BaseModel):
"""生成的提取事实结果"""
facts: list[str] = Field(description="从对话中提取的事实条目,可以为空。")
class FactsInput(DataBase):
"""提取事实工具的输入"""
user_id: str = Field(description="用户ID")
message: list[dict[str, str]] = Field(description="消息")
class FactsOutput(DataBase):
"""提取事实工具的输出"""
facts: list[str] = Field(description="提取的事实")
domain: list[str] = Field(description="提取的领域")