F098补充:无附件且已召回可用同题QA时,在本阶段之前直接走原答案路径,rerank不调用;详见同题QA提前返回。其他请求保持下述规则。
F093:已召回的最多12份完整资料在全文分块分析前,逐份由现有模型结合当前问题及上下文分类。提示154字,单份返回 {"level":"强相关"},取值限强相关、中相关、弱相关、不相关。无解释、分数或重写摘要,输出预算32 tokens。
| 级别 | 含义 | 处理 |
|---|---|---|
| 强相关 | 直接解答或必要前置 | 保留,优先分析 |
| 中相关 | 可能有用,信息不足待核验 | 保留 |
| 弱相关 | 仅行业相同或依赖另一项未提出的活动 | 过滤,保护项除外 |
| 不相关 | 主题无关 | 过滤,保护项除外 |
输入仅包含问题、必要查询方向、资料标题与现成摘要;QA用原问题判断主题。优先使用解析后的追问语义,无解析结果的同会话追问使用现有受限历史;新话题不带旧历史。资格、地区、时效未确认不是排除依据。摘要仅作初筛,保留资料仍须完整核验原文,等级不是资格或获批概率。
直接需求及前置查询的最高分命中、同题QA、缺少摘要的资料受到保护,低等级也保留。单份输入超过12000字节则保留,不截断后推断无关。非法返回、超时或服务拥堵保留该份;超时或拥堵后不启动剩余排队分类,已在途的请求可结束。全部候选被排除时回退原集合。保留原检索的完整性状态,不把排序服务失败说成查无资料。
API与CLI默认开启,在项目根目录 .env 中控制(系统环境变量优先);当前本地已显式设置:
# true:开启;false:关闭。修改后重启后端。
RERANK_ENABLED=true
关闭时不发起rerank分类请求,直接进入原全文分析流程。可选配置如下:
| 配置 | 默认 | 范围 |
|---|---|---|
RERANK_ENABLED |
true |
true / false |
RERANK_CONCURRENCY |
4 |
1至16 |
RERANK_TIMEOUT_SECONDS |
5 |
1至30秒,单个网络请求超时 |
API分类仍使用现有共享模型信号量,等待名额超过1秒回退;单请求超时不等于整个阶段严格限定5秒。默认每轮最多12次短分类,线程池在当前请求内创建关闭。关闭时恢复原分析路径。更改代码或配置需重启后端,历史结果不回填。
recommendation.retrieval.rerank提供状态、耗时、输入/保留数量、实际调用数及每份资料的原始等级、保护/保留结果、错误码。不输出推理过程;保护不会把原始弱相关偷偷改成强相关。
当前rerank发生在完整资料读取后,减少的是后续全文分析成本,不改变六库召回与12条上限,也不能找回此前未召回的资料。所有候选都相关时,分类会增加耗时。
验证入口:python -m src.step3_question_answer.rerank_check(显式调用配置模型,仅合成资料)。2026-09-21的6组24份标注资料中,四级20份一致,强/中15份无误删,弱/不9份均过滤;四处差异发生在相邻等级,不能代替真实总体质量评测。全相关4份额外用时0.639秒。
原问题单组真实对照:12份降至8份,rerank 1.841秒,全文37块降25块;计入共同规划、检索与rerank后42.28秒至31.55秒,关键登记入口和备案均保留。两侧总模型调用均39次,收益来自较少的长文处理,并非调用总数下降。这是单次测试链路,未包含线上意图识别、排队、前端或容量验证。