1 分•作者: Tommkruix123•18 天前
这个工具最初是我为了回答“AI 代理是否会偏离你的架构约定,还是需要强制执行?”这个问题而进行的一项研究。因此,我开始构建一个基准测试来验证这个假设,在我测试的范围内,AI 代理并没有偏离,我不得不停止了这项研究。为了重用我在该研究中学到的知识,我开始尝试通过代码审查和持续集成(CI)来捕获工程师的回归错误,并用证据来建立代码库已经遵循的约定,而不是让它们只存在于某人的脑海中。 在我开始构建这个工具之前,我主要通过手动编写规则和为我想要使用的每个 Linter 编写文档。但在我的研究之后,该工具自动化了这个过程,我很高兴看到它也能帮助其他工程师。我在 GitHub 上对 92,861 个真实的公共 TypeScript 存储库运行了完整的软件包工作流程(扫描、推荐),并且在每个存储库上都成功完成,没有出现任何崩溃,并且可逆的安装/卸载往返也得到了验证。我将非常感谢您对它为您的存储库推断出的规则以及它如何帮助您强制执行或不强制执行这些规则的任何反馈。 该研究的链接是:https://github.com/Tommkruix/agentrulebench,Archprint 的链接是:https://github.com/Tommkruix/archprint。
2 分•作者: coolArnav•18 天前
人们一直在使用嵌入模型进行检索增强生成(RAG)/语义检索。然而,当出现一个更新、更理想的模型时,重新嵌入数据库中的所有文档会产生高昂的成本(包括时间和计算资源)。 不过,我发现了一种有趣的方法,可以避免这种前期的嵌入成本。 算法: 旧模型/索引 -> 检索 Top-K 文档 -> 用新模型对这些文档进行评分 -> 缓存/物化新嵌入 因此,与其一次性重建整个向量存储,不如继续从旧索引中检索,同时让新模型对这些候选文档进行重新排序。 这种方法在某些模型对上效果出奇地好(我在 H100 上测试了 63 种源到目标迁移,数据量高达 100 万文档)。 例如,在包含 100 万文档的 Natural Questions 数据集上: 原生 Qwen3-Embedding-8B:0.6812 nDCG@10 Qwen3-4B -> Qwen3-8B, K=50:0.6816 Qwen3-0.6B -> Qwen3-8B, K=50:0.6638 MiniLM -> Qwen3-8B, K=50:0.6486 (难点在于确定 K 值,我上面保持 K 值不变是为了展示迁移的可行性。) 您可以通过 pip 安装: pip install embedflow 代码在 GitHub 上: https://github.com/arnsri33/embedflow
1 分•作者: scosman•18 天前
一个有趣但有些傻气的项目:一个单一 HTML 文件组成的搜索引擎门户。它的目标是带回那种复古的 2005 年搜索体验:闪电般快速的链接列表,仅此而已。 它由 Keenable.ai 提供支持,这是一个新的搜索 API。您有两种隐私选项。1) 通过 Froogle.fyi 代理。Keenable 可以看到您的查询,但看不到您的 IP 或任何用户 ID。您的流量会与所有其他人的流量混合。这可能会受到速率限制,但无需任何设置。2) 直接访问:使用您自己的 Keenable API 密钥(每月免费 10 万次搜索),浏览器将直接调用 API。Froogle 无法看到您的查询,但 Keenable 会收到一个唯一的 ID。 尝试一下:https://froogle.fyi/ GitHub:https://github.com/scosman/froogle