聊天和回忆录证据检索都走 pgvector,去掉 Postgres FTS/content_tsv,新迁移删掉 content_tsv 列(部署要先 alembic upgrade)。
Embedding 端口增加 is_available(),聊天和回忆录日志用统一方式表示向量是否真能调用。 记忆整理(compaction)支持 Beat 定期扫用户; 事实抽取提示与 subject 归一化,减少同一人多种称呼;
This commit is contained in:
@@ -33,6 +33,7 @@ from app.agents.memoir.story_route_agent import (
|
||||
)
|
||||
from app.agents.state_schema import MemoirStateSchema
|
||||
from app.core.config import settings
|
||||
from app.core.dependencies import get_embedding_provider
|
||||
from app.core.logging import get_logger
|
||||
from app.features.memoir.cover_eligibility import chapter_needs_cover_enqueue
|
||||
from app.features.memoir.memoir_images.settings import MemoirImageSettings
|
||||
@@ -714,8 +715,16 @@ def run_story_pipeline_for_category_batch(
|
||||
top_k = int(settings.evidence_top_k_default)
|
||||
if n_units > int(settings.evidence_large_batch_threshold):
|
||||
top_k = int(settings.evidence_top_k_large_batch)
|
||||
emb = get_embedding_provider()
|
||||
embedding_available = emb.is_available()
|
||||
try:
|
||||
evidence = retrieve_evidence_sync(session, user_id, combined_text, top_k=top_k)
|
||||
evidence = retrieve_evidence_sync(
|
||||
session,
|
||||
user_id,
|
||||
combined_text,
|
||||
top_k=top_k,
|
||||
embedding_provider=emb,
|
||||
)
|
||||
except Exception as e:
|
||||
logger.warning("Evidence 检索跳过: {}", e)
|
||||
evidence = {
|
||||
@@ -726,6 +735,16 @@ def run_story_pipeline_for_category_batch(
|
||||
"relevant_stories": [],
|
||||
}
|
||||
|
||||
logger.info(
|
||||
"memoir_evidence_retrieved user_id={} chunks={} facts={} summaries={} stories={} vector_ok={}",
|
||||
user_id,
|
||||
len(evidence.get("relevant_chunks") or []),
|
||||
len(evidence.get("relevant_facts") or []),
|
||||
len(evidence.get("relevant_summaries") or []),
|
||||
len(evidence.get("relevant_stories") or []),
|
||||
embedding_available,
|
||||
)
|
||||
|
||||
evidence_text = format_evidence_chunks_for_prompt(evidence)
|
||||
oral_for_memoir = normalize_oral_for_memoir(combined_text, llm=llm)
|
||||
ct_raw = (combined_text or "").strip()
|
||||
|
||||
Reference in New Issue
Block a user