96SEO 2026-06-14 22:19 0
这一层我Zui关注两个问题:
检索命中只Neng说明系统找到了可Neng相关的教材片段。学生真正需要的是:系统Neng不Neng基于这些片段组织回答,Neng不Neng把概念讲清楚,Neng不Neng引用来源,Neng不Neng避免凭空发挥。

Faithfulness:有没有编造
Coverage:有没有漏重点
Relevance:有没有答偏
在代码里这三个指标是一次 LLM Judge 调用里一起完成的。Prompt 会要求 Judge 同时Zuo三件事:
这一期为什么选 RRF,而不是直接加权相加、只相信 Reranker,或者上geng复杂的学习排序?
class DeterministicGrader:
def check -> GradingResult:
failures =
if not answer or not answer.strip:
failures.append
if not sources:
failures.append
failures.extend)
failures.extend)
return GradingResult(
passed=len == 0,
failures=failures,
)
这一步hen像第二篇里的入库抽检:它不证明回答一定好,但Neng先把低级结构问题标出来。比如回答空了、引用丢了、来源页码和上下文对不上,这些问题不需要 LLM Judge 才Neng发现。
Judge 的输入不是只有回答文本,还包括原始问题、参考教材上下文和评估集里的 key_facts。这也是为什么前面要把 sources 和 context dou保留下来:评估时要Neng回到证据上,而不是只kan回答像不像。
backend/app
├── chat
│ ├── schemas.py # ChatRequest / ChatResponse
│ ├── service.py # ChatService:检索精炼 + 生成编排
│ ├── dependencies.py # FastAPI 依赖注入
│ └── router.py # POST /api/chat
├── domain
│ ├── models.py # SourceReference
│ └── protocols.py # Reranker / Generator 协议
├── infra
│ ├── bm25.py # BM25 稀疏检索
│ ├── reranker.py # DashScope TextReRank
│ └── llm.py # LLMGenerator
├── rag
│ ├── embeddings.py # DashScopeEmbedding
│ ├── vector_store.py # ChromaDBStore
│ └── models.py # QueryResult / ChunkMetadata
└── evaluation
├── eval_runner.py # 检索 + 生成评估运行器
├── eval_types.py # EvalItem / EvalSource 等数据结构
└── graders
├── deterministic.py # 确定性前置检查
└── llm_judge.py # Faithfulness / Coverage / Relevance
类之间的关系Ke以简化成这样:
不过这一步也不Neng一下子铺太开。Ru果同时Zuo前端 Chat UI、流式输出和多轮对话,hen容易把问题混在一起:到底是检索不准、上下文太乱、Prompt 没写好,还是前端交互出了问题。
在调用 LLM Judge 之前,我先加了一层确定性评分器。它不判断回答质量高低,而是先记录一批不用模型也Neng检查出来的结构问题。
Faithfulness 关注的是回答里的事实声明Neng不Neng被教材上下文支持。
说实话,咱就是说为什么百度不收录我的文章呢?有人说是内容不够原创,有人说是关键词堆砌,你懂的,其实这些说法dou有一定的道理,但关键还是在于内容质量和用户体验。
所以 Relevance 只kan一个问题:回答是否切题。
有了两路检索结果后下一步不是简单拼接。
参考教材内容:
这里是教材 chunk 文本……
这里是另一个教材 chunk 文本……
学生问题:二次函数的顶点式怎么理解?
这样模型在回答时kan到的不只是碎片文本,也Nengkan到每段内容来自哪本书、哪一节、哪几页。Prompt 的重点不是把话术写得hen复杂,而是把可用上下文稳定、清楚地交给模型。
{ "question": "二次函数的顶点式怎么理解?", "top_k": 3}
返回大致是:
所以融合后大致会是:
A> C> B
A 因为两路dou命中,而且排名dou不差,融合分明显geng高。B 只被向量检索命中,C 只被 BM25 命中,它们也不会被丢掉,只是分数只来自各自命中的那一路。
检索结果交给 LLM 以后生成出来的回答到底靠不靠谱两路结果Neng放在一起融合,是因为它们dou指向同一批 chunk。每个候选dou有稳定的 chunk_id,RRF Ke以用这个 ID 判断“这是不是同一个教材片段”,再分别kan它在向量结果和 BM25 结果里的排名。
后面我又补了一项 Relevance。原因hen简单:Faithfulness 和 Coverage dou不Neng完全防止答非所问。
Fusion 的必要性比如向量检索的分数来自 cosine distance,BM25 的分数来自关键词匹配统计。一个是语义距离,一个是词项相关性,它们的数值没有可比性。不Neng简单说“0.8 的向量分数一定比 0.5 的 BM25 分数geng重要”,也不Neng直接把两个分数相加。
Fusion 方法选择与实现细节Zui后用 Yes / 得到忠实度分数,Unknown 单独统计比例。
contextchunks = self.truncatebychars(
reranked,
self.settings.chatmaxcontexttokens,
)
...
...
sequenceDiagram participant E as EvalRunner participant V as ChromaDB participant R as Reranker participant G as LLMGenerator participant D as DeterministicGrader participant J as LLMJudge E->E: load loop 每条评估问题 E->V: query V-->E: candidate chunks E->E: similarity threshold filter E->R: rerank R-->E: context chunks E->G: generate G-->E: answer + sources E->D: check D-->E: deterministic result E->J: judge J-->E: faithfulness / coverage / relevance end E->E: 汇总整体指标
...
Baidu 不收录的原因探讨害,这个问题我也遇到了说实话,hen让人头疼。 咱就是说可Neng还是内容质量的问题吧。 你得确保你的内容对用户有价值,而不是简单的复制粘贴。 说白了还是要提高内容的质量,让用户喜欢,这才是王道。 不对不对,应该是还有其他原因,比如关键词优化啥的。 得慢慢分析,不Neng放弃。 为了解决这个问题,我尝试了多种方法,比如优化 meta 标签,增强内链建设等。 但Zui终,还是要回归到内容本身,提升用户体验,才是长久之计。 嗯,就这样吧,希望对你有帮助!
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback