知识库与 RAGAI 资源
jev-reranker:面向 LLM 上下文的重排序、过滤与压缩工具
shinpr/jev-reranker · Rerank, filter, and compress JSON search results with TypeSafe AI's Jev.
ELI5:它是什么,解决什么问题
jev-reranker 是一个 Rust 编写的命令行工具,通过 TypeSafe AI 的 Jev 对检索结果进行二次处理。它从 stdin 读取 JSON 数组,按查询对候选文档进行重排序、过滤掉无可用证据的结果,或将文档压缩为与查询相关的短段落,并将处理后的 JSON 数组写入 stdout,用于在 BM25、向量搜索等召回步骤之后为 LLM 精简上下文。
核心能力与快速开始
★ 2 · Rust
- 能做什么
- 读取 stdin 的 JSON 候选文档数组,依据查询对文档进行三种处理:rerank 模式按相关性排序并添加 rerankScore;filter 模式根据 evidenceScore(默认阈值 0.5)剔除不含可用证据的候选;compress 模式按句子或行拆分并保留相关段落,输出 compressedText。支持通过 --text-field 指定文本字段、可重复的 --context-field 添加上下文、--top 限制输出数量、--model 选择 Jev 模型路由、--batch-size 与 --timeout-ms 调节请求,原始对象字段和元数据原样保留。
- 适用场景
- 在 BM25、向量搜索或其他检索命令之后对 JSON 候选结果进行重排,为 LLM 挑选更相关的上下文;过滤掉只有主题相关但缺乏具体证据的检索结果;压缩长文档,将更短的摘录传递给下游 LLM 以节省上下文;与已有的检索排序流程配合使用。
- 项目形态
- 可直接使用的工具
- 部署方式
- 通过 npm 全局安装(npm install --global jev-reranker)或使用 npx 运行;需要 Node.js 14 或更高版本,支持 macOS、Linux 或 Windows(x64 或 Arm64);需要设置 TYPESAFE_API_KEY 环境变量,API key 从 TypeSafe dashboard 获取。
- 主要依赖
- Node.js 14 或更高版本;TypeSafe API 密钥(仅从 TYPESAFE_API_KEY 环境变量读取);运行时会调用 TypeSafe System One API,涉及网络请求与相应费用。
- 使用限制
- 查询、模型名称、所选上下文值和所选文本会发送到 TypeSafe 的 System One API;API 使用受 TypeSafe 定价和限制影响,成本未在材料中具体说明;每次调用独立发起 API 请求,rerank 与 filter 默认每 30 个候选一次顺序请求,compress 可能因按句/行评分而需要更多请求;--top 不减少 API 工作量;仅对 429 和 529 响应重试两次,其他错误、超时和传输失败不重试;句子/行提取面向散文,代码、表格和特殊格式可能更适合整文档 filter 模式;stdin 必须是对象组成的单个 JSON 数组,且 --text-field 指定的字段必须为字符串;未说明离线使用或本地模型方案。
- 许可证
- MIT
- 最近推送
- 2026-09-21 06:55
资料检查:2026-09-22 07:00 · 卡片整理:2026-09-22 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证 · 本次更新未完成,保留上次成功内容
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。