merge: integrate ZSY customer service and profile capabilities

This commit is contained in:
张胜宇
2026-09-11 22:31:51 +08:00
94 changed files with 7933 additions and 77 deletions
+5 -1
View File
@@ -20,6 +20,8 @@ ALLOWED_COLLECTIONS = frozenset({
"fin_product_collection",
"fin_policy_collection",
})
# 兼容知识生命周期服务的历史命名;两者必须始终指向同一白名单。
ALLOWED_KNOWLEDGE_COLLECTIONS = ALLOWED_COLLECTIONS
#: text-embedding-v3 输出维度。维度不符必须失败关闭。
VECTOR_DIM = 1024
@@ -80,6 +82,8 @@ class KnowledgeHit(BaseModel):
collection: str
title: str | None = None
snippet: str
# MySQL 权威过滤后附加的完整答案;Milvus 原始命中可不携带该字段。
answer: str | None = None
score: float | None = Field(default=None, ge=0, le=1)
tags: tuple[str, ...] = ()
version: str | None = None
@@ -99,7 +103,7 @@ class KnowledgeHit(BaseModel):
class KnowledgeSearchResult(BaseModel):
model_config = ConfigDict(extra="forbid", frozen=True)
hits: tuple[KnowledgeHit, ...]
hits: tuple[KnowledgeHit, ...] = ()
degraded: bool = False
degradation_reason: str | None = None
searched_collections: tuple[str, ...] = ()