聊天和回忆录证据检索都走 pgvector,去掉 Postgres FTS/content_tsv,新迁移删掉 content_tsv 列(部署要先 alembic upgrade)。
Embedding 端口增加 is_available(),聊天和回忆录日志用统一方式表示向量是否真能调用。 记忆整理(compaction)支持 Beat 定期扫用户; 事实抽取提示与 subject 归一化,减少同一人多种称呼;
This commit is contained in:
@@ -68,9 +68,22 @@ async def _fetch_interview_memory_evidence(
|
||||
):
|
||||
return ""
|
||||
try:
|
||||
ms = MemoryService(db, embedding_provider=get_embedding_provider())
|
||||
emb = get_embedding_provider()
|
||||
ms = MemoryService(db, embedding_provider=emb)
|
||||
bundle = await ms.retrieve(user_id, msg, top_k=settings.chat_memory_top_k)
|
||||
text = format_evidence_chunks_for_prompt(bundle.model_dump())
|
||||
bd = bundle.model_dump()
|
||||
vector_ok = emb.is_available()
|
||||
logger.info(
|
||||
"memory_evidence_retrieved user_id={} chunks={} facts={} summaries={} timeline={} stories={} vector_ok={}",
|
||||
user_id,
|
||||
len(bd.get("relevant_chunks") or []),
|
||||
len(bd.get("relevant_facts") or []),
|
||||
len(bd.get("relevant_summaries") or []),
|
||||
len(bd.get("timeline_hints") or []),
|
||||
len(bd.get("relevant_stories") or []),
|
||||
vector_ok,
|
||||
)
|
||||
text = format_evidence_chunks_for_prompt(bd)
|
||||
t = (text or "").strip()
|
||||
if not t:
|
||||
return ""
|
||||
|
||||
Reference in New Issue
Block a user