xerj-org/xerj

来源
GitHub
首次上榜日期
领域
RAG 与检索
GitHub 星标数
4,248
主要语言
Rust
网站
xerj.org (在新标签页中打开)

本页介绍外部开源仓库,并非 HDATF 产品。

xerj-org/xerj

它做什么

XERJ是为AI编码智能体等程序索引本地文件夹的Rust搜索引擎,以单个静态可执行文件发布,并且实现了Elasticsearch REST API,因此现有的Elasticsearch客户端和Kibana可以直接连接。README所说的主要用途是reference coding,即智能体克隆与任务相近的开源项目并建立索引,再以带有文件和行号的片段形式检索这些项目解决问题的方法,用来代替grep找到的整个文件。xerj autoindex会把文件夹中的文件无需schema地按类型建成索引,源代码用tree-sitter解析并保留符号和行号,还能处理PDF、XLSX和邮件等文件。搜索支持BM25全文检索、向量kNN和hybrid查询,/_memory API把智能体的记忆按namespace分别存入独立索引,并可按关键词、语义或向量召回。xerj mcp命令是一个提供13个工具的stdio MCP服务器,它把调用转发到另外启动的node上,而xerj init会把XERJ注册到Claude Code和Cursor中。安装方式是安装脚本或适用于Linux、macOS、Windows的可执行文件,默认embedder是离线的feature hashing,启用neural embedder时首次会下载约90 MB的模型文件。快速入门中使用的--insecure选项会同时关闭TLS和API key认证,使任何能访问该端口的人都成为superuser,以其他方式启动时则会用管理员key开启认证。SECURITY_MODEL.md列出了默认关闭TLS、没有字段级和文档级安全及静态数据加密、共享链接会向guest开放整个索引等限制。根据RERANK.md,默认node没有对外连接和telemetry,而把文档内容发送到外部的功能,即通过TypeSafe AI的Jev进行的重排序(rerank)、proxy embedding、WAL tap和S3 backend,只有在运营者开启后才会工作。在README引用的项目自身研究(4种语言的8个任务)中,使用XERJ的智能体输出token为9,982个,少于以grep为主的智能体的26,477个,两者都解决了16次中的16次。README写明这一收益出现在私有代码或训练截止之后的代码上,对于模型已经熟悉的流行库则没有效果甚至有害,而仓库描述中token减少40倍的说法未能在仓库文件中找到依据。调研时的最新版本是2026-10-12发布的release candidate v1.0.0-rc.95,LICENSE文件和GitHub元数据均为Apache-2.0,提交代码贡献需要签署CLA。

许可证

Apache-2.0 宽松许可,含专利授权。可商用,需保留声明并注明修改。

同领域的其他仓库

  • ARahim3/DigUp
    DigUp是一款在macOS 14及以上的Apple Silicon Mac上常驻菜单栏的应用,按内容搜索用户所选文件夹中的文件。目标用户是想用自己的话描述来查找照片、截图、PDF、文档、录音和视频的人,它是采用MIT许可证的免费开源软件。应用在本机运行Google DeepMind的多模态embedding模型(把文本、图像和声音转换为可相互比较的数值向量的模型)EmbeddingGemma 2。它按画面内容读取图像,用Apple文字识别连同文字一起读取截图,PDF包括扫描件在内按页读取,音频按相互重叠的30秒片段读取,视频则每隔几秒取一帧并连同音轨一起读取。搜索结果会在应用支持的范围内打开到对应位置,录音和视频会在QuickTime Player或IINA中从对应时刻开始播放,PDF则在Preview中打开,并把匹配页面中的词填入搜索栏。在内部,llama.cpp在Mac的GPU上运行8位版EmbeddingGemma 2,为每张图片、每一页、每段文字和每段声音生成的768维向量,与FTS5关键词索引一起存入一个SQLite文件。搜索时会把查询向量与所有已存向量比较,并给字词完全一致的结果加分,因此文件名、文档正文和截图中的发票号和错误代码也能按原样找到。可以通过GitHub Releases的DMG或Homebrew安装,无需账号,首次启动时从Hugging Face下载固定版本的模型文件共865MB,并核对大小和SHA-256。据README所述,索引内容只留在Mac内,网络只用于这次下载和可以关闭的每日一次更新检查,应用只读取文件,并跳过密钥文件、证书和.ssh等隐藏文件夹。选好文件夹后,首次索引在几百个文件时需要几分钟,在很大的下载文件夹上约需一小时,从源码构建还会生成digup命令行工具,可以以JSON lines向其他程序返回搜索结果。已公开的发行版是2026年10月的0.6.0和0.6.1,只有macOS DMG,Windows和Linux版本没有公开发行,只存在于代码中。项目评测只涵盖英语、孟加拉语和阿拉伯语,而字词精确匹配无法把中文、日文、泰文这类书写时不用空格的语言切分成词。
  • yifanfeng97/Hyper-Extract
    Hyper-Extract是一个从文档中抽取事实和关系、并转换为知识图谱等结构化数据的Python库,同时提供he CLI和he-mcp服务器。它面向希望把分散的文档整理成可用于检索和问答的知识数据的开发者和分析人员。它可直接读取txt和md文件,加装基于markitdown的可选安装项后还能读取PDF、DOCX、PPTX和XLSX。结果以列表、集合、图、超图、时间图、空间图、时空图和文档集合等结构保存,并可导出为Obsidian、GraphML、CSV、JSON-LD和Cypher格式。用户可从金融、法律、医疗、工业等领域的YAML模板,以及GraphRAG、LightRAG、Hyper-RAG和KG-Gen等抽取方法中选择使用。抽取需要同时具备支持function calling(以固定格式接收回答的调用方式)的LLM和兼容OpenAI的embedding模型。根据服务商文档,Anthropic、Gemini和DeepSeek需要另外搭配embedding模型,阿里云百炼的qwen-max和deepseek-v3只支持json_object格式,因此无法使用。它为每个文档记录来源和内容哈希,只重新处理有变化的文档,也可以单独撤回来自某一个文档的内容。he-mcp服务器只进行读取和导出,提供模板列表、信息查看、检索、问答和导出等tool。知识模板的语言选项只有中文和英文两种,指定目录时只读取该目录第一层的文件,没有文字层的PDF需要先经过OCR。
  • mongodb-developer/mongodb-jvm-showcase
    面向 Java 和 Kotlin 的独立 MongoDB 示例项目集合。涵盖驱动程序、框架、RAG 和向量搜索示例。
  • hydra-db/hydradb
    这是以S3兼容对象存储持久保存数据的Rust分布式图数据库,提供OpenCypher查询、Bolt连接及HTTPS API,并将查询节点和索引器分为独立计算角色。
  • realZachi/pg-jev
    这是一个通过TypeSafe的Jev评估自然语言条件,对行进行筛选、排序和分类的PostgreSQL扩展。它使用返回的概率,而非生成文本。

只收录进入 Trendshift 排行榜的仓库,榜单仅用于寻找候选项目,不转载名次。说明、许可证和星标数来自各 GitHub 仓库。解读是我们自己的判断。我们尚未测试这些项目,上榜并不证明质量。

在 GitHub 上查看 (在新标签页中打开)