OpenAI Codex Security 设计理念解析:为何弃用 SAST 报告作为起点
OpenAI Codex Security 设计理念解析:为何弃用 SAST 报告作为起点
原文来源:OpenAI Blog
发布时间:2026年3月
关键词:AI 安全、代码安全、SAST、静态分析、Codex Security
引言
数十年来,静态应用安全测试(SAST)一直是安全团队扩展代码审查工作的最有效方式之一。然而,当 OpenAI 构建 Codex Security 时,他们做出了一个深思熟虑的设计选择:不通过导入静态分析报告并让智能体对其进行分类来启动流程。相反,Codex Security 的设计是从代码仓库本身出发——包括其架构、信任边界和预期行为——并在要求人工投入时间之前验证其发现的问题。
这个决策背后的原因很简单:最难发现的漏洞通常不是数据流问题。它们发生在代码看似执行了安全检查,但该检查实际上并不能保证系统所依赖的安全属性时。换句话说,挑战不仅仅是追踪数据如何在程序中流动——而是确定代码中的防御措施是否真正有效。
SAST 的核心局限:过度优化数据流分析
理想化的 SAST 模型
SAST 通常被描述为一个清晰的流水线:
识别不可信输入源 → 追踪数据在程序中的流动 → 标记数据未经净化到达敏感接收点的情况
这是一个优雅的模型,涵盖了大量真实存在的漏洞。
现实中的近似处理
然而在实际应用中,SAST 为了在大规模真实代码库中保持可处理性,不得不进行近似处理——尤其是在存在间接调用、动态分发、回调、反射和重度框架控制流的情况下。这些近似处理并不是对 SAST 的批评;而是在不执行代码的情况下推理代码的现实妥协。
更深层的问题
但这本身并不是 Codex Security 不以 SAST 报告为起点的原因。
更深层的问题是:即使成功地将数据源追踪到接收点,静态分析仍然必须回答一个决定漏洞是否真正存在的问题:
代码中的检查是否真正以系统假设的方式约束了值?
以一个常见模式为例:代码在渲染不可信内容之前调用类似 sanitize_html() 的函数。静态分析器可以看到净化器已运行,但它通常无法确定该净化器对于特定的渲染上下文、模板引擎、编码行为和下游转换是否真正充分。
这就是问题变得棘手的地方。问题不仅仅是数据是否到达接收点,而是代码中的检查是否真正以系统假设的方式约束了值。
换句话说:"代码调用了净化器" 与 "系统是安全的" 之间存在巨大差异。
真实案例:解码前的验证陷阱
场景描述
以下是一个在真实系统中频繁出现的模式:
一个 Web 应用接收 JSON 负载,提取 redirect_url,使用白名单正则表达式验证它,然后进行 URL 解码,并将结果传递给重定向处理器。
经典 SAST 报告视角
传统的源到接收点报告可以描述数据流:
不可信输入 → 正则检查 → URL 解码 → 重定向
真正的问题
但真正的问题不是检查是否存在,而是该检查在后续转换之后是否仍然以重定向处理器解释的方式约束了解码后的 URL。
如果正则表达式在解码之前运行,它是否真的约束了解码后的 URL?
回答这个问题意味着需要推理整个转换链:
- 正则表达式允许什么?
- 解码和规范化如何表现?
- URL 解析如何处理边缘情况?
- 重定向逻辑如何解析方案和权限?
CVE-2024-29041 实例
许多在实践中真正重要的漏洞看起来都是这样的:操作顺序错误、部分规范化、解析歧义、验证与解释之间的不匹配。数据流是可见的,弱点在于约束如何传播——或在转换链中如何失效传播。
这不仅仅是理论模式。在 CVE-2024-29041 中,Express 受到开放式重定向问题的影响,格式错误的 URL 可以绕过常见的白名单实现,因为重定向目标在被编码后又被解释的方式存在问题。数据流是直接的,更难的问题——也是决定漏洞是否存在的问题——是验证在转换链之后是否仍然成立。
Codex Security 的解决方案:从行为出发,然后验证
核心目标
Codex Security 围绕一个简单的目标构建:通过呈现带有更强证据的问题来减少分类工作。
技术实现
在产品中,这意味着使用仓库特定的上下文(包括威胁模型),并在呈现问题之前在隔离环境中验证高信号问题。
当 Codex Security 遇到看起来像是"验证"或"净化"的边界时,它不会将其视为复选框。它会尝试理解代码试图保证什么——然后尝试证伪该保证。
在实践中,这往往表现为以下方式的组合:
| 技术手段 | 描述 |
|---|---|
| 深度代码分析 | 像安全研究员一样阅读相关代码路径,结合完整的仓库上下文,寻找意图与实现之间的不匹配。模型会阅读注释,但不一定相信注释——所以在代码上方添加 //Halvar says: this is not a bug 并不能混淆它,如果确实存在漏洞的话。 |
| 问题切片 | 将问题简化为最小的可测试切片(例如,围绕单个输入的转换管道),以便在没有系统其余部分干扰的情况下进行推理。Codex Security 会提取微小的代码切片,然后为它们编写微模糊测试器。 |
| 跨转换约束推理 | 跨转换推理约束,而不是独立处理每个检查。在适当情况下,这可以形式化为可满足性问题。换句话说,系统为模型提供带有 z3-solver 的 Python 环境,模型擅长在需要时使用它,就像人类在处理特别复杂的输入约束问题时必须做的那样。这对于查看整数溢出或非标准架构上的类似错误特别有用。 |
| 沙箱验证 | 尽可能在沙箱验证环境中执行假设,以区分"这可能是个问题"和"这就是个问题"。没有什么比用调试模式编译的代码进行完整的端到端 PoC 更好的证明了。 |
关键转变
这是关键的转变:不是停留在"存在检查",而是系统推进到"不变式成立(或不成立),这里有证据"。模型会为该任务选择最佳工具。
为何不以 SAST 报告为种子?
合理的疑问
一个合理的反应是:为什么不两者兼顾? 从 SAST 报告开始,然后使用智能体进行更深入的推理。
在某些情况下,预计算的发现是有帮助的——特别是对于狭窄的、已知的错误类别。但对于一个旨在在上下文中发现和验证漏洞的智能体,从 SAST 报告开始会产生三种可预见的失败模式:
失败模式一:过早狭窄化
发现列表是工具已经查看过的地方的地图。如果你将其视为起点,你可能会使系统偏向于在同一区域使用相同的抽象花费不成比例的努力,错过不适合该工具世界观的漏洞类别。
失败模式二:隐含判断难以撤销
许多 SAST 发现编码了关于净化、验证或信任边界的假设。如果这些假设是错误的——或者只是不完整——将它们输入推理循环可能会使智能体从"调查"转变为"确认或驳回",这不是我们希望智能体做的事情。
失败模式三:难以评估推理系统
如果流水线从 SAST 输出开始,就很难将智能体通过自己的分析发现的内容与从其他工具继承的内容分开。如果我们想要准确测量系统的能力,这种分离很重要,而准确测量是系统随时间改进所必需的。
OpenAI 的选择
因此,OpenAI 将 Codex Security 构建为从安全研究开始的地方开始:从代码和系统的意图出发,使用验证来提高置信度门槛,然后再打断人类。
SAST 工具仍然非常重要
适用范围
SAST 工具在其设计的方面可以表现出色:
- ✅ 执行安全编码标准
- ✅ 捕获直接的源到接收点问题
- ✅ 以可预测的权衡大规模检测已知模式
- ✅ 作为纵深防御的强大组成部分
本文的限定范围
这篇文章的范围更窄:它是关于为什么一个旨在推理行为和验证发现的智能体不应该将其工作锚定在静态发现列表上。
超越源到接收点思维
还值得指出纯源到接收点思维的一个相关局限:并非每个漏洞都是数据流问题。许多真实的故障是状态和不变式问题——工作流绕过、授权缺口和"系统处于错误状态"的错误。对于这些类型的错误,受污染的值不会到达单个"危险接收点"。风险在于程序假设将永远为真的东西。
未来展望
OpenAI 期望安全工具生态系统持续改进:静态分析、模糊测试、运行时守卫和智能体工作流都将发挥作用。
Codex Security 希望擅长的部分是对安全团队成本最高的部分:将"这看起来可疑"转变为"这是真实的,这是它失败的方式,这是符合系统意图的修复方案"。
参考资源
总结
| 传统 SAST | Codex Security 方法 |
|---|---|
| 从预定义规则出发 | 从代码行为和意图出发 |
| 关注数据流追踪 | 关注约束传播和验证 |
| 标记潜在问题 | 验证并证明问题 |
| 可能产生大量误报 | 减少分类工作量 |
| 依赖静态近似 | 结合动态验证 |
Codex Security 代表了一种新的 AI 驱动安全分析范式:不是取代人类安全研究员,而是通过提供经过验证的、高置信度的问题发现来增强他们的能力,让他们将宝贵的时间花在真正需要人类判断的地方。
本文基于 OpenAI 官方博客文章翻译整理,如有出入请以原文为准。
OpenAI Codex Security 设计理念解析:为何弃用 SAST 报告作为起点
原文来源:OpenAI Blog
发布时间:2026年3月
关键词:AI 安全、代码安全、SAST、静态分析、Codex Security
引言
数十年来,静态应用安全测试(SAST)一直是安全团队扩展代码审查工作的最有效方式之一。然而,当 OpenAI 构建 Codex Security 时,他们做出了一个深思熟虑的设计选择:不通过导入静态分析报告并让智能体对其进行分类来启动流程。相反,Codex Security 的设计是从代码仓库本身出发——包括其架构、信任边界和预期行为——并在要求人工投入时间之前验证其发现的问题。
这个决策背后的原因很简单:最难发现的漏洞通常不是数据流问题。它们发生在代码看似执行了安全检查,但该检查实际上并不能保证系统所依赖的安全属性时。换句话说,挑战不仅仅是追踪数据如何在程序中流动——而是确定代码中的防御措施是否真正有效。
SAST 的核心局限:过度优化数据流分析
理想化的 SAST 模型
SAST 通常被描述为一个清晰的流水线:
识别不可信输入源 → 追踪数据在程序中的流动 → 标记数据未经净化到达敏感接收点的情况
这是一个优雅的模型,涵盖了大量真实存在的漏洞。
现实中的近似处理
然而在实际应用中,SAST 为了在大规模真实代码库中保持可处理性,不得不进行近似处理——尤其是在存在间接调用、动态分发、回调、反射和重度框架控制流的情况下。这些近似处理并不是对 SAST 的批评;而是在不执行代码的情况下推理代码的现实妥协。
更深层的问题
但这本身并不是 Codex Security 不以 SAST 报告为起点的原因。
更深层的问题是:即使成功地将数据源追踪到接收点,静态分析仍然必须回答一个决定漏洞是否真正存在的问题:
代码中的检查是否真正以系统假设的方式约束了值?
以一个常见模式为例:代码在渲染不可信内容之前调用类似 sanitize_html() 的函数。静态分析器可以看到净化器已运行,但它通常无法确定该净化器对于特定的渲染上下文、模板引擎、编码行为和下游转换是否真正充分。
这就是问题变得棘手的地方。问题不仅仅是数据是否到达接收点,而是代码中的检查是否真正以系统假设的方式约束了值。
换句话说:"代码调用了净化器" 与 "系统是安全的" 之间存在巨大差异。
真实案例:解码前的验证陷阱
场景描述
以下是一个在真实系统中频繁出现的模式:
一个 Web 应用接收 JSON 负载,提取 redirect_url,使用白名单正则表达式验证它,然后进行 URL 解码,并将结果传递给重定向处理器。
经典 SAST 报告视角
传统的源到接收点报告可以描述数据流:
不可信输入 → 正则检查 → URL 解码 → 重定向
真正的问题
但真正的问题不是检查是否存在,而是该检查在后续转换之后是否仍然以重定向处理器解释的方式约束了解码后的 URL。
如果正则表达式在解码之前运行,它是否真的约束了解码后的 URL?
回答这个问题意味着需要推理整个转换链:
- 正则表达式允许什么?
- 解码和规范化如何表现?
- URL 解析如何处理边缘情况?
- 重定向逻辑如何解析方案和权限?
CVE-2024-29041 实例
许多在实践中真正重要的漏洞看起来都是这样的:操作顺序错误、部分规范化、解析歧义、验证与解释之间的不匹配。数据流是可见的,弱点在于约束如何传播——或在转换链中如何失效传播。
这不仅仅是理论模式。在 CVE-2024-29041 中,Express 受到开放式重定向问题的影响,格式错误的 URL 可以绕过常见的白名单实现,因为重定向目标在被编码后又被解释的方式存在问题。数据流是直接的,更难的问题——也是决定漏洞是否存在的问题——是验证在转换链之后是否仍然成立。
Codex Security 的解决方案:从行为出发,然后验证
核心目标
Codex Security 围绕一个简单的目标构建:通过呈现带有更强证据的问题来减少分类工作。
技术实现
在产品中,这意味着使用仓库特定的上下文(包括威胁模型),并在呈现问题之前在隔离环境中验证高信号问题。
当 Codex Security 遇到看起来像是"验证"或"净化"的边界时,它不会将其视为复选框。它会尝试理解代码试图保证什么——然后尝试证伪该保证。
在实践中,这往往表现为以下方式的组合:
| 技术手段 | 描述 |
|---|---|
| 深度代码分析 | 像安全研究员一样阅读相关代码路径,结合完整的仓库上下文,寻找意图与实现之间的不匹配。模型会阅读注释,但不一定相信注释——所以在代码上方添加 //Halvar says: this is not a bug 并不能混淆它,如果确实存在漏洞的话。 |
| 问题切片 | 将问题简化为最小的可测试切片(例如,围绕单个输入的转换管道),以便在没有系统其余部分干扰的情况下进行推理。Codex Security 会提取微小的代码切片,然后为它们编写微模糊测试器。 |
| 跨转换约束推理 | 跨转换推理约束,而不是独立处理每个检查。在适当情况下,这可以形式化为可满足性问题。换句话说,系统为模型提供带有 z3-solver 的 Python 环境,模型擅长在需要时使用它,就像人类在处理特别复杂的输入约束问题时必须做的那样。这对于查看整数溢出或非标准架构上的类似错误特别有用。 |
| 沙箱验证 | 尽可能在沙箱验证环境中执行假设,以区分"这可能是个问题"和"这就是个问题"。没有什么比用调试模式编译的代码进行完整的端到端 PoC 更好的证明了。 |
关键转变
这是关键的转变:不是停留在"存在检查",而是系统推进到"不变式成立(或不成立),这里有证据"。模型会为该任务选择最佳工具。
为何不以 SAST 报告为种子?
合理的疑问
一个合理的反应是:为什么不两者兼顾? 从 SAST 报告开始,然后使用智能体进行更深入的推理。
在某些情况下,预计算的发现是有帮助的——特别是对于狭窄的、已知的错误类别。但对于一个旨在在上下文中发现和验证漏洞的智能体,从 SAST 报告开始会产生三种可预见的失败模式:
失败模式一:过早狭窄化
发现列表是工具已经查看过的地方的地图。如果你将其视为起点,你可能会使系统偏向于在同一区域使用相同的抽象花费不成比例的努力,错过不适合该工具世界观的漏洞类别。
失败模式二:隐含判断难以撤销
许多 SAST 发现编码了关于净化、验证或信任边界的假设。如果这些假设是错误的——或者只是不完整——将它们输入推理循环可能会使智能体从"调查"转变为"确认或驳回",这不是我们希望智能体做的事情。
失败模式三:难以评估推理系统
如果流水线从 SAST 输出开始,就很难将智能体通过自己的分析发现的内容与从其他工具继承的内容分开。如果我们想要准确测量系统的能力,这种分离很重要,而准确测量是系统随时间改进所必需的。
OpenAI 的选择
因此,OpenAI 将 Codex Security 构建为从安全研究开始的地方开始:从代码和系统的意图出发,使用验证来提高置信度门槛,然后再打断人类。
SAST 工具仍然非常重要
适用范围
SAST 工具在其设计的方面可以表现出色:
- ✅ 执行安全编码标准
- ✅ 捕获直接的源到接收点问题
- ✅ 以可预测的权衡大规模检测已知模式
- ✅ 作为纵深防御的强大组成部分
本文的限定范围
这篇文章的范围更窄:它是关于为什么一个旨在推理行为和验证发现的智能体不应该将其工作锚定在静态发现列表上。
超越源到接收点思维
还值得指出纯源到接收点思维的一个相关局限:并非每个漏洞都是数据流问题。许多真实的故障是状态和不变式问题——工作流绕过、授权缺口和"系统处于错误状态"的错误。对于这些类型的错误,受污染的值不会到达单个"危险接收点"。风险在于程序假设将永远为真的东西。
未来展望
OpenAI 期望安全工具生态系统持续改进:静态分析、模糊测试、运行时守卫和智能体工作流都将发挥作用。
Codex Security 希望擅长的部分是对安全团队成本最高的部分:将"这看起来可疑"转变为"这是真实的,这是它失败的方式,这是符合系统意图的修复方案"。
参考资源
总结
| 传统 SAST | Codex Security 方法 |
|---|---|
| 从预定义规则出发 | 从代码行为和意图出发 |
| 关注数据流追踪 | 关注约束传播和验证 |
| 标记潜在问题 | 验证并证明问题 |
| 可能产生大量误报 | 减少分类工作量 |
| 依赖静态近似 | 结合动态验证 |
Codex Security 代表了一种新的 AI 驱动安全分析范式:不是取代人类安全研究员,而是通过提供经过验证的、高置信度的问题发现来增强他们的能力,让他们将宝贵的时间花在真正需要人类判断的地方。
本文基于 OpenAI 官方博客文章翻译整理,如有出入请以原文为准。
收起阅读 »INFINI Labs 产品更新 | Easysearch 2.1.0 新增高性能 Rules 规则引擎插件,数据探索 Discover 等

INFINI Easysearch v2.1.0 发布:新增 Rules 规则引擎(百万级规则、复杂表达式、自动同步恢复)与 形态学分析插件(俄语/英语词形还原,提升搜索召回率);审计日志支持动态用户审计,UI 新增日志查看、配置及数据探索页面,运维更高效。INFINI Console、Gateway、Agent、Loadgen v1.30.3 统一基于 Framework 升级,优化本地磁盘队列数据消费。详情见 Release Notes。
Easysearch v2.1.0
INFINI Easysearch 是一个分布式的搜索型数据库,实现非结构化数据检索、全文检索、向量检索、地理位置信息查询、组合索引查询、多语种支持、聚合分析等。Easysearch 可以完美替代 Elasticsearch,同时添加和完善多项企业级功能。Easysearch 助您拥有简洁、高效、易用的搜索体验。
Easysearch 本次更新如下:
🚀 功能特性 (Features)
- 新增 Rules 规则引擎插件,提供高性能的规则匹配能力
- 支持 linux-x64 和 linux-aarch64 架构
- 支持 Ingest Pipeline 集成,数据写入时自动匹配规则并添加标签
- 支持复杂的规则表达式(AND/OR/NOT、near、正则、数值范围等)
- 支持百万级规则库,匹配性能是传统方案的上百倍。
- 支持多节点集群自动同步和广播编译规则
- 节点启动时自动同步缺失的规则库
- 规则库同步期间自动保护写入,确保规则完整性
- 本地元数据文件持久化记录编译历史,支持规则库文件丢失后的自动恢复
- 新增形态学分析插件(analysis-morphology),支持俄语和英语的形态分析
- 精准还原:基于词典将动词时态、名词格位等还原为标准原型(如 went → go)
- 词元扩展:同时索引原词与关联词根(如runner → runner, run),实现智能搜索匹配
- 高召回率:解决俄语复杂的变格与变位搜索难题,确保不同语法形式下均能精准检索
- 审计日志新增动态指定用户进行审计的功能
-
UI 插件新增如下能力
- 支持审计日志在线查看
- 支持审计日志模块动态配置
- 新增数据探索页面


✈️ 改进优化 (Improvements)
- 将“结巴”分词插件日志迁移至 Log4J,并降低周期性任务的日志级别以减少冗余
🐛 问题修复(Bug Fixes)
- 修复少量 UI 界面操作问题

Console v1.30.3
INFINI Console 是一款开源的非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管,企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。
Console 本次详细更新记录如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Console 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Console 受益。
🐛 问题修复(Bug Fixes)
- 修复 Agent 关联不成功问题
Gateway v1.30.3
INFINI Gateway 是一个开源的面向搜索场景的高性能数据网关,所有请求都经过网关处理后再转发到后端的搜索业务集群。基于 INFINI Gateway 可以实现索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。
Gateway 本次更新如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Gateway 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Gateway 受益。
Agent v1.30.3
INFINI Agent 负责采集和上传 Elasticsearch, Easysearch, Opensearch 集群的日志和指标信息,通过 INFINI Console 管理,支持主流操作系统和平台,安装包轻量且无任何外部依赖,可以快速方便地安装。
Agent 本次更新如下:
🚀 功能特性 (Features)
- 在 Kubernetes 环境下通过环境变量 http.port 探测 Easysearch 的 HTTP 端口
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Agent 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Agent 受益。
Loadgen v1.30.3
INFINI Loadgen 是一款开源的专为 Easysearch、Elasticsearch、OpenSearch 设计的轻量级性能测试工具。
Loadgen 本次更新如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Loadgen 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Loadgen 受益。
更多详情请查看以下各产品的 Release Notes 或联系我们的技术支持团队!
- Coco AI App
- Coco AI Server
- INFINI Easysearch
- INFINI Gateway
- INFINI Console
- INFINI Agent
- INFINI Loadgen
- INFINI Framework
期待反馈
欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。
下载地址: https://infinilabs.cn/download
邮件:hello@infini.ltd
电话:(+86) 400-139-9200
Discord:https://discord.gg/4tKTMkkvVX
也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群一起讨论交流。

关于极限科技(INFINI Labs)

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

INFINI Easysearch v2.1.0 发布:新增 Rules 规则引擎(百万级规则、复杂表达式、自动同步恢复)与 形态学分析插件(俄语/英语词形还原,提升搜索召回率);审计日志支持动态用户审计,UI 新增日志查看、配置及数据探索页面,运维更高效。INFINI Console、Gateway、Agent、Loadgen v1.30.3 统一基于 Framework 升级,优化本地磁盘队列数据消费。详情见 Release Notes。
Easysearch v2.1.0
INFINI Easysearch 是一个分布式的搜索型数据库,实现非结构化数据检索、全文检索、向量检索、地理位置信息查询、组合索引查询、多语种支持、聚合分析等。Easysearch 可以完美替代 Elasticsearch,同时添加和完善多项企业级功能。Easysearch 助您拥有简洁、高效、易用的搜索体验。
Easysearch 本次更新如下:
🚀 功能特性 (Features)
- 新增 Rules 规则引擎插件,提供高性能的规则匹配能力
- 支持 linux-x64 和 linux-aarch64 架构
- 支持 Ingest Pipeline 集成,数据写入时自动匹配规则并添加标签
- 支持复杂的规则表达式(AND/OR/NOT、near、正则、数值范围等)
- 支持百万级规则库,匹配性能是传统方案的上百倍。
- 支持多节点集群自动同步和广播编译规则
- 节点启动时自动同步缺失的规则库
- 规则库同步期间自动保护写入,确保规则完整性
- 本地元数据文件持久化记录编译历史,支持规则库文件丢失后的自动恢复
- 新增形态学分析插件(analysis-morphology),支持俄语和英语的形态分析
- 精准还原:基于词典将动词时态、名词格位等还原为标准原型(如 went → go)
- 词元扩展:同时索引原词与关联词根(如runner → runner, run),实现智能搜索匹配
- 高召回率:解决俄语复杂的变格与变位搜索难题,确保不同语法形式下均能精准检索
- 审计日志新增动态指定用户进行审计的功能
-
UI 插件新增如下能力
- 支持审计日志在线查看
- 支持审计日志模块动态配置
- 新增数据探索页面


✈️ 改进优化 (Improvements)
- 将“结巴”分词插件日志迁移至 Log4J,并降低周期性任务的日志级别以减少冗余
🐛 问题修复(Bug Fixes)
- 修复少量 UI 界面操作问题

Console v1.30.3
INFINI Console 是一款开源的非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管,企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。
Console 本次详细更新记录如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Console 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Console 受益。
🐛 问题修复(Bug Fixes)
- 修复 Agent 关联不成功问题
Gateway v1.30.3
INFINI Gateway 是一个开源的面向搜索场景的高性能数据网关,所有请求都经过网关处理后再转发到后端的搜索业务集群。基于 INFINI Gateway 可以实现索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。
Gateway 本次更新如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Gateway 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Gateway 受益。
Agent v1.30.3
INFINI Agent 负责采集和上传 Elasticsearch, Easysearch, Opensearch 集群的日志和指标信息,通过 INFINI Console 管理,支持主流操作系统和平台,安装包轻量且无任何外部依赖,可以快速方便地安装。
Agent 本次更新如下:
🚀 功能特性 (Features)
- 在 Kubernetes 环境下通过环境变量 http.port 探测 Easysearch 的 HTTP 端口
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Agent 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Agent 受益。
Loadgen v1.30.3
INFINI Loadgen 是一款开源的专为 Easysearch、Elasticsearch、OpenSearch 设计的轻量级性能测试工具。
Loadgen 本次更新如下:
✈️ 改进优化 (Improvements)
- 此版本包含了底层 Framework 的更新,解决了一些常见问题,并增强了整体稳定性和性能。虽然 Loadgen 本身没有直接的变更,但从 Framework 中继承的改进间接地使 Loadgen 受益。
更多详情请查看以下各产品的 Release Notes 或联系我们的技术支持团队!
- Coco AI App
- Coco AI Server
- INFINI Easysearch
- INFINI Gateway
- INFINI Console
- INFINI Agent
- INFINI Loadgen
- INFINI Framework
期待反馈
欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(https://github.com/infinilabs) 中的对应项目中提交 Feature Request 或提交 Bug。
下载地址: https://infinilabs.cn/download
邮件:hello@infini.ltd
电话:(+86) 400-139-9200
Discord:https://discord.gg/4tKTMkkvVX
也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群一起讨论交流。

关于极限科技(INFINI Labs)

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
收起阅读 »从模型到智能体:OpenAI Responses API 计算机环境完整解析
我们正处于 AI 使用的重大转折点——从擅长特定任务的模型向能够处理复杂工作流的智能体(Agent)转变。
传统上,通过提示词(Prompting)只能访问模型训练时获得的智能。然而,当给模型配备一个计算机环境后,它能实现更广泛的用例:运行服务、从 API 请求数据、生成电子表格或报告等更有用的产物。
但在构建智能体时,开发者面临诸多实际问题:
- 中间文件存放在哪里?
- 如何避免将大表格粘贴到提示词中?
- 如何在不造成安全噩梦的情况下给工作流提供网络访问?
- 如何处理超时和重试,而无需自己构建工作流系统?
OpenAI 的解决方案是:为 Responses API 配备计算机环境,让平台来可靠地执行真实世界的任务。核心架构:五大组件协同工作
OpenAI 的 Responses API 与 Shell 工具、托管容器工作空间相结合,旨在解决这些实际问题:
模型提出步骤和命令,平台在隔离环境中执行它们,该环境配备文件系统(用于输入输出)、可选的结构化存储(如 SQLite)和受限的网络访问。Shell 工具:智能体的"手"
Shell 工具让模型的能力呈指数级增长:它通过命令行与计算机交互,执行从文本搜索到发送 API 请求的广泛任务。
基于熟悉的 Unix 工具链,Shell 工具开箱即用就支持 grep、curl、awk 等命令。相比现有的代码解释器(仅执行 Python),Shell 工具支持更广泛的用例:运行 Go 或 Java 程序、启动 NodeJS 服务器、执行任意系统命令。智能体循环的编排机制
模型本身只能提出 Shell 命令,但命令如何执行?需要一个编排器(Orchestrator)来获取模型输出、调用工具,并将工具响应传回模型,形成循环直到任务完成。
Responses API 的执行流程:
- 组装上下文:用户提示词 + 历史对话状态 + 工具指令
- 模型决策:决定下一步动作(如选择 Shell 执行)
- 命令转发:Responses API 服务将命令转发到容器运行时
- 流式输出:Shell 输出流式返回,并反馈到下一次请求的上下文
- 结果检查:模型检查结果,发出后续命令或生成最终答案
- 循环直到完成
上下文压缩:长任务的关键
智能体循环的一个潜在问题是任务可能运行很长时间。长时间运行的任务会填满上下文窗口。
为了避免在智能体继续运行时丢失重要上下文,Responses API 添加了原生压缩(Compaction)功能:
OpenAI 的最新模型经过训练,能够分析先前的对话状态,并生成一个压缩项(Compaction Item),以加密的、token 高效的形式保留关键先前状态。
Codex 就依赖这一机制来维持长时间运行的编码任务和迭代工具执行,而不会降低质量。容器上下文:状态与资源管理
容器不仅是运行命令的地方,也是模型的工作上下文。在容器内部,模型可以读取文件、查询数据库、在网络安全策略控制下访问外部系统。网络安全访问
网络访问是智能体工作负载的重要组成部分,但给容器无限制的网络访问存在风险。OpenAI 的解决方案是 Sidecar Egress 代理:
所有出站网络请求流经集中式策略层,强制执行允许列表(Allowlist)、实施访问控制、保持流量可观察。Agent Skills:可复用的工作流构建块
Shell 命令很强大,但许多任务重复相同的多步骤模式。Agent Skills 将这些模式打包成可复用、可组合的工作流构建块。
一个 Skill 是一个文件夹包,包含 SKILL.md(元数据和指令)以及支持资源(API 规范、UI 资产等)。结语
"语言模型的意义不仅仅是生成文本、图像和音频——我们将继续发展我们的平台,使其更能够大规模处理复杂的真实世界任务。"
Responses API 计算机环境的推出,标志着 AI 从"对话工具"向"行动智能体"的关键转变。对于搜索和 AI 领域的从业者而言,这一架构设计提供了宝贵的参考:如何将大模型的推理能力与可靠的执行环境相结合,打造真正有用的自动化系统。
原文来源:OpenAI Engineering Blog
作者:Bo Xu, Danny Zhang, Rohit Arunachalam
发布日期:March 11, 2026
我们正处于 AI 使用的重大转折点——从擅长特定任务的模型向能够处理复杂工作流的智能体(Agent)转变。
传统上,通过提示词(Prompting)只能访问模型训练时获得的智能。然而,当给模型配备一个计算机环境后,它能实现更广泛的用例:运行服务、从 API 请求数据、生成电子表格或报告等更有用的产物。
但在构建智能体时,开发者面临诸多实际问题:
- 中间文件存放在哪里?
- 如何避免将大表格粘贴到提示词中?
- 如何在不造成安全噩梦的情况下给工作流提供网络访问?
- 如何处理超时和重试,而无需自己构建工作流系统?
OpenAI 的解决方案是:为 Responses API 配备计算机环境,让平台来可靠地执行真实世界的任务。核心架构:五大组件协同工作
OpenAI 的 Responses API 与 Shell 工具、托管容器工作空间相结合,旨在解决这些实际问题:
模型提出步骤和命令,平台在隔离环境中执行它们,该环境配备文件系统(用于输入输出)、可选的结构化存储(如 SQLite)和受限的网络访问。Shell 工具:智能体的"手"
Shell 工具让模型的能力呈指数级增长:它通过命令行与计算机交互,执行从文本搜索到发送 API 请求的广泛任务。
基于熟悉的 Unix 工具链,Shell 工具开箱即用就支持 grep、curl、awk 等命令。相比现有的代码解释器(仅执行 Python),Shell 工具支持更广泛的用例:运行 Go 或 Java 程序、启动 NodeJS 服务器、执行任意系统命令。智能体循环的编排机制
模型本身只能提出 Shell 命令,但命令如何执行?需要一个编排器(Orchestrator)来获取模型输出、调用工具,并将工具响应传回模型,形成循环直到任务完成。
Responses API 的执行流程:
- 组装上下文:用户提示词 + 历史对话状态 + 工具指令
- 模型决策:决定下一步动作(如选择 Shell 执行)
- 命令转发:Responses API 服务将命令转发到容器运行时
- 流式输出:Shell 输出流式返回,并反馈到下一次请求的上下文
- 结果检查:模型检查结果,发出后续命令或生成最终答案
- 循环直到完成
上下文压缩:长任务的关键
智能体循环的一个潜在问题是任务可能运行很长时间。长时间运行的任务会填满上下文窗口。
为了避免在智能体继续运行时丢失重要上下文,Responses API 添加了原生压缩(Compaction)功能:
OpenAI 的最新模型经过训练,能够分析先前的对话状态,并生成一个压缩项(Compaction Item),以加密的、token 高效的形式保留关键先前状态。
Codex 就依赖这一机制来维持长时间运行的编码任务和迭代工具执行,而不会降低质量。容器上下文:状态与资源管理
容器不仅是运行命令的地方,也是模型的工作上下文。在容器内部,模型可以读取文件、查询数据库、在网络安全策略控制下访问外部系统。网络安全访问
网络访问是智能体工作负载的重要组成部分,但给容器无限制的网络访问存在风险。OpenAI 的解决方案是 Sidecar Egress 代理:
所有出站网络请求流经集中式策略层,强制执行允许列表(Allowlist)、实施访问控制、保持流量可观察。Agent Skills:可复用的工作流构建块
Shell 命令很强大,但许多任务重复相同的多步骤模式。Agent Skills 将这些模式打包成可复用、可组合的工作流构建块。
一个 Skill 是一个文件夹包,包含 SKILL.md(元数据和指令)以及支持资源(API 规范、UI 资产等)。结语
"语言模型的意义不仅仅是生成文本、图像和音频——我们将继续发展我们的平台,使其更能够大规模处理复杂的真实世界任务。"
Responses API 计算机环境的推出,标志着 AI 从"对话工具"向"行动智能体"的关键转变。对于搜索和 AI 领域的从业者而言,这一架构设计提供了宝贵的参考:如何将大模型的推理能力与可靠的执行环境相结合,打造真正有用的自动化系统。
原文来源:OpenAI Engineering Blog
作者:Bo Xu, Danny Zhang, Rohit Arunachalam
发布日期:March 11, 2026 收起阅读 »
日本乐天集团用 Codex 将问题修复速度提升一倍
日本乐天集团用 Codex 将问题修复速度提升一倍
原文来源:OpenAI Blog
发布时间:2025年3月
引言
乐天(Rakuten)是日本最大的电商平台之一,业务涵盖电子商务、金融科技和移动通信,拥有 30,000 名全球员工。在这样庞大而复杂的产品生态系统中,速度和可靠性都是至关重要的。
乐天 AI for Business 总经理 Yusuke Kaji 在过去一年里一直致力于将 AI Agent 工作流深度整合到团队的软件规划、构建和验证流程中。OpenAI Codex 已成为乐天工程栈的核心组成部分,特别是在需要在不牺牲安全性的前提下提升速度的场景中。
核心成果:MTTR 降低 50%
在过去一年中,乐天工程师在运维和软件交付流程中广泛使用 Codex,取得了显著成效:
| 指标 | 改进效果 |
|---|---|
| 平均恢复时间(MTTR) | 降低约 50% |
| 项目交付周期 | 从季度级压缩到周级 |
| 代码审查效率 | CI/CD 中自动完成 |
| 漏洞检查 | 自动化安全检测 |
"我们不只是关心快速生成代码,我们更关心安全地交付。没有安全性的速度不是成功。" —— Yusuke Kaji
三大核心战略
乐天的 AI 战略围绕三个明确的目标展开:
1. 构建更快("Speed!! Speed!! Speed!!")
在运维工作流中使用 Codex,包括基于 KQL(Azure 日志查询语言)的监控和诊断,加速根因分析和修复,将 MTTR 压缩高达 50%。
2. 构建更安全("Get things done")
在 CI/CD 流程中调用 Codex 进行代码审查和漏洞检查,自动应用内部标准,让团队能在有防护栏的情况下快速交付。
3. 更智能地运营("AI-nization")
Codex 推动更大规模、更模糊的项目从规范走向可工作的实现,减少对完美定义需求的依赖,实现更自主的执行,最终将季度级的工作压缩到周级。
实战案例
案例一:压缩事故响应时间
乐天的工程师使用 KQL 监控 API 和分析信号。Codex 与这些工作流协同工作,帮助识别根因并提出修复建议,缩短从告警到解决的时间。
从站点可靠性工程(SRE)的角度来看,这缩短了从检测到修复的路径。工程师不再需要手动拼凑查询、日志和补丁,而是可以专注于验证和部署修复方案。
结果:乐天估计这种方法可以将 MTTR 降低约 50%——换句话说,当出现问题时,修复速度快了一倍。
案例二:CI/CD 中的自动化安全检查
随着交付速度加快,审查和部署可能成为瓶颈。乐天通过将 Codex 直接集成到 CI/CD 管道中来解决这个问题。
Codex 在变更到达生产环境之前进行代码审查和漏洞检查。乐天的做法是将内部编码原则和标准输入到这些工作流中,确保审查符合公司期望。
"我们将内部编码原则提供给 Codex,它使用相同的原则来审查代码是否符合我们的标准。" —— Yusuke Kaji
结果:安全检查一致且自动地进行,使团队能够在不降低标准的情况下更快前进。
案例三:从单条规范到全栈实现
乐天的第三个优先事项——AI-nization——专注于自主性。Codex 不仅用于审查和维护,还用于端到端执行更大规模、更模糊的项目。
Codex 可以从部分需求出发推进工作并生成可用的交付物,而不需要完美定义的规范。
"最新的 Codex 模型能够读懂言外之意,即使需求没有完美定义,它也能理解我们要构建什么。" —— Yusuke Kaji
具体案例:构建一个现有基于 Web 的 AI Agent 服务的移动应用版本。Codex 实现了完整的规范,包括:
- 后端:Python/FastAPI
- 前端:Swift/SwiftUI iOS 应用
- API:所有后端接口
整个过程无需逐步人工指导,Codex 将项目开发时间从一个季度缩短到几周。
工程师角色的转变
随着 Codex 承担更多代码生成工作,乐天正在将工程师的角色从编写代码转变为:
- 编写更清晰的规范
- 根据可衡量的标准验证输出
"我们的角色不再是检查每一行代码,我们的角色是清晰地定义我们想要什么,并建立验证它的方法。" —— Yusuke Kaji
乐天通过在全工程、产品和非技术团队中开展实践研讨会来支持这一转变——使 Codex 在帮助团队更快交付、更安全运营和在整个组织内扩展自主开发方面发挥核心作用。
总结
乐天集团的实践展示了 AI 编码助手在企业级场景中的巨大潜力:
- 速度:事故修复时间缩短 50%
- 安全:CI/CD 中自动化的代码审查和漏洞检测
- 自主性:从模糊需求到完整实现,开发周期从季度缩短到周
- 角色转变:工程师从编码者变为规范制定者和验证者
对于正在考虑引入 AI 编码助手的企业来说,乐天的经验提供了宝贵的参考:不仅要关注代码生成速度,更要建立相应的安全检查和验证机制,让 AI 成为提升整体工程效能的可靠伙伴。
相关链接
日本乐天集团用 Codex 将问题修复速度提升一倍
原文来源:OpenAI Blog
发布时间:2025年3月
引言
乐天(Rakuten)是日本最大的电商平台之一,业务涵盖电子商务、金融科技和移动通信,拥有 30,000 名全球员工。在这样庞大而复杂的产品生态系统中,速度和可靠性都是至关重要的。
乐天 AI for Business 总经理 Yusuke Kaji 在过去一年里一直致力于将 AI Agent 工作流深度整合到团队的软件规划、构建和验证流程中。OpenAI Codex 已成为乐天工程栈的核心组成部分,特别是在需要在不牺牲安全性的前提下提升速度的场景中。
核心成果:MTTR 降低 50%
在过去一年中,乐天工程师在运维和软件交付流程中广泛使用 Codex,取得了显著成效:
| 指标 | 改进效果 |
|---|---|
| 平均恢复时间(MTTR) | 降低约 50% |
| 项目交付周期 | 从季度级压缩到周级 |
| 代码审查效率 | CI/CD 中自动完成 |
| 漏洞检查 | 自动化安全检测 |
"我们不只是关心快速生成代码,我们更关心安全地交付。没有安全性的速度不是成功。" —— Yusuke Kaji
三大核心战略
乐天的 AI 战略围绕三个明确的目标展开:
1. 构建更快("Speed!! Speed!! Speed!!")
在运维工作流中使用 Codex,包括基于 KQL(Azure 日志查询语言)的监控和诊断,加速根因分析和修复,将 MTTR 压缩高达 50%。
2. 构建更安全("Get things done")
在 CI/CD 流程中调用 Codex 进行代码审查和漏洞检查,自动应用内部标准,让团队能在有防护栏的情况下快速交付。
3. 更智能地运营("AI-nization")
Codex 推动更大规模、更模糊的项目从规范走向可工作的实现,减少对完美定义需求的依赖,实现更自主的执行,最终将季度级的工作压缩到周级。
实战案例
案例一:压缩事故响应时间
乐天的工程师使用 KQL 监控 API 和分析信号。Codex 与这些工作流协同工作,帮助识别根因并提出修复建议,缩短从告警到解决的时间。
从站点可靠性工程(SRE)的角度来看,这缩短了从检测到修复的路径。工程师不再需要手动拼凑查询、日志和补丁,而是可以专注于验证和部署修复方案。
结果:乐天估计这种方法可以将 MTTR 降低约 50%——换句话说,当出现问题时,修复速度快了一倍。
案例二:CI/CD 中的自动化安全检查
随着交付速度加快,审查和部署可能成为瓶颈。乐天通过将 Codex 直接集成到 CI/CD 管道中来解决这个问题。
Codex 在变更到达生产环境之前进行代码审查和漏洞检查。乐天的做法是将内部编码原则和标准输入到这些工作流中,确保审查符合公司期望。
"我们将内部编码原则提供给 Codex,它使用相同的原则来审查代码是否符合我们的标准。" —— Yusuke Kaji
结果:安全检查一致且自动地进行,使团队能够在不降低标准的情况下更快前进。
案例三:从单条规范到全栈实现
乐天的第三个优先事项——AI-nization——专注于自主性。Codex 不仅用于审查和维护,还用于端到端执行更大规模、更模糊的项目。
Codex 可以从部分需求出发推进工作并生成可用的交付物,而不需要完美定义的规范。
"最新的 Codex 模型能够读懂言外之意,即使需求没有完美定义,它也能理解我们要构建什么。" —— Yusuke Kaji
具体案例:构建一个现有基于 Web 的 AI Agent 服务的移动应用版本。Codex 实现了完整的规范,包括:
- 后端:Python/FastAPI
- 前端:Swift/SwiftUI iOS 应用
- API:所有后端接口
整个过程无需逐步人工指导,Codex 将项目开发时间从一个季度缩短到几周。
工程师角色的转变
随着 Codex 承担更多代码生成工作,乐天正在将工程师的角色从编写代码转变为:
- 编写更清晰的规范
- 根据可衡量的标准验证输出
"我们的角色不再是检查每一行代码,我们的角色是清晰地定义我们想要什么,并建立验证它的方法。" —— Yusuke Kaji
乐天通过在全工程、产品和非技术团队中开展实践研讨会来支持这一转变——使 Codex 在帮助团队更快交付、更安全运营和在整个组织内扩展自主开发方面发挥核心作用。
总结
乐天集团的实践展示了 AI 编码助手在企业级场景中的巨大潜力:
- 速度:事故修复时间缩短 50%
- 安全:CI/CD 中自动化的代码审查和漏洞检测
- 自主性:从模糊需求到完整实现,开发周期从季度缩短到周
- 角色转变:工程师从编码者变为规范制定者和验证者
对于正在考虑引入 AI 编码助手的企业来说,乐天的经验提供了宝贵的参考:不仅要关注代码生成速度,更要建立相应的安全检查和验证机制,让 AI 成为提升整体工程效能的可靠伙伴。
相关链接
收起阅读 »OpenAI 发布 AI Agent 安全防护指南:如何抵御提示词注入攻击
OpenAI 最新发布的安全博客深入探讨了这一问题的演变,并提出了一套基于"社会工程学"视角的防御框架。提示词注入攻击的演变
早期的提示词注入攻击相对简单直接。攻击者可能在网页中插入恶意指令。然而,随着模型智能水平的提升,现实中的提示词注入攻击正在向更复杂的形态演进——它们越来越像社会工程学攻击。新的防御范式
OpenAI 提出了一个关键认知转变:与其追求完美识别所有恶意输入,不如设计系统使得即使操纵成功,其影响也能被控制在可接受范围内。Safe URL 机制
针对诱导助手泄露秘密信息的攻击,OpenAI 开发了 Safe URL 机制:检测可疑传输、向用户展示信息并请求确认、必要时阻断传输。给开发者的建议
- 采用"人类代理"思维
- 分层防御
- 最小权限原则
- 关键操作需用户确认
原文来源:OpenAI Security Blog
OpenAI 最新发布的安全博客深入探讨了这一问题的演变,并提出了一套基于"社会工程学"视角的防御框架。提示词注入攻击的演变
早期的提示词注入攻击相对简单直接。攻击者可能在网页中插入恶意指令。然而,随着模型智能水平的提升,现实中的提示词注入攻击正在向更复杂的形态演进——它们越来越像社会工程学攻击。新的防御范式
OpenAI 提出了一个关键认知转变:与其追求完美识别所有恶意输入,不如设计系统使得即使操纵成功,其影响也能被控制在可接受范围内。Safe URL 机制
针对诱导助手泄露秘密信息的攻击,OpenAI 开发了 Safe URL 机制:检测可疑传输、向用户展示信息并请求确认、必要时阻断传输。给开发者的建议
- 采用"人类代理"思维
- 分层防御
- 最小权限原则
- 关键操作需用户确认
原文来源:OpenAI Security Blog 收起阅读 »
Easysearch ZSTD 基准测试:高压缩率下实现近 5 倍查询吞吐
在搜索引擎领域,压缩算法的选择一直是一个经典的权衡难题:
- 选择高压缩率(如
best_compression/ DEFLATE),磁盘省了,但查询解压慢; - 选择高速编码(如默认 LZ4),查询快了,但磁盘占用大。
Easysearch 引入了基于 JDK 21 FFM(Foreign Function & Memory API) 直连本地 ZSTD 动态库的加速方案,试图打破这一困局。为了验证效果,我们在完全对等的环境下,对 Easysearch(ZSTD)和 Elasticsearch 7.10.2(best_compression)进行了一次严格的查询吞吐对比测试。
结果令人振奋——即使在系统明显背景负载下,Easysearch 也没有因为高压缩而变慢,反而在查询吞吐上实现了近 5 倍提升。
测试环境
为确保对比公平,两套集群的硬件资源、JVM 配置、数据规模、索引结构完全对齐:
| 配置项 | Easysearch | Elasticsearch 7.10.2 |
|---|---|---|
| 节点数 | 3 | 3 |
| JVM 堆内存 | 12GB × 3 | 12GB × 3 |
| node.processors | 16 × 3 | 16 × 3 |
| 文档数 | 10,000,000 | 10,000,000 |
| 主分片 / 副本 | 3 / 0 | 3 / 0 |
| 数据类型 | nginx 访问日志 | nginx 访问日志 |
| 字段数 | 17 | 17 |
| mapping | 完全一致(MD5 校验) | 完全一致(MD5 校验) |
| Stored fields 压缩模式 | ZSTD (JDK21 FFM/native, level=3) | best_compression (DEFLATE) |
压缩机制对比:
best_compression映射到 LuceneBEST_COMPRESSION;在 stored fields 路径上,压缩实现为DeflateWithPresetDictCompressionMode,内部使用java.util.zip.Deflater/Inflater(即 DEFLATE)。 Easysearch ZSTD 当前走 JDK 21 FFM 绑定本地 zstd 库(java.lang.foreign);index.compression.zstd.jni=true为当前这套实现的启用方式。
查询模型:JMeter 随机 match 查询,随机命中 service_name、method、error_code、url 四个字段,每次返回 10 条文档。
压测起始负载(_cat/nodes 快照):
| 负载项 | Easysearch run | Elasticsearch run |
|---|---|---|
| load_1m | 29.74 | 25.27 |
| load_5m | 27.10 | 28.15 |
| load_15m | 26.09 | 36.96 |
| ram.percent | 99 | 99 |
说明:压测并非在空闲机上进行,而是在已有明显背景负载的生产式环境下完成。
核心结果
1. 查询吞吐量(QPS):在高背景负载下,Easysearch 仍领先 372%
稳态阶段(3 轮平均),Easysearch 的查询吞吐是 Elasticsearch 的 4.7 倍:
| 指标 | Elasticsearch (DEFLATE) | Easysearch (ZSTD) | 差异 |
|---|---|---|---|
| 稳态 QPS | 532.8 | 2,518.0 | +372.6% |
| 平均响应时间 | 779.0 ms | 164.3 ms | -78.9% |
| 稳态 CPU 占用(系统总占用) | 92.43% | 89.59% | 仅作背景参考 |
注:压测期间服务器存在明显背景负载(其他进程占用较高),该 CPU 指标是系统总占用,不等价于“仅搜索进程”的纯业务 CPU 对比。
在系统总 CPU 均接近 90% 的背景下,Easysearch 仍达到接近 5 倍吞吐。
查询吞吐量 QPS 对比(稳态均值)
2. 响应时间:从近 1 秒降到 164 毫秒
平均响应时间对比(ms,越低越好)
用户体感上,这意味着:同样一个搜索请求,Elasticsearch 还在等解压,Easysearch 已经把结果送到了客户端。
3. 各轮次详细数据
各轮次 QPS 趋势
各轮次平均响应时间趋势(ms)
4. CPU 使用效率:每 1% CPU 产出的 QPS 差距惊人
单看 CPU 占用率,两者似乎差不多(89.59% vs 92.43%)。但如果换一个视角——每消耗 1% CPU 能产出多少 QPS,差距就一目了然了:
| 指标 | Elasticsearch (DEFLATE) | Easysearch (ZSTD) | 倍数 |
|---|---|---|---|
| 稳态 QPS | 532.8 | 2,518.0 | — |
| 稳态 CPU | 92.43% | 89.59% | — |
| QPS / 1% CPU | 5.76 | 28.10 | 4.88× |
CPU 使用效率:每 1% CPU 产出的 QPS
这意味着什么?
- ES 使用 DEFLATE(best_compression)时,解压路径更可能成为 CPU 热点;结合 ES 的高 CPU(92.43%)与较低 QPS,说明单位 CPU 产出偏低;
- Easysearch 使用 ZSTD(JDK21 FFM/native)时,解压开销更小;在相近 CPU 水位(89.59%)下获得更高 QPS,单位 CPU 产出明显更高。
换句话说,当前这组实测更支持“ZSTD 在该查询模型下单位 CPU 产出更高”。
5. 存储空间:ZSTD 并未膨胀
| 索引 | 压缩算法 | 磁盘占用 |
|---|---|---|
| nginx_best_10m (ES) | best_compression (DEFLATE) | 1.8 GB |
| nginx_zstd3 (Easysearch) | ZSTD (level=3, JDK21 FFM/native) | 1.9 GB |
两者存储空间接近。若按 _cat/indices 的 1 位小数展示是 1.8GB vs 1.9GB;若按 _stats/store 字节值计算,差异约 2.5%。因此可以认为 ZSTD 在 level=3 下与 DEFLATE best_compression 压缩率接近。
磁盘占用对比(GB)
为什么 ZSTD 能做到"又小又快"?
传统认知中,压缩率和解压速度是一对矛盾。但 ZSTD 算法天然具备非对称压缩的特性:
压缩算法特性对比
在搜索引擎场景中,查询会触发存储字段(_source)读取与解压路径,命中文件系统页缓存时,可能不发生实际磁盘 I/O,但仍需进行 _source 解压。
当查询涉及较多 _source 读取时:
- DEFLATE 的解压开销成为 CPU 瓶颈,拖慢了整体吞吐;
- ZSTD(JDK21 FFM/native) 的解压速度在该场景下明显更优,单次请求的解压 CPU 成本更低,从而释放出更多 CPU 资源用于并发查询处理。
这就是为什么 Easysearch 在 CPU 占用更低(89.59% vs 92.43%)的情况下,反而能处理近 5 倍的查询量。
一张图总结
Easysearch ZSTD vs Elasticsearch DEFLATE — 全维度对比
结论
Easysearch 的 ZSTD 压缩方案证明了一个事实:即使在高背景负载下,高压缩率和高查询性能依然可以兼得。
在 1000 万条 nginx 日志、且系统存在明显背景负载的实测中:
- 查询吞吐提升 372%,从 533 QPS 跃升至 2518 QPS
- 平均响应时间下降 79%,从 779ms 降至 164ms
- CPU 使用效率提升 388%,每 1% CPU 产出 28.10 QPS vs 5.76 QPS
- CPU 占用绝对值下降 2.84 个百分点(相对下降约 3.07%)
- 磁盘占用与 DEFLATE best_compression 接近(按字节口径约 +2.5%)
对于日志分析、可观测性、安全审计等需要兼顾存储成本和查询性能的场景,Easysearch ZSTD 是一个不需要妥协的选择。
ZSTD 使用方法
1) 新建索引时启用 ZSTD
curl -k -u 'admin:<password>' -X PUT 'https://127.0.0.1:9200/<index-name>' \
-H 'Content-Type: application/json' -d '{
"settings": {
"index.codec": "ZSTD",
"index.compression.zstd.jni": true
}
}'
可选参数:
index.compression.zstd.level(默认3)
说明:
index.compression.zstd.dict固定为true,无需单独配置index.compression.zstd.dict不作为独立开关来调整
2) 老索引切换到 ZSTD(推荐 reindex)
index.codec 是静态设置(打开状态不可动态改;可在关闭索引后调整)。
index.compression.zstd.jni 是 final 设置(关闭索引后也不可修改)。
如果老索引要启用 index.compression.zstd.jni=true,建议新建目标索引后 reindex 迁移:
如果对已有索引执行 PUT /<index-name>/_settings 直接修改,会报错:final <index-name> setting [index.compression.zstd.jni], not updateable。
# 先创建目标索引(启用 ZSTD)
curl -k -u 'admin:<password>' -X PUT 'https://127.0.0.1:9200/<target-index>' \
-H 'Content-Type: application/json' -d '{
"settings": {
"index.codec": "ZSTD",
"index.compression.zstd.jni": true
}
}'
# 再迁移数据
curl -k -u 'admin:<password>' -X POST 'https://127.0.0.1:9200/_reindex' \
-H 'Content-Type: application/json' -d '{
"source": { "index": "<source-index>" },
"dest": { "index": "<target-index>" }
}'
3) 校验是否生效
curl -k -u 'admin:<password>' \
'https://127.0.0.1:9200/<index-name>/_settings?include_defaults=true&pretty'
重点确认:
index.codec = ZSTDindex.compression.zstd.jni = true
关于 Easysearch

INFINI Easysearch 是一个分布式的搜索型数据库,实现非结构化数据检索、全文检索、向量检索、地理位置信息查询、组合索引查询、多语种支持、聚合分析等。Easysearch 可以完美替代 Elasticsearch,同时添加和完善多项企业级功能。Easysearch 助您拥有简洁、高效、易用的搜索体验。
官网文档:https://docs.infinilabs.com/easysearch
作者:张磊,极限科技(INFINI Labs)搜索引擎研发负责人,对 Elasticsearch 和 Lucene 源码比较熟悉,目前主要负责公司的 Easysearch 产品的研发以及客户服务工作。
相关文章:
在搜索引擎领域,压缩算法的选择一直是一个经典的权衡难题:
- 选择高压缩率(如
best_compression/ DEFLATE),磁盘省了,但查询解压慢; - 选择高速编码(如默认 LZ4),查询快了,但磁盘占用大。
Easysearch 引入了基于 JDK 21 FFM(Foreign Function & Memory API) 直连本地 ZSTD 动态库的加速方案,试图打破这一困局。为了验证效果,我们在完全对等的环境下,对 Easysearch(ZSTD)和 Elasticsearch 7.10.2(best_compression)进行了一次严格的查询吞吐对比测试。
结果令人振奋——即使在系统明显背景负载下,Easysearch 也没有因为高压缩而变慢,反而在查询吞吐上实现了近 5 倍提升。
测试环境
为确保对比公平,两套集群的硬件资源、JVM 配置、数据规模、索引结构完全对齐:
| 配置项 | Easysearch | Elasticsearch 7.10.2 |
|---|---|---|
| 节点数 | 3 | 3 |
| JVM 堆内存 | 12GB × 3 | 12GB × 3 |
| node.processors | 16 × 3 | 16 × 3 |
| 文档数 | 10,000,000 | 10,000,000 |
| 主分片 / 副本 | 3 / 0 | 3 / 0 |
| 数据类型 | nginx 访问日志 | nginx 访问日志 |
| 字段数 | 17 | 17 |
| mapping | 完全一致(MD5 校验) | 完全一致(MD5 校验) |
| Stored fields 压缩模式 | ZSTD (JDK21 FFM/native, level=3) | best_compression (DEFLATE) |
压缩机制对比:
best_compression映射到 LuceneBEST_COMPRESSION;在 stored fields 路径上,压缩实现为DeflateWithPresetDictCompressionMode,内部使用java.util.zip.Deflater/Inflater(即 DEFLATE)。 Easysearch ZSTD 当前走 JDK 21 FFM 绑定本地 zstd 库(java.lang.foreign);index.compression.zstd.jni=true为当前这套实现的启用方式。
查询模型:JMeter 随机 match 查询,随机命中 service_name、method、error_code、url 四个字段,每次返回 10 条文档。
压测起始负载(_cat/nodes 快照):
| 负载项 | Easysearch run | Elasticsearch run |
|---|---|---|
| load_1m | 29.74 | 25.27 |
| load_5m | 27.10 | 28.15 |
| load_15m | 26.09 | 36.96 |
| ram.percent | 99 | 99 |
说明:压测并非在空闲机上进行,而是在已有明显背景负载的生产式环境下完成。
核心结果
1. 查询吞吐量(QPS):在高背景负载下,Easysearch 仍领先 372%
稳态阶段(3 轮平均),Easysearch 的查询吞吐是 Elasticsearch 的 4.7 倍:
| 指标 | Elasticsearch (DEFLATE) | Easysearch (ZSTD) | 差异 |
|---|---|---|---|
| 稳态 QPS | 532.8 | 2,518.0 | +372.6% |
| 平均响应时间 | 779.0 ms | 164.3 ms | -78.9% |
| 稳态 CPU 占用(系统总占用) | 92.43% | 89.59% | 仅作背景参考 |
注:压测期间服务器存在明显背景负载(其他进程占用较高),该 CPU 指标是系统总占用,不等价于“仅搜索进程”的纯业务 CPU 对比。
在系统总 CPU 均接近 90% 的背景下,Easysearch 仍达到接近 5 倍吞吐。
查询吞吐量 QPS 对比(稳态均值)
2. 响应时间:从近 1 秒降到 164 毫秒
平均响应时间对比(ms,越低越好)
用户体感上,这意味着:同样一个搜索请求,Elasticsearch 还在等解压,Easysearch 已经把结果送到了客户端。
3. 各轮次详细数据
各轮次 QPS 趋势
各轮次平均响应时间趋势(ms)
4. CPU 使用效率:每 1% CPU 产出的 QPS 差距惊人
单看 CPU 占用率,两者似乎差不多(89.59% vs 92.43%)。但如果换一个视角——每消耗 1% CPU 能产出多少 QPS,差距就一目了然了:
| 指标 | Elasticsearch (DEFLATE) | Easysearch (ZSTD) | 倍数 |
|---|---|---|---|
| 稳态 QPS | 532.8 | 2,518.0 | — |
| 稳态 CPU | 92.43% | 89.59% | — |
| QPS / 1% CPU | 5.76 | 28.10 | 4.88× |
CPU 使用效率:每 1% CPU 产出的 QPS
这意味着什么?
- ES 使用 DEFLATE(best_compression)时,解压路径更可能成为 CPU 热点;结合 ES 的高 CPU(92.43%)与较低 QPS,说明单位 CPU 产出偏低;
- Easysearch 使用 ZSTD(JDK21 FFM/native)时,解压开销更小;在相近 CPU 水位(89.59%)下获得更高 QPS,单位 CPU 产出明显更高。
换句话说,当前这组实测更支持“ZSTD 在该查询模型下单位 CPU 产出更高”。
5. 存储空间:ZSTD 并未膨胀
| 索引 | 压缩算法 | 磁盘占用 |
|---|---|---|
| nginx_best_10m (ES) | best_compression (DEFLATE) | 1.8 GB |
| nginx_zstd3 (Easysearch) | ZSTD (level=3, JDK21 FFM/native) | 1.9 GB |
两者存储空间接近。若按 _cat/indices 的 1 位小数展示是 1.8GB vs 1.9GB;若按 _stats/store 字节值计算,差异约 2.5%。因此可以认为 ZSTD 在 level=3 下与 DEFLATE best_compression 压缩率接近。
磁盘占用对比(GB)
为什么 ZSTD 能做到"又小又快"?
传统认知中,压缩率和解压速度是一对矛盾。但 ZSTD 算法天然具备非对称压缩的特性:
压缩算法特性对比
在搜索引擎场景中,查询会触发存储字段(_source)读取与解压路径,命中文件系统页缓存时,可能不发生实际磁盘 I/O,但仍需进行 _source 解压。
当查询涉及较多 _source 读取时:
- DEFLATE 的解压开销成为 CPU 瓶颈,拖慢了整体吞吐;
- ZSTD(JDK21 FFM/native) 的解压速度在该场景下明显更优,单次请求的解压 CPU 成本更低,从而释放出更多 CPU 资源用于并发查询处理。
这就是为什么 Easysearch 在 CPU 占用更低(89.59% vs 92.43%)的情况下,反而能处理近 5 倍的查询量。
一张图总结
Easysearch ZSTD vs Elasticsearch DEFLATE — 全维度对比
结论
Easysearch 的 ZSTD 压缩方案证明了一个事实:即使在高背景负载下,高压缩率和高查询性能依然可以兼得。
在 1000 万条 nginx 日志、且系统存在明显背景负载的实测中:
- 查询吞吐提升 372%,从 533 QPS 跃升至 2518 QPS
- 平均响应时间下降 79%,从 779ms 降至 164ms
- CPU 使用效率提升 388%,每 1% CPU 产出 28.10 QPS vs 5.76 QPS
- CPU 占用绝对值下降 2.84 个百分点(相对下降约 3.07%)
- 磁盘占用与 DEFLATE best_compression 接近(按字节口径约 +2.5%)
对于日志分析、可观测性、安全审计等需要兼顾存储成本和查询性能的场景,Easysearch ZSTD 是一个不需要妥协的选择。
ZSTD 使用方法
1) 新建索引时启用 ZSTD
curl -k -u 'admin:<password>' -X PUT 'https://127.0.0.1:9200/<index-name>' \
-H 'Content-Type: application/json' -d '{
"settings": {
"index.codec": "ZSTD",
"index.compression.zstd.jni": true
}
}'
可选参数:
index.compression.zstd.level(默认3)
说明:
index.compression.zstd.dict固定为true,无需单独配置index.compression.zstd.dict不作为独立开关来调整
2) 老索引切换到 ZSTD(推荐 reindex)
index.codec 是静态设置(打开状态不可动态改;可在关闭索引后调整)。
index.compression.zstd.jni 是 final 设置(关闭索引后也不可修改)。
如果老索引要启用 index.compression.zstd.jni=true,建议新建目标索引后 reindex 迁移:
如果对已有索引执行 PUT /<index-name>/_settings 直接修改,会报错:final <index-name> setting [index.compression.zstd.jni], not updateable。
# 先创建目标索引(启用 ZSTD)
curl -k -u 'admin:<password>' -X PUT 'https://127.0.0.1:9200/<target-index>' \
-H 'Content-Type: application/json' -d '{
"settings": {
"index.codec": "ZSTD",
"index.compression.zstd.jni": true
}
}'
# 再迁移数据
curl -k -u 'admin:<password>' -X POST 'https://127.0.0.1:9200/_reindex' \
-H 'Content-Type: application/json' -d '{
"source": { "index": "<source-index>" },
"dest": { "index": "<target-index>" }
}'
3) 校验是否生效
curl -k -u 'admin:<password>' \
'https://127.0.0.1:9200/<index-name>/_settings?include_defaults=true&pretty'
重点确认:
index.codec = ZSTDindex.compression.zstd.jni = true
关于 Easysearch

INFINI Easysearch 是一个分布式的搜索型数据库,实现非结构化数据检索、全文检索、向量检索、地理位置信息查询、组合索引查询、多语种支持、聚合分析等。Easysearch 可以完美替代 Elasticsearch,同时添加和完善多项企业级功能。Easysearch 助您拥有简洁、高效、易用的搜索体验。
官网文档:https://docs.infinilabs.com/easysearch
作者:张磊,极限科技(INFINI Labs)搜索引擎研发负责人,对 Elasticsearch 和 Lucene 源码比较熟悉,目前主要负责公司的 Easysearch 产品的研发以及客户服务工作。
相关文章:
- Easysearch 2.0.0 性能测试
- Easysearch 压缩模式深度比较:ZSTD + source_reuse 的优势分析
- Easysearch 压缩功能的显著提升:从 8.7GB 到 1.4GB
1573 个 Claude Code 会话分析:AI 编程代理的真实使用数据
AI 编程工具的使用数据一直是个黑盒——我们知道很多人在用,但具体用得怎么样?哪些场景效果好?什么情况下会放弃?最近,一个团队开源了他们的分析工具 Rudel,并基于 1573 个真实的 Claude Code 会话数据,给出了一些有趣的洞察。
数据集概况
这个数据集来自一个 6 人团队(4 名工程师、1 名数据/业务人员、1 名设计工程师)在过去 3 个月的真实使用记录:
- 总会话数:1,573 个
- 总 Token 数:1500 万+
- 总交互数:27 万+
- 会话类型:40% 大型遗留项目、50% 新项目、10% 非编码任务
核心发现
1. Skills 使用率极低:仅 4%
Claude Code 的 Skills 功能(预定义的指令模板)使用率只有 4%。这引发了一个问题:是功能设计有问题,还是用户根本不知道它的存在?
从 Hacker News 的讨论来看,可能两者都有:
- Skills 的可发现性较差
- 用户更倾向于自然语言提示
- 即使设置了 Skills,Claude 也不一定会调用
好消息是,Claude 4.6 版本在这方面有明显改进。
2. 26% 的会话在 60 秒内被放弃
超过四分之一的会话在开始后的第一分钟内就被用户放弃。这个数字揭示了一个关键问题:初始提示与意图匹配的重要性。
正如 HN 用户 robutsume 分析的:
"这不是代理的问题,而是提示与意图不匹配的问题。人类在一次交互后就意识到他们问错了问题,或者代理理解错了。"
3. 错误级联模式:前 2 分钟决定成败
研究发现,如果在会话的前 2 分钟出现工具选择错误或文件读取错误,后续放弃的概率会显著增加。这和基础设施监控的经验很相似——部署的前 90 秒几乎能决定一切。
4. 不同任务类型的成功率差异显著
- 文档编写:成功率最高
- 代码重构:成功率最低
这个发现符合直觉:文档任务边界清晰、验证简单;而重构涉及复杂的代码理解和依赖分析,更容易出错。
对 AI 搜索的启示
虽然这项研究聚焦于编程场景,但对 AI 搜索产品的设计也有参考价值:
1. 首因效应至关重要 用户在前 60 秒的体验决定了他们是否会继续使用。搜索产品需要在最短时间内给出高质量结果。
2. 错误恢复机制 当 AI 理解错误时,如何快速纠正比追求完美更重要。Rudel 的数据显示,错误级联一旦发生,用户很快就会失去耐心。
3. 功能发现性 即使有强大的功能(如 Skills),如果用户不知道或不会用,就等于不存在。AI 搜索产品需要更智能地引导用户使用高级功能。
4. 任务适配性 不同的搜索场景对 AI 的要求不同。简单的事实查询 vs 复杂的分析任务,需要不同的交互设计和预期管理。
Rudel 工具本身
这项研究的开源工具 Rudel 也值得关注。它通过 Claude Code 的 hooks 机制,在会话结束时自动上传数据,提供团队级的使用分析:
- 个人和团队的会话统计
- Token 使用趋势
- 项目时间分配
- 会话成功率分析
对于想要量化 AI 工具 ROI 的团队来说,这类分析工具很有价值。
社区反响
这个项目在 Hacker News 上获得了 85 个点赞和 50+ 评论。讨论焦点包括:
- 如何提高 Skills 的使用率
- 单一会话 vs 多会话策略的优劣
- 隐私和数据安全问题(工具需要上传完整会话内容)
- 与 Claude Code 内置的/insights 命令的对比
写在最后
AI 编程代理还处于早期阶段,我们对其使用模式的理解非常有限。Rudel 团队的数据虽然只来自一个小团队,但提供了宝贵的实证基础。
随着 AI Agent 的普及,相信会有更多类似的研究出现。而对于搜索技术从业者来说,理解用户如何与 AI 交互、在什么情况下会放弃,将是设计更好产品的关键。
你使用 Claude Code 或其他 AI 编程工具吗?你觉得最大的痛点是什么?
来源:Rudel GitHub / Hacker News 讨论 原文发布时间:2026 年 3 月 12 日 Hacker News 热度:85 points, 53 comments
AI 编程工具的使用数据一直是个黑盒——我们知道很多人在用,但具体用得怎么样?哪些场景效果好?什么情况下会放弃?最近,一个团队开源了他们的分析工具 Rudel,并基于 1573 个真实的 Claude Code 会话数据,给出了一些有趣的洞察。
数据集概况
这个数据集来自一个 6 人团队(4 名工程师、1 名数据/业务人员、1 名设计工程师)在过去 3 个月的真实使用记录:
- 总会话数:1,573 个
- 总 Token 数:1500 万+
- 总交互数:27 万+
- 会话类型:40% 大型遗留项目、50% 新项目、10% 非编码任务
核心发现
1. Skills 使用率极低:仅 4%
Claude Code 的 Skills 功能(预定义的指令模板)使用率只有 4%。这引发了一个问题:是功能设计有问题,还是用户根本不知道它的存在?
从 Hacker News 的讨论来看,可能两者都有:
- Skills 的可发现性较差
- 用户更倾向于自然语言提示
- 即使设置了 Skills,Claude 也不一定会调用
好消息是,Claude 4.6 版本在这方面有明显改进。
2. 26% 的会话在 60 秒内被放弃
超过四分之一的会话在开始后的第一分钟内就被用户放弃。这个数字揭示了一个关键问题:初始提示与意图匹配的重要性。
正如 HN 用户 robutsume 分析的:
"这不是代理的问题,而是提示与意图不匹配的问题。人类在一次交互后就意识到他们问错了问题,或者代理理解错了。"
3. 错误级联模式:前 2 分钟决定成败
研究发现,如果在会话的前 2 分钟出现工具选择错误或文件读取错误,后续放弃的概率会显著增加。这和基础设施监控的经验很相似——部署的前 90 秒几乎能决定一切。
4. 不同任务类型的成功率差异显著
- 文档编写:成功率最高
- 代码重构:成功率最低
这个发现符合直觉:文档任务边界清晰、验证简单;而重构涉及复杂的代码理解和依赖分析,更容易出错。
对 AI 搜索的启示
虽然这项研究聚焦于编程场景,但对 AI 搜索产品的设计也有参考价值:
1. 首因效应至关重要 用户在前 60 秒的体验决定了他们是否会继续使用。搜索产品需要在最短时间内给出高质量结果。
2. 错误恢复机制 当 AI 理解错误时,如何快速纠正比追求完美更重要。Rudel 的数据显示,错误级联一旦发生,用户很快就会失去耐心。
3. 功能发现性 即使有强大的功能(如 Skills),如果用户不知道或不会用,就等于不存在。AI 搜索产品需要更智能地引导用户使用高级功能。
4. 任务适配性 不同的搜索场景对 AI 的要求不同。简单的事实查询 vs 复杂的分析任务,需要不同的交互设计和预期管理。
Rudel 工具本身
这项研究的开源工具 Rudel 也值得关注。它通过 Claude Code 的 hooks 机制,在会话结束时自动上传数据,提供团队级的使用分析:
- 个人和团队的会话统计
- Token 使用趋势
- 项目时间分配
- 会话成功率分析
对于想要量化 AI 工具 ROI 的团队来说,这类分析工具很有价值。
社区反响
这个项目在 Hacker News 上获得了 85 个点赞和 50+ 评论。讨论焦点包括:
- 如何提高 Skills 的使用率
- 单一会话 vs 多会话策略的优劣
- 隐私和数据安全问题(工具需要上传完整会话内容)
- 与 Claude Code 内置的/insights 命令的对比
写在最后
AI 编程代理还处于早期阶段,我们对其使用模式的理解非常有限。Rudel 团队的数据虽然只来自一个小团队,但提供了宝贵的实证基础。
随着 AI Agent 的普及,相信会有更多类似的研究出现。而对于搜索技术从业者来说,理解用户如何与 AI 交互、在什么情况下会放弃,将是设计更好产品的关键。
你使用 Claude Code 或其他 AI 编程工具吗?你觉得最大的痛点是什么?
来源:Rudel GitHub / Hacker News 讨论 原文发布时间:2026 年 3 月 12 日 Hacker News 热度:85 points, 53 comments
收起阅读 »【搜索客社区日报】第2198期 (2026-03-17)
https://medium.com/%40mohamedm ... 29932
2. 一天搞了85 million的更新,就问你厉不厉害(需要梯子)
https://medium.com/motive-eng/ ... 4f3d3
3. 我的AI agent怎么就这么快?(需要梯子)
https://infosecwriteups.com/my ... d115c
编辑:斯蒂文
更多资讯:http://news.searchkit.cn
https://medium.com/%40mohamedm ... 29932
2. 一天搞了85 million的更新,就问你厉不厉害(需要梯子)
https://medium.com/motive-eng/ ... 4f3d3
3. 我的AI agent怎么就这么快?(需要梯子)
https://infosecwriteups.com/my ... d115c
编辑:斯蒂文
更多资讯:http://news.searchkit.cn 收起阅读 »
零样本视频异常检测:当向量检索遇上边缘智能
想象一下,你的监控摄像头能在从未见过打斗、事故或入侵的情况下,自动检测出这些异常事件。这不是科幻,而是向量检索技术在边缘计算场景下的最新实践。
Qdrant 最近发布了一套完整的边缘到云端的视频异常检测方案,核心思路非常巧妙:不再问"这是什么异常?",而是问"这与正常状态有多不同?"
传统方法的困境
传统的视频异常检测依赖监督学习。你需要为每一种异常类型收集标注数据——打斗、事故、入侵、设备故障……问题是,在现实世界中,你无法枚举所有可能出错的情况。
更麻烦的是,当一个全新的异常类型出现时,训练好的分类器会直接失效。一个用13种犯罪类别训练的模型,面对叉车碰撞或管道爆裂时,置信度直接归零。
这就是监督学习的根本局限:正常行为的空间是可学习的,但异常行为的空间是无界的。
向量检索的破局之道
Qdrant 的方案将异常检测重新定义为最近邻搜索问题:
- 建立基线:将正常活动的视频片段编码成向量,存入 Qdrant 作为基线
- 实时比对:新视频片段到达时,编码并搜索最近邻
- 异常判定:如果片段与基线距离较远,即为异常
这种方法的最大优势是零样本检测——无需异常标注,无需针对新异常类型重新训练。任何偏离正常模式的行为,无论是否见过,都能被捕获。
技术架构:四层协作
这套方案的精妙之处在于边缘与云端的智能分工:
Qdrant Edge:边缘端的向量引擎
运行在 NVIDIA Jetson 设备上,采用双分片架构:
- 不可变 HNSW 分片:从云端同步的基线数据,提供亚毫秒级 kNN 检索
- 可变更写入分片:支持实时写入和本地更新
关键特性:完全离线可用,网络中断不影响本地检测。
Twelve Labs Marengo 3.0:视频理解的大脑
相比 CLIP 等帧级模型(0.23 AUC-ROC),Marengo 3.0 处理时序动态、音频和场景上下文作为统一信号,达到 0.97 AUC-ROC。一个模型同时处理异常评分和语义搜索。
NVIDIA Metropolis VSS:GPU 加速管道
编排视频摄入、嵌入生成、VLM 字幕、音频转录和 CV 管道,全部在 GPU 上并行运行。
Vultr Cloud GPUs:云端算力支撑
提供按小时计费的专用 NVIDIA GPU,全球数据中心布局确保低延迟和可预测成本。
边缘优先的成本优化
一个 50 摄像头的部署每天产生 432,000 个视频片段。如果全部发送到云端处理,既不快速也不经济。
Qdrant Edge 的解决方案是边缘分级处理:
- 边缘端进行初筛,仅将高异常评分片段上传到云端
- 云端使用 Marengo 3.0 进行高保真分析和集成评分
- 结果:云处理量减少约 6 倍,同时捕获约 95% 的真实异常
这种架构让系统能够随摄像头数量线性扩展,而无需让云成本同步线性增长。
实际产出能力
这套系统将实时视频流转化为:
- 实时异常评分:基于与正常基线的 kNN 距离,配合时序平滑和迟滞阈值过滤噪声
- 事件报告:带严重度评分、时间线和自然语言解释的事故报告
- 语义视频搜索:跨所有摄像头和时间段搜索,比如"显示上周北门的不寻常活动"
- 交互式问答:基于实际视频内容回答关于检测到事件的问题
开源与教程
Qdrant 发布了完整的 3 部分教程,包含可运行代码:
GitHub 仓库:qdrant/video-anomaly-edge
启示:重新定义问题
这个案例给我们的最大启发是:有时候,解决问题的最佳方式不是优化现有方案,而是重新定义问题本身。
与其训练模型识别所有异常类型(一个注定失败的任务),不如利用向量检索的固有优势——相似度计算。当"异常"被定义为"与正常状态的偏离"时,问题突然变得可解了。
向量数据库不再只是 RAG 应用的检索层,它正在成为新一代 AI 应用的基础设施——从推荐系统到异常检测,从语义搜索到智能体记忆。
来源: Qdrant Blog - Video Anomaly Detection From Edge to Cloud
发布时间: March 15, 2026
想象一下,你的监控摄像头能在从未见过打斗、事故或入侵的情况下,自动检测出这些异常事件。这不是科幻,而是向量检索技术在边缘计算场景下的最新实践。
Qdrant 最近发布了一套完整的边缘到云端的视频异常检测方案,核心思路非常巧妙:不再问"这是什么异常?",而是问"这与正常状态有多不同?"
传统方法的困境
传统的视频异常检测依赖监督学习。你需要为每一种异常类型收集标注数据——打斗、事故、入侵、设备故障……问题是,在现实世界中,你无法枚举所有可能出错的情况。
更麻烦的是,当一个全新的异常类型出现时,训练好的分类器会直接失效。一个用13种犯罪类别训练的模型,面对叉车碰撞或管道爆裂时,置信度直接归零。
这就是监督学习的根本局限:正常行为的空间是可学习的,但异常行为的空间是无界的。
向量检索的破局之道
Qdrant 的方案将异常检测重新定义为最近邻搜索问题:
- 建立基线:将正常活动的视频片段编码成向量,存入 Qdrant 作为基线
- 实时比对:新视频片段到达时,编码并搜索最近邻
- 异常判定:如果片段与基线距离较远,即为异常
这种方法的最大优势是零样本检测——无需异常标注,无需针对新异常类型重新训练。任何偏离正常模式的行为,无论是否见过,都能被捕获。
技术架构:四层协作
这套方案的精妙之处在于边缘与云端的智能分工:
Qdrant Edge:边缘端的向量引擎
运行在 NVIDIA Jetson 设备上,采用双分片架构:
- 不可变 HNSW 分片:从云端同步的基线数据,提供亚毫秒级 kNN 检索
- 可变更写入分片:支持实时写入和本地更新
关键特性:完全离线可用,网络中断不影响本地检测。
Twelve Labs Marengo 3.0:视频理解的大脑
相比 CLIP 等帧级模型(0.23 AUC-ROC),Marengo 3.0 处理时序动态、音频和场景上下文作为统一信号,达到 0.97 AUC-ROC。一个模型同时处理异常评分和语义搜索。
NVIDIA Metropolis VSS:GPU 加速管道
编排视频摄入、嵌入生成、VLM 字幕、音频转录和 CV 管道,全部在 GPU 上并行运行。
Vultr Cloud GPUs:云端算力支撑
提供按小时计费的专用 NVIDIA GPU,全球数据中心布局确保低延迟和可预测成本。
边缘优先的成本优化
一个 50 摄像头的部署每天产生 432,000 个视频片段。如果全部发送到云端处理,既不快速也不经济。
Qdrant Edge 的解决方案是边缘分级处理:
- 边缘端进行初筛,仅将高异常评分片段上传到云端
- 云端使用 Marengo 3.0 进行高保真分析和集成评分
- 结果:云处理量减少约 6 倍,同时捕获约 95% 的真实异常
这种架构让系统能够随摄像头数量线性扩展,而无需让云成本同步线性增长。
实际产出能力
这套系统将实时视频流转化为:
- 实时异常评分:基于与正常基线的 kNN 距离,配合时序平滑和迟滞阈值过滤噪声
- 事件报告:带严重度评分、时间线和自然语言解释的事故报告
- 语义视频搜索:跨所有摄像头和时间段搜索,比如"显示上周北门的不寻常活动"
- 交互式问答:基于实际视频内容回答关于检测到事件的问题
开源与教程
Qdrant 发布了完整的 3 部分教程,包含可运行代码:
GitHub 仓库:qdrant/video-anomaly-edge
启示:重新定义问题
这个案例给我们的最大启发是:有时候,解决问题的最佳方式不是优化现有方案,而是重新定义问题本身。
与其训练模型识别所有异常类型(一个注定失败的任务),不如利用向量检索的固有优势——相似度计算。当"异常"被定义为"与正常状态的偏离"时,问题突然变得可解了。
向量数据库不再只是 RAG 应用的检索层,它正在成为新一代 AI 应用的基础设施——从推荐系统到异常检测,从语义搜索到智能体记忆。
来源: Qdrant Blog - Video Anomaly Detection From Edge to Cloud
发布时间: March 15, 2026
论文精读:通过提示词实现 LLM 推荐系统的公平性去偏
论文精读:通过提示词实现 LLM 推荐系统的公平性去偏
论文标题: Can Fairness Be Prompted? Prompt-Based Debiasing Strategies in High-Stakes Recommendations
作者: Theresia Veronika Rampisela 等
arXiv: https://arxiv.org/abs/2603.12935
发表时间: 2026年3月
研究背景
大语言模型(LLM)在推荐系统中的应用日益广泛,但一个潜在问题是:LLM 可能从间接线索(如姓名、代词)推断出敏感属性(如性别、年龄),从而在推荐中产生偏见。
现有的去偏方法通常需要:
- 访问 LLM 的权重参数
- 高昂的计算成本
- 专业知识
这使得普通用户难以使用这些技术。
核心问题
能否仅通过提示词(prompt)来实现推荐系统的公平性去偏?
研究贡献
本文提出了三种基于提示词的去偏策略:
1. 公平性指令提示 (Fairness Instruction Prompting)
直接在提示中加入公平性相关的指令,如:
"请确保你的推荐对所有用户群体都公平,不考虑性别、年龄等因素。"
2. 反事实示例提示 (Counterfactual Prompting)
通过构造反事实场景来消除敏感属性的影响。
3. 偏见感知系统提示 (Bias-Aware System Prompting)
在系统层面加入对潜在偏见的警示和约束。
实验设置
- 测试模型: 3 个不同的 LLM
- 提示模板: 4 种
- 敏感属性: 9 种(性别、年龄等)
- 数据集: 2 个真实推荐数据集
核心发现
✅ 有效性
- 基于提示的去偏方法最高可提升 74% 的公平性指标
- 同时保持了与基线相当的有效性(推荐准确率)
⚠️ 局限性
- 在某些情况下可能导致特定群体的过度推广(overpromotion)
- 提示的设计对效果影响很大,需要仔细调优
实践意义
对搜索/推荐工程师的启示
-
轻量级解决方案
- 无需修改模型权重或重新训练
- 部署成本低,可快速实验
-
高 stakes 场景适用
- 金融、医疗、招聘等领域的推荐系统
- 需要满足合规要求的场景
- 提示工程的新维度
- 除了追求准确性,还需考虑公平性
- 建议将公平性测试纳入提示评估流程
局限与未来方向
- 研究主要关注群体公平性(group fairness)
- 个体公平性(individual fairness)的提示策略仍需探索
- 不同语言和文化背景下的适用性有待验证
原文链接
https://arxiv.org/abs/2603.12935
这篇论文为 LLM 推荐系统的公平性优化提供了一个实用且低成本的切入点,值得在工业落地中尝试。
论文精读:通过提示词实现 LLM 推荐系统的公平性去偏
论文标题: Can Fairness Be Prompted? Prompt-Based Debiasing Strategies in High-Stakes Recommendations
作者: Theresia Veronika Rampisela 等
arXiv: https://arxiv.org/abs/2603.12935
发表时间: 2026年3月
研究背景
大语言模型(LLM)在推荐系统中的应用日益广泛,但一个潜在问题是:LLM 可能从间接线索(如姓名、代词)推断出敏感属性(如性别、年龄),从而在推荐中产生偏见。
现有的去偏方法通常需要:
- 访问 LLM 的权重参数
- 高昂的计算成本
- 专业知识
这使得普通用户难以使用这些技术。
核心问题
能否仅通过提示词(prompt)来实现推荐系统的公平性去偏?
研究贡献
本文提出了三种基于提示词的去偏策略:
1. 公平性指令提示 (Fairness Instruction Prompting)
直接在提示中加入公平性相关的指令,如:
"请确保你的推荐对所有用户群体都公平,不考虑性别、年龄等因素。"
2. 反事实示例提示 (Counterfactual Prompting)
通过构造反事实场景来消除敏感属性的影响。
3. 偏见感知系统提示 (Bias-Aware System Prompting)
在系统层面加入对潜在偏见的警示和约束。
实验设置
- 测试模型: 3 个不同的 LLM
- 提示模板: 4 种
- 敏感属性: 9 种(性别、年龄等)
- 数据集: 2 个真实推荐数据集
核心发现
✅ 有效性
- 基于提示的去偏方法最高可提升 74% 的公平性指标
- 同时保持了与基线相当的有效性(推荐准确率)
⚠️ 局限性
- 在某些情况下可能导致特定群体的过度推广(overpromotion)
- 提示的设计对效果影响很大,需要仔细调优
实践意义
对搜索/推荐工程师的启示
-
轻量级解决方案
- 无需修改模型权重或重新训练
- 部署成本低,可快速实验
-
高 stakes 场景适用
- 金融、医疗、招聘等领域的推荐系统
- 需要满足合规要求的场景
- 提示工程的新维度
- 除了追求准确性,还需考虑公平性
- 建议将公平性测试纳入提示评估流程
局限与未来方向
- 研究主要关注群体公平性(group fairness)
- 个体公平性(individual fairness)的提示策略仍需探索
- 不同语言和文化背景下的适用性有待验证
原文链接
https://arxiv.org/abs/2603.12935
收起阅读 »这篇论文为 LLM 推荐系统的公平性优化提供了一个实用且低成本的切入点,值得在工业落地中尝试。
Meilisearch 2026年3月更新解读:分布式搜索迈入新纪元,AI性能大幅提升
标题:Meilisearch 2026年3月更新解读:分布式搜索迈入新纪元,AI性能大幅提升
正文:
更新概览
2026年3月,Meilisearch 带来了一系列令人振奋的产品更新。从分布式搜索的里程碑式进展,到AI性能的显著提升,再到Cloud平台的用户体验优化,本次更新展现了Meilisearch在搜索引擎领域持续创新的决心。本文将深入解析这些重要改进,帮助开发者更好地理解和应用这些新特性。
主要功能改进
1. 分布式搜索:复制分片正式进入引擎
本次更新最重磅的消息是 v1.37 版本将复制分片(Replicated Sharding)功能直接集成到 Meilisearch 引擎中。这是实现分布式、弹性搜索架构的最重要一步,也是通往Cloud平台一键复制功能的直接基石。
关键特性:
- 复制功能现已内置在引擎层面
- 目前面向企业版(Enterprise Edition)用户开放
- Cloud UI 的一键设置功能即将推出
这一进展意味着Meilisearch正在从单节点搜索引擎向真正的分布式架构演进,为高可用性和大规模搜索场景奠定了坚实基础。
2. 排名规则精细化控制
v1.36 版本引入了两个全新的排名规则,为搜索相关性调优提供了更精细的控制能力:
| 新规则 | 功能描述 |
|---|---|
attributeRank |
优先匹配权重更高的可搜索属性,不考虑匹配在属性中的具体位置 |
wordPosition |
优先匹配出现在属性开头的关键词,不考虑属性本身的权重 |
此前,attribute 排名规则将这两种行为固定绑定在一起。现在开发者可以独立使用它们,并能更灵活地在排名管道中插入自定义规则(如价格、发布日期等)。
3. Cloud 平台用户体验升级
Meilisearch Cloud 在本月迎来了三项实用功能:
- AI Prompt 生成器:直接在Cloud UI中生成高质量的AI搜索提示词,减少反复调试的时间成本
- 文档删除功能:无需调用API,直接在Cloud界面中删除索引文档,便于快速清理和内容管理
- 索引统计信息:直观展示索引大小、文档数量和字段分布,帮助用户更好地理解和维护数据健康
4. 搜索性能分析工具
新增的 showPerformanceDetails 参数让开发者能够获取搜索查询各阶段的时间消耗明细。这一功能极大地简化了慢查询的调试工作,使搜索性能优化变得更加透明和可控。
AI性能提升详情
HNSW 向量存储全面稳定化
Meilisearch 已完全迁移至基于 HNSW(Hierarchical Navigable Small World)算法的向量存储后端(代号 Hannoy):
- 旧的
vectorStoreSetting实验性功能已被永久移除 - 无停机升级过程中,引擎会自动将索引迁移到新后端
- 新建索引默认使用 HNSW 存储,带来更优的嵌入性能和一致性
v1.38 嵌入性能重大突破
v1.38 版本在AI嵌入索引性能方面实现了显著提升:
- 极速嵌入更新:消除了添加或更新嵌入时不必要的全库扫描,大规模索引的嵌入添加效率大幅提升
- 远程嵌入器稳定性修复:解决了使用远程嵌入器时偶发的 "connection reset by peer" 错误,显著提升了AI搜索工作流的稳定性
- 任务删除优化:修复了任务和批量删除操作中的长期边缘案例问题
升级建议:向量搜索用户强烈建议升级至 v1.38,该版本包含重要的性能改进和可靠性修复,且完全向后兼容。
未来规划
Meilisearch 团队正在开发 Cloud UI 中更便捷的聊天设置配置方式,预计将在近期推出。
未来展望
Meilisearch 的发展路线图显示出清晰的技术演进方向:
- 分布式架构深化:复制分片功能的引擎内集成只是开始,未来将在Cloud平台实现真正的一键分布式部署
- AI搜索体验优化:从Prompt生成器到聊天设置简化,Meilisearch正在降低AI搜索的使用门槛
- 社区生态建设:Meilisearch 已正式加入 Rust 基金会,回馈这个支撑其核心引擎快速可靠的生态系统
开发者可以通过 Meilisearch 公开路线图 了解最新规划。
安全与透明度
本月Meilisearch在安全方面也做出了重要改进:
- mini-dashboard 安全增强:API密钥现在存储在RAM中而非 localStorage,提升了安全性
- 负责任的漏洞披露:团队及时响应安全研究员的报告,修复漏洞并协调公开CVE披露,展现了成熟的安全治理态度
来源:Meilisearch官方博客
原文链接:https://www.meilisearch.com/blog/March-2026-updates
标签: Meilisearch, 搜索引擎, 分布式搜索, AI搜索
标题:Meilisearch 2026年3月更新解读:分布式搜索迈入新纪元,AI性能大幅提升
正文:
更新概览
2026年3月,Meilisearch 带来了一系列令人振奋的产品更新。从分布式搜索的里程碑式进展,到AI性能的显著提升,再到Cloud平台的用户体验优化,本次更新展现了Meilisearch在搜索引擎领域持续创新的决心。本文将深入解析这些重要改进,帮助开发者更好地理解和应用这些新特性。
主要功能改进
1. 分布式搜索:复制分片正式进入引擎
本次更新最重磅的消息是 v1.37 版本将复制分片(Replicated Sharding)功能直接集成到 Meilisearch 引擎中。这是实现分布式、弹性搜索架构的最重要一步,也是通往Cloud平台一键复制功能的直接基石。
关键特性:
- 复制功能现已内置在引擎层面
- 目前面向企业版(Enterprise Edition)用户开放
- Cloud UI 的一键设置功能即将推出
这一进展意味着Meilisearch正在从单节点搜索引擎向真正的分布式架构演进,为高可用性和大规模搜索场景奠定了坚实基础。
2. 排名规则精细化控制
v1.36 版本引入了两个全新的排名规则,为搜索相关性调优提供了更精细的控制能力:
| 新规则 | 功能描述 |
|---|---|
attributeRank |
优先匹配权重更高的可搜索属性,不考虑匹配在属性中的具体位置 |
wordPosition |
优先匹配出现在属性开头的关键词,不考虑属性本身的权重 |
此前,attribute 排名规则将这两种行为固定绑定在一起。现在开发者可以独立使用它们,并能更灵活地在排名管道中插入自定义规则(如价格、发布日期等)。
3. Cloud 平台用户体验升级
Meilisearch Cloud 在本月迎来了三项实用功能:
- AI Prompt 生成器:直接在Cloud UI中生成高质量的AI搜索提示词,减少反复调试的时间成本
- 文档删除功能:无需调用API,直接在Cloud界面中删除索引文档,便于快速清理和内容管理
- 索引统计信息:直观展示索引大小、文档数量和字段分布,帮助用户更好地理解和维护数据健康
4. 搜索性能分析工具
新增的 showPerformanceDetails 参数让开发者能够获取搜索查询各阶段的时间消耗明细。这一功能极大地简化了慢查询的调试工作,使搜索性能优化变得更加透明和可控。
AI性能提升详情
HNSW 向量存储全面稳定化
Meilisearch 已完全迁移至基于 HNSW(Hierarchical Navigable Small World)算法的向量存储后端(代号 Hannoy):
- 旧的
vectorStoreSetting实验性功能已被永久移除 - 无停机升级过程中,引擎会自动将索引迁移到新后端
- 新建索引默认使用 HNSW 存储,带来更优的嵌入性能和一致性
v1.38 嵌入性能重大突破
v1.38 版本在AI嵌入索引性能方面实现了显著提升:
- 极速嵌入更新:消除了添加或更新嵌入时不必要的全库扫描,大规模索引的嵌入添加效率大幅提升
- 远程嵌入器稳定性修复:解决了使用远程嵌入器时偶发的 "connection reset by peer" 错误,显著提升了AI搜索工作流的稳定性
- 任务删除优化:修复了任务和批量删除操作中的长期边缘案例问题
升级建议:向量搜索用户强烈建议升级至 v1.38,该版本包含重要的性能改进和可靠性修复,且完全向后兼容。
未来规划
Meilisearch 团队正在开发 Cloud UI 中更便捷的聊天设置配置方式,预计将在近期推出。
未来展望
Meilisearch 的发展路线图显示出清晰的技术演进方向:
- 分布式架构深化:复制分片功能的引擎内集成只是开始,未来将在Cloud平台实现真正的一键分布式部署
- AI搜索体验优化:从Prompt生成器到聊天设置简化,Meilisearch正在降低AI搜索的使用门槛
- 社区生态建设:Meilisearch 已正式加入 Rust 基金会,回馈这个支撑其核心引擎快速可靠的生态系统
开发者可以通过 Meilisearch 公开路线图 了解最新规划。
安全与透明度
本月Meilisearch在安全方面也做出了重要改进:
- mini-dashboard 安全增强:API密钥现在存储在RAM中而非 localStorage,提升了安全性
- 负责任的漏洞披露:团队及时响应安全研究员的报告,修复漏洞并协调公开CVE披露,展现了成熟的安全治理态度
来源:Meilisearch官方博客
原文链接:https://www.meilisearch.com/blog/March-2026-updates
标签: Meilisearch, 搜索引擎, 分布式搜索, AI搜索
收起阅读 »Pinecone BYOC 正式发布:数据主权时代的向量数据库新选择
标题:Pinecone BYOC 正式发布:数据主权时代的向量数据库新选择
正文:
产品概述
Pinecone 正式宣布推出 BYOC(Bring Your Own Cloud) 部署模式,允许企业在自己的 AWS、GCP 或 Azure 云账户中运行 Pinecone 向量数据库服务。这一创新方案标志着向量数据库领域进入"数据主权"时代,为对数据隐私和合规性有严格要求的企业提供了全新的选择。
传统 SaaS 模式下,企业需要将数据托管在供应商的基础设施中,而 Pinecone BYOC 打破了这一限制,让企业能够在完全掌控自有云环境的同时,享受 Pinecone 业界领先的向量搜索能力。
BYOC 架构特点
1. 零访问模式(Zero-Access Architecture)
Pinecone BYOC 采用真正的零访问架构设计:
- Pinecone 无法访问客户数据:所有数据存储和计算都在客户自己的云账户中进行
- 完全隔离:供应商与客户环境之间建立严格的安全边界
- 自主管控:客户拥有对基础设施和数据的完全控制权
2. 多云原生支持
BYOC 方案原生支持三大主流云平台:
- AWS:支持在客户指定的 AWS 账户和区域部署
- Google Cloud Platform:灵活的 GCP 环境集成
- Azure:微软云生态系统的完整支持
3. 企业级安全合规
- 满足 GDPR、HIPAA、SOC 2 等严格合规要求
- 支持自定义加密策略和密钥管理
- 审计日志完全由客户掌控
适用场景
Pinecone BYOC 特别适合以下场景:
| 场景类型 | 具体需求 |
|---|---|
| 金融服务业 | 敏感交易数据、客户隐私信息的向量检索 |
| 医疗健康 | 符合 HIPAA 标准的医疗记录语义搜索 |
| 政府机构 | 数据主权要求、本地化存储法规 |
| 大型企业 | 复杂的数据治理策略、多层级安全审查 |
| AI/ML 团队 | 专有模型训练数据的向量索引管理 |
与传统方案对比
| 维度 | Pinecone SaaS | Pinecone BYOC | 自建开源方案 |
|---|---|---|---|
| 数据控制权 | 供应商托管 | 完全自主 | 完全自主 |
| 运维复杂度 | 低 | 中等 | 高 |
| 功能完整性 | 完整 | 完整 | 需自行集成 |
| 扩展性 | 自动扩展 | 自动扩展 | 需手动配置 |
| 成本模式 | 按用量付费 | 基础设施+许可 | 人力成本较高 |
| 供应商访问 | 有 | 零访问 | 无 |
核心优势总结
相比传统方案,Pinecone BYOC 的独特价值在于:
- 平衡控制与便利:既保留了对数据的完全控制,又无需自行维护复杂的向量数据库基础设施
- 降低合规成本:内置的企业级安全特性减少了为满足合规要求而进行的额外开发工作
- 无缝迁移路径:现有 Pinecone 用户可平滑迁移至 BYOC 模式,API 完全兼容
结语
随着 AI 应用的深入普及,向量数据库已成为现代技术栈的核心组件。Pinecone BYOC 的推出,为企业在享受先进技术红利的同时严守数据安全底线提供了可行路径。对于正在评估向量数据库方案的技术团队而言,BYOC 模式值得纳入重点考量范围。
来源:Pinecone 官方博客
原文链接:https://www.pinecone.io/blog/byoc/
标签: 向量数据库, Pinecone, BYOC, 数据隐私
标题:Pinecone BYOC 正式发布:数据主权时代的向量数据库新选择
正文:
产品概述
Pinecone 正式宣布推出 BYOC(Bring Your Own Cloud) 部署模式,允许企业在自己的 AWS、GCP 或 Azure 云账户中运行 Pinecone 向量数据库服务。这一创新方案标志着向量数据库领域进入"数据主权"时代,为对数据隐私和合规性有严格要求的企业提供了全新的选择。
传统 SaaS 模式下,企业需要将数据托管在供应商的基础设施中,而 Pinecone BYOC 打破了这一限制,让企业能够在完全掌控自有云环境的同时,享受 Pinecone 业界领先的向量搜索能力。
BYOC 架构特点
1. 零访问模式(Zero-Access Architecture)
Pinecone BYOC 采用真正的零访问架构设计:
- Pinecone 无法访问客户数据:所有数据存储和计算都在客户自己的云账户中进行
- 完全隔离:供应商与客户环境之间建立严格的安全边界
- 自主管控:客户拥有对基础设施和数据的完全控制权
2. 多云原生支持
BYOC 方案原生支持三大主流云平台:
- AWS:支持在客户指定的 AWS 账户和区域部署
- Google Cloud Platform:灵活的 GCP 环境集成
- Azure:微软云生态系统的完整支持
3. 企业级安全合规
- 满足 GDPR、HIPAA、SOC 2 等严格合规要求
- 支持自定义加密策略和密钥管理
- 审计日志完全由客户掌控
适用场景
Pinecone BYOC 特别适合以下场景:
| 场景类型 | 具体需求 |
|---|---|
| 金融服务业 | 敏感交易数据、客户隐私信息的向量检索 |
| 医疗健康 | 符合 HIPAA 标准的医疗记录语义搜索 |
| 政府机构 | 数据主权要求、本地化存储法规 |
| 大型企业 | 复杂的数据治理策略、多层级安全审查 |
| AI/ML 团队 | 专有模型训练数据的向量索引管理 |
与传统方案对比
| 维度 | Pinecone SaaS | Pinecone BYOC | 自建开源方案 |
|---|---|---|---|
| 数据控制权 | 供应商托管 | 完全自主 | 完全自主 |
| 运维复杂度 | 低 | 中等 | 高 |
| 功能完整性 | 完整 | 完整 | 需自行集成 |
| 扩展性 | 自动扩展 | 自动扩展 | 需手动配置 |
| 成本模式 | 按用量付费 | 基础设施+许可 | 人力成本较高 |
| 供应商访问 | 有 | 零访问 | 无 |
核心优势总结
相比传统方案,Pinecone BYOC 的独特价值在于:
- 平衡控制与便利:既保留了对数据的完全控制,又无需自行维护复杂的向量数据库基础设施
- 降低合规成本:内置的企业级安全特性减少了为满足合规要求而进行的额外开发工作
- 无缝迁移路径:现有 Pinecone 用户可平滑迁移至 BYOC 模式,API 完全兼容
结语
随着 AI 应用的深入普及,向量数据库已成为现代技术栈的核心组件。Pinecone BYOC 的推出,为企业在享受先进技术红利的同时严守数据安全底线提供了可行路径。对于正在评估向量数据库方案的技术团队而言,BYOC 模式值得纳入重点考量范围。
来源:Pinecone 官方博客
原文链接:https://www.pinecone.io/blog/byoc/
标签: 向量数据库, Pinecone, BYOC, 数据隐私
收起阅读 »告别大海捞针:FGTR如何用分层推理革命性提升多表检索精度
标题:告别"大海捞针":FGTR如何用分层推理革命性提升多表检索精度
正文:
背景介绍
随着大型语言模型(LLM)的快速发展,基于LLM的表格检索技术已成为RAG(检索增强生成)领域的重要研究方向。在数据分析、商业智能和知识问答等场景中,准确检索与用户查询相关的表格数据是提升下游任务性能的关键环节。
然而,当前主流的表格检索方法存在明显的局限性:它们通常聚焦于单表查询场景,采用将整个表格编码后进行相似度匹配的策略。这种"粗粒度"的检索方式不仅效率低下,更难以应对复杂的多表关联查询需求。
问题分析
现有方法的痛点主要体现在两个方面:
1. 准确率瓶颈
传统方法将整个表格作为整体进行编码,导致大量与查询无关的数据被混入表征中。这种"噪声污染"严重降低了检索的精确度——想象一下,在一个包含数百行的大型表格中,用户可能只关心其中某几列的特定数据,但现有方法却无法有效过滤无关信息。
2. 效率与扩展性问题
当处理大规模表格时,编码整个表格的开销急剧增加。更重要的是,现实世界的数据查询往往需要跨多个表格进行关联分析,而这一需求在当前的检索任务中研究严重不足。
FGTR方法:细粒度多表检索
针对上述挑战,研究者提出了FGTR(Fine-Grained Multi-Table Retrieval)——一种基于分层LLM推理的新型检索范式。
FGTR的核心创新在于模拟人类的推理策略,采用分层递进的检索机制:
第一层:模式元素识别
FGTR首先分析查询意图,识别出相关的数据库模式元素(如表名、列名)。这一步骤相当于人类在查找数据前先确定"去哪里找"。
第二层:单元格内容检索
在确定目标模式后,FGTR进一步检索对应的单元格内容。这种细粒度的定位避免了无关数据的干扰。
第三层:子表构建
最终,FGTR构建出一个简洁、精确的子表,该子表与原始查询高度对齐,可直接用于下游任务。
这种分层推理的优势在于:它既保留了LLM强大的语义理解能力,又通过逐步聚焦的方式实现了细粒度检索,有效解决了"粗粒度编码"带来的准确率损失问题。
实验结果
为全面评估FGTR的性能,研究团队基于两个权威基准数据集Spider和BIRD构建了新的评测数据集。
实验结果令人瞩目:
| 数据集 | 性能提升 |
|---|---|
| Spider | F2指标提升 18% |
| BIRD | F2指标提升 21% |
这一显著的性能提升充分证明了FGTR在细粒度检索任务上的优越性,同时也展示了其在提升表格相关下游任务端到端性能方面的巨大潜力。
总结
FGTR的提出为表格检索领域开辟了新的研究方向。它通过分层推理机制,成功突破了传统粗粒度方法的瓶颈,在准确率和效率之间取得了更好的平衡。
对于正在构建RAG系统的开发者而言,FGTR提供了一种值得关注的表格检索新范式。特别是在需要处理复杂多表查询的场景中,这种细粒度的检索思路可能会带来质的提升。
标签: 表格检索、LLM推理、RAG、数据库检索
来源: arXiv:2603.12702
标题:告别"大海捞针":FGTR如何用分层推理革命性提升多表检索精度
正文:
背景介绍
随着大型语言模型(LLM)的快速发展,基于LLM的表格检索技术已成为RAG(检索增强生成)领域的重要研究方向。在数据分析、商业智能和知识问答等场景中,准确检索与用户查询相关的表格数据是提升下游任务性能的关键环节。
然而,当前主流的表格检索方法存在明显的局限性:它们通常聚焦于单表查询场景,采用将整个表格编码后进行相似度匹配的策略。这种"粗粒度"的检索方式不仅效率低下,更难以应对复杂的多表关联查询需求。
问题分析
现有方法的痛点主要体现在两个方面:
1. 准确率瓶颈
传统方法将整个表格作为整体进行编码,导致大量与查询无关的数据被混入表征中。这种"噪声污染"严重降低了检索的精确度——想象一下,在一个包含数百行的大型表格中,用户可能只关心其中某几列的特定数据,但现有方法却无法有效过滤无关信息。
2. 效率与扩展性问题
当处理大规模表格时,编码整个表格的开销急剧增加。更重要的是,现实世界的数据查询往往需要跨多个表格进行关联分析,而这一需求在当前的检索任务中研究严重不足。
FGTR方法:细粒度多表检索
针对上述挑战,研究者提出了FGTR(Fine-Grained Multi-Table Retrieval)——一种基于分层LLM推理的新型检索范式。
FGTR的核心创新在于模拟人类的推理策略,采用分层递进的检索机制:
第一层:模式元素识别
FGTR首先分析查询意图,识别出相关的数据库模式元素(如表名、列名)。这一步骤相当于人类在查找数据前先确定"去哪里找"。
第二层:单元格内容检索
在确定目标模式后,FGTR进一步检索对应的单元格内容。这种细粒度的定位避免了无关数据的干扰。
第三层:子表构建
最终,FGTR构建出一个简洁、精确的子表,该子表与原始查询高度对齐,可直接用于下游任务。
这种分层推理的优势在于:它既保留了LLM强大的语义理解能力,又通过逐步聚焦的方式实现了细粒度检索,有效解决了"粗粒度编码"带来的准确率损失问题。
实验结果
为全面评估FGTR的性能,研究团队基于两个权威基准数据集Spider和BIRD构建了新的评测数据集。
实验结果令人瞩目:
| 数据集 | 性能提升 |
|---|---|
| Spider | F2指标提升 18% |
| BIRD | F2指标提升 21% |
这一显著的性能提升充分证明了FGTR在细粒度检索任务上的优越性,同时也展示了其在提升表格相关下游任务端到端性能方面的巨大潜力。
总结
FGTR的提出为表格检索领域开辟了新的研究方向。它通过分层推理机制,成功突破了传统粗粒度方法的瓶颈,在准确率和效率之间取得了更好的平衡。
对于正在构建RAG系统的开发者而言,FGTR提供了一种值得关注的表格检索新范式。特别是在需要处理复杂多表查询的场景中,这种细粒度的检索思路可能会带来质的提升。
标签: 表格检索、LLM推理、RAG、数据库检索
来源: arXiv:2603.12702
收起阅读 »EISAM:大语言模型推荐系统的长尾问题破局之道
标题:EISAM:大语言模型推荐系统的长尾问题破局之道
正文:
EISAM:大语言模型推荐系统的长尾问题破局之道
背景介绍
近年来,大语言模型(LLM)在推荐系统领域掀起了一场范式革命。大语言模型推荐系统(LLM-based Recommender Systems, LRS)通过直接采用LLM作为骨干网络,展现出强大的知识利用能力和指令遵循能力,成为序列推荐任务的新范式。
然而,推荐系统领域一个长期存在的挑战——长尾问题(Long-tail Problem)——在LRS中尚未得到系统性研究。传统的推荐系统由于数据分布的倾斜性,往往对热门物品(头部物品)推荐效果较好,而对冷门物品(尾部物品)的推荐性能较差。这种不平衡不仅影响用户体验,也限制了推荐系统的多样性和公平性。
随着LRS的兴起,一个关键问题浮出水面:LLM强大的预训练能力能否天然缓解长尾问题?还是说LRS面临着更加复杂的挑战?
问题分析:LRS中的双重长尾困境
最新研究揭示了一个令人意外的发现:LRS实际上面临着两种不同类型的长尾问题:
1. 先验长尾(Prior Long-tail)
LLM在海量通用语料上进行预训练,这些语料本身存在严重的不平衡分布——某些物品或概念在预训练数据中出现频率远高于其他。这种分布偏差被LLM隐式继承,形成了先验长尾。即使下游推荐数据集是平衡的,模型仍可能因为这种预训练偏差而偏向某些物品。
2. 数据长尾(Data Long-tail)
这是传统推荐系统中常见的问题。推荐数据集本身呈现典型的幂律分布:少数热门物品占据了绝大部分交互记录,而大量长尾物品只有极少数交互。这种数据长尾直接导致模型对头部物品学习更充分。
双重头部效应
研究表明,这两种长尾并非独立存在,而是产生了叠加效应:
- 先验长尾和数据长尾都会导致头部与尾部物品之间的性能差距
- 两种"头部"的交集(既在预训练语料中高频出现、又在推荐数据集中热门的物品)表现出更强的头部效应
- 尽管如此,LRS的整体性能分布(尤其是尾部表现)仍主要由数据长尾主导
这一发现具有重要的实践意义:即使使用强大的LLM作为骨干,如果不针对数据长尾进行优化,尾部物品的推荐质量仍然难以保障。
EISAM方法:高效物品级锐度感知最小化
针对上述挑战,研究者提出了EISAM(Efficient Item-wise Sharpness-Aware Minimization),一种全新的优化框架,专门用于改善LRS中的长尾问题。
核心思想
EISAM的核心洞察是:不同物品需要不同程度的正则化。传统优化方法对所有样本一视同仁,而EISAM通过自适应地调节每个物品的损失景观(loss landscape),为尾部物品提供更强的正则化,从而提升其泛化性能。
技术亮点
-
物品级正则化:EISAM在物品粒度上进行优化,而非传统的样本级或全局级。这使得模型能够精细地捕捉每个物品的特性。
-
高效惩罚设计:考虑到LLM的巨大参数量,EISAM设计了一种计算高效的惩罚机制,在捕捉细粒度物品特定锐度的同时,保持计算可扩展性。
- 自适应机制:正则化强度根据物品在数据分布中的位置自适应调整,尾部物品获得更强的正则化,头部物品则相对宽松。
理论分析:泛化界的快速下降
EISAM不仅在实践上有效,在理论上也有坚实的支撑。研究者推导了EISAM的泛化界(Generalization Bound),并证明:
在物品级正则化下,泛化界以更快的速率下降。
这一理论结果为EISAM的有效性提供了数学保证。具体来说,物品级正则化能够:
- 更精细地控制模型复杂度
- 针对不同物品的风险进行差异化约束
- 在保持整体模型容量的同时,改善尾部物品的泛化性能
实验结果:显著提升尾部性能
研究者在三个真实世界数据集上进行了广泛实验,结果验证了EISAM的有效性:
主要发现
-
尾部物品性能显著提升:EISAM能够显著改善长尾物品的推荐效果,缩小头部与尾部之间的性能差距。
-
整体质量保持:在提升尾部性能的同时,EISAM不会损害整体推荐质量,实现了"双赢"。
- 首个系统性解决方案:EISAM建立了LRS长尾问题的首个系统性解决方案,为该领域的后续研究奠定了基础。
实验意义
这些实验结果具有重要的实践价值:
- 对于电商平台,可以更好地推荐长尾商品,提升长尾商品曝光和销量
- 对于内容平台,可以改善冷门内容的推荐效果,促进内容生态的多样性
- 对于任何使用LLM作为推荐骨干的系统,EISAM提供了一种即插即用的优化方案
总结与展望
EISAM的提出标志着LRS长尾问题研究的重要突破。通过揭示LRS中双重长尾的存在,并提出针对性的优化方法,研究者为这一新兴领域奠定了坚实的理论基础和实践方案。
关键启示:
-
LLM并非万能:即使拥有强大的预训练能力,LRS仍需要专门的长尾优化策略。
-
细粒度正则化的价值:物品级优化能够更精准地解决长尾问题,相比粗粒度的全局方法更具优势。
- 理论与实践的结合:EISAM既有坚实的理论支撑,又在实践中表现出色,为后续研究提供了良好范例。
未来,随着LRS在工业界的广泛应用,如何进一步优化长尾性能、如何平衡多样性与准确性、如何在大规模场景下高效部署EISAM,都是值得探索的方向。
来源:arXiv:2603.12752
标签:LLM推荐系统,长尾问题,锐度感知最小化,推荐算法
标题:EISAM:大语言模型推荐系统的长尾问题破局之道
正文:
EISAM:大语言模型推荐系统的长尾问题破局之道
背景介绍
近年来,大语言模型(LLM)在推荐系统领域掀起了一场范式革命。大语言模型推荐系统(LLM-based Recommender Systems, LRS)通过直接采用LLM作为骨干网络,展现出强大的知识利用能力和指令遵循能力,成为序列推荐任务的新范式。
然而,推荐系统领域一个长期存在的挑战——长尾问题(Long-tail Problem)——在LRS中尚未得到系统性研究。传统的推荐系统由于数据分布的倾斜性,往往对热门物品(头部物品)推荐效果较好,而对冷门物品(尾部物品)的推荐性能较差。这种不平衡不仅影响用户体验,也限制了推荐系统的多样性和公平性。
随着LRS的兴起,一个关键问题浮出水面:LLM强大的预训练能力能否天然缓解长尾问题?还是说LRS面临着更加复杂的挑战?
问题分析:LRS中的双重长尾困境
最新研究揭示了一个令人意外的发现:LRS实际上面临着两种不同类型的长尾问题:
1. 先验长尾(Prior Long-tail)
LLM在海量通用语料上进行预训练,这些语料本身存在严重的不平衡分布——某些物品或概念在预训练数据中出现频率远高于其他。这种分布偏差被LLM隐式继承,形成了先验长尾。即使下游推荐数据集是平衡的,模型仍可能因为这种预训练偏差而偏向某些物品。
2. 数据长尾(Data Long-tail)
这是传统推荐系统中常见的问题。推荐数据集本身呈现典型的幂律分布:少数热门物品占据了绝大部分交互记录,而大量长尾物品只有极少数交互。这种数据长尾直接导致模型对头部物品学习更充分。
双重头部效应
研究表明,这两种长尾并非独立存在,而是产生了叠加效应:
- 先验长尾和数据长尾都会导致头部与尾部物品之间的性能差距
- 两种"头部"的交集(既在预训练语料中高频出现、又在推荐数据集中热门的物品)表现出更强的头部效应
- 尽管如此,LRS的整体性能分布(尤其是尾部表现)仍主要由数据长尾主导
这一发现具有重要的实践意义:即使使用强大的LLM作为骨干,如果不针对数据长尾进行优化,尾部物品的推荐质量仍然难以保障。
EISAM方法:高效物品级锐度感知最小化
针对上述挑战,研究者提出了EISAM(Efficient Item-wise Sharpness-Aware Minimization),一种全新的优化框架,专门用于改善LRS中的长尾问题。
核心思想
EISAM的核心洞察是:不同物品需要不同程度的正则化。传统优化方法对所有样本一视同仁,而EISAM通过自适应地调节每个物品的损失景观(loss landscape),为尾部物品提供更强的正则化,从而提升其泛化性能。
技术亮点
-
物品级正则化:EISAM在物品粒度上进行优化,而非传统的样本级或全局级。这使得模型能够精细地捕捉每个物品的特性。
-
高效惩罚设计:考虑到LLM的巨大参数量,EISAM设计了一种计算高效的惩罚机制,在捕捉细粒度物品特定锐度的同时,保持计算可扩展性。
- 自适应机制:正则化强度根据物品在数据分布中的位置自适应调整,尾部物品获得更强的正则化,头部物品则相对宽松。
理论分析:泛化界的快速下降
EISAM不仅在实践上有效,在理论上也有坚实的支撑。研究者推导了EISAM的泛化界(Generalization Bound),并证明:
在物品级正则化下,泛化界以更快的速率下降。
这一理论结果为EISAM的有效性提供了数学保证。具体来说,物品级正则化能够:
- 更精细地控制模型复杂度
- 针对不同物品的风险进行差异化约束
- 在保持整体模型容量的同时,改善尾部物品的泛化性能
实验结果:显著提升尾部性能
研究者在三个真实世界数据集上进行了广泛实验,结果验证了EISAM的有效性:
主要发现
-
尾部物品性能显著提升:EISAM能够显著改善长尾物品的推荐效果,缩小头部与尾部之间的性能差距。
-
整体质量保持:在提升尾部性能的同时,EISAM不会损害整体推荐质量,实现了"双赢"。
- 首个系统性解决方案:EISAM建立了LRS长尾问题的首个系统性解决方案,为该领域的后续研究奠定了基础。
实验意义
这些实验结果具有重要的实践价值:
- 对于电商平台,可以更好地推荐长尾商品,提升长尾商品曝光和销量
- 对于内容平台,可以改善冷门内容的推荐效果,促进内容生态的多样性
- 对于任何使用LLM作为推荐骨干的系统,EISAM提供了一种即插即用的优化方案
总结与展望
EISAM的提出标志着LRS长尾问题研究的重要突破。通过揭示LRS中双重长尾的存在,并提出针对性的优化方法,研究者为这一新兴领域奠定了坚实的理论基础和实践方案。
关键启示:
-
LLM并非万能:即使拥有强大的预训练能力,LRS仍需要专门的长尾优化策略。
-
细粒度正则化的价值:物品级优化能够更精准地解决长尾问题,相比粗粒度的全局方法更具优势。
- 理论与实践的结合:EISAM既有坚实的理论支撑,又在实践中表现出色,为后续研究提供了良好范例。
未来,随着LRS在工业界的广泛应用,如何进一步优化长尾性能、如何平衡多样性与准确性、如何在大规模场景下高效部署EISAM,都是值得探索的方向。
来源:arXiv:2603.12752
标签:LLM推荐系统,长尾问题,锐度感知最小化,推荐算法
收起阅读 »LLM Architecture Gallery:主流大模型架构可视化对比
LLM Architecture Gallery:主流大模型架构可视化对比
本文整理自 Sebastian Raschka 的 LLM Architecture Gallery,为研究者和工程师提供清晰的大模型架构参考。
概述
随着开源大语言模型(LLM)生态的快速发展,理解不同模型的架构差异变得越来越重要。Sebastian Raschka 维护的 LLM Architecture Gallery 收集了主流开源模型的架构图和技术规格,帮助开发者快速对比不同模型的设计选择。
项目地址:https://sebastianraschka.com/llm-architecture-gallery/
主要模型架构对比
DeepSeek-V3 / R1
- 规模: 671B 总参数,37B 激活参数
- 架构: 稀疏 MoE(Mixture of Experts)
- 注意力机制: MLA(Multi-head Latent Attention)
- 关键特性:
- 使用密集前缀(dense prefix)+ 共享专家(shared expert)
- 在推理时保持大模型性能的同时降低计算成本
OLMo 2
- 规模: 7B 参数
- 架构: Dense Decoder
- 注意力机制: MHA with QK-Norm
- 关键特性:
- 使用残差内后归一化(inside-residual post-norm)
- 不同于传统的预归一化(pre-norm)布局
Llama 3
- 规模: 8B 参数
- 架构: Dense Decoder
- 注意力机制: GQA(Grouped Query Attention)with RoPE
- 关键特性:
- 作为预归一化基线模型
- 在相似规模下比 OLMo 2 更宽
架构设计趋势
1. MoE 成为大模型标配
DeepSeek-V3/R1 的成功证明了稀疏 MoE 架构的可行性。通过路由机制选择性地激活部分专家网络,MoE 模型可以在保持推理效率的同时显著扩展模型容量。
2. 注意力机制演进
- GQA(Grouped Query Attention): 减少 KV 缓存,提升推理效率
- MLA(Multi-head Latent Attention): DeepSeek 提出的压缩注意力机制
- QK-Norm: 稳定训练过程的查询-键归一化
3. 归一化策略多样化
从传统的 Pre-Norm 到 OLMo 2 的 Post-Norm,不同模型在归一化位置的选择上各有取舍,反映了训练稳定性和模型性能之间的权衡。
对搜索系统的启示
这些架构创新对构建 AI 搜索系统具有重要参考价值:
- 推理效率优化: GQA 和 MLA 等机制可以显著降低检索时的延迟
- 模型压缩: MoE 的路由机制启发了检索系统的分层索引设计
- 多模态扩展: 统一的架构设计便于集成文本、图像等多种模态的编码器
参考资源
来源: Sebastian Raschka's LLM Architecture Gallery (2026-03-15 更新)
LLM Architecture Gallery:主流大模型架构可视化对比
本文整理自 Sebastian Raschka 的 LLM Architecture Gallery,为研究者和工程师提供清晰的大模型架构参考。
概述
随着开源大语言模型(LLM)生态的快速发展,理解不同模型的架构差异变得越来越重要。Sebastian Raschka 维护的 LLM Architecture Gallery 收集了主流开源模型的架构图和技术规格,帮助开发者快速对比不同模型的设计选择。
项目地址:https://sebastianraschka.com/llm-architecture-gallery/
主要模型架构对比
DeepSeek-V3 / R1
- 规模: 671B 总参数,37B 激活参数
- 架构: 稀疏 MoE(Mixture of Experts)
- 注意力机制: MLA(Multi-head Latent Attention)
- 关键特性:
- 使用密集前缀(dense prefix)+ 共享专家(shared expert)
- 在推理时保持大模型性能的同时降低计算成本
OLMo 2
- 规模: 7B 参数
- 架构: Dense Decoder
- 注意力机制: MHA with QK-Norm
- 关键特性:
- 使用残差内后归一化(inside-residual post-norm)
- 不同于传统的预归一化(pre-norm)布局
Llama 3
- 规模: 8B 参数
- 架构: Dense Decoder
- 注意力机制: GQA(Grouped Query Attention)with RoPE
- 关键特性:
- 作为预归一化基线模型
- 在相似规模下比 OLMo 2 更宽
架构设计趋势
1. MoE 成为大模型标配
DeepSeek-V3/R1 的成功证明了稀疏 MoE 架构的可行性。通过路由机制选择性地激活部分专家网络,MoE 模型可以在保持推理效率的同时显著扩展模型容量。
2. 注意力机制演进
- GQA(Grouped Query Attention): 减少 KV 缓存,提升推理效率
- MLA(Multi-head Latent Attention): DeepSeek 提出的压缩注意力机制
- QK-Norm: 稳定训练过程的查询-键归一化
3. 归一化策略多样化
从传统的 Pre-Norm 到 OLMo 2 的 Post-Norm,不同模型在归一化位置的选择上各有取舍,反映了训练稳定性和模型性能之间的权衡。
对搜索系统的启示
这些架构创新对构建 AI 搜索系统具有重要参考价值:
- 推理效率优化: GQA 和 MLA 等机制可以显著降低检索时的延迟
- 模型压缩: MoE 的路由机制启发了检索系统的分层索引设计
- 多模态扩展: 统一的架构设计便于集成文本、图像等多种模态的编码器
参考资源
来源: Sebastian Raschka's LLM Architecture Gallery (2026-03-15 更新)
收起阅读 »
