"""搜索结果数据结构,统一 Tavily 与 SearXNG 的输出格式。""" from pydantic import BaseModel class SearchResult(BaseModel): """结构化搜索结果,统一 Tavily 与 SearXNG 的输出格式。""" title: str url: str snippet: str # 截断到 500 字符,避免 token 浪费 published_at: str | None = None # ISO 字符串,可能为空 source_provider: str # "searxng" / "tavily"(SearXNG 时可附加上游引擎,如 "searxng:bing")