Files
agent_management/agent_templates/agents/facebook_agent/models/schemas.py
T

37 lines
1.5 KiB
Python

"""
数据模型定义
使用Pydantic定义输入输出结构
"""
from pydantic import BaseModel, Field
from typing import List, Optional
from datetime import datetime
class SearchRequest(BaseModel):
"""搜索请求模型"""
query: str = Field(..., description="搜索关键词", min_length=1, max_length=200)
limit: Optional[int] = Field(5, description="返回结果数量", ge=1, le=20)
class SearchResultItem(BaseModel):
"""Facebook搜索结果项"""
title: str = Field(..., description="笔记标题")
url: Optional[str] = Field(None, description="笔记链接")
snippet: Optional[str] = Field(None, description="笔记摘要")
author: Optional[str] = Field(None, description="作者")
likes: Optional[int] = Field(None, description="点赞数")
cover_image: Optional[str] = Field(None, description="封面图片URL")
class SearchResponse(BaseModel):
"""搜索响应模型"""
success: bool = Field(..., description="是否成功")
query: str = Field(..., description="搜索关键词")
results: List[SearchResultItem] = Field(default_factory=list, description="搜索结果列表")
total_count: Optional[int] = Field(None, description="总结果数")
summary: Optional[str] = Field(None, description="AI生成的总结")
message: Optional[str] = Field(None, description="错误消息或提示信息")
timestamp: str = Field(default_factory=lambda: datetime.now().isoformat(), description="时间戳")