XERJ零配置自动索引教程一条命令让PDF、CSV、SQLite和日志全部可搜索【免费下载链接】xerjXERJ is the new way for AI to search data. Its autoindex capability activates agents to know your data without the token waste of grep and sed. One command indexes code, docs, logs and PDFs for search, RAG, security audits and agent memory, using 40x fewer tokens than grep. Elasticsearch compatible, so existing clients just work.项目地址: https://gitcode.com/GitHub_Trending/xe/xerjXERJ 是一款面向 AI 时代的搜索引擎其核心特性xerj autoindex零配置自动索引能力让你只需一条命令就能把混杂着 PDF、CSV、SQLite、JSONL 日志的整个文件夹变成可搜索、可聚合、可向量检索的索引。无需手写 mapping、无需编写解析脚本它比 grep 少消耗约 40 倍的 token并兼容 Elasticsearch API现有 ES 客户端可以直接工作。本教程面向新手带你从启动本地服务到完成第一次查询全程只有 3 条核心命令。为什么需要 XERJ 零配置自动索引传统方式下当你拿到一个什么都有的文件夹应用日志、传感器导出的 CSV、事故复盘 PDF、业务数据库 SQLite想回答哪个服务报错最多导出文件里的最高温度是多少这类问题时你通常需要传统做法痛点逐格式写解析脚本CSV 分隔符、小数逗号、日期编码都要猜grep sed 翻文件AI Agent 消耗大量 token还容易漏手工建索引写 mapping字段类型、keyword/text 语义全靠人工判断xerj autoindex的思路完全不同它按文件内容嗅探格式magic bytes 和结构从不相信扩展名覆盖 JSONL、JSON、CSV自动嗅探分隔符、日志、SQL dump、SQLite、PDF、DOCX、HTML、XML、YAML、纯文本、gzip 等 13 大类格式自动推断字段类型、日期编码与 keyword/text 语义然后直接写入显式 mapping 并流式索引。垃圾文件只会被跳过并记录原因永远不会致命。 官方完整演练含真实运行输出见 docs/recipes/zero-config-indexing.md可复制脚本见 docs/examples/autoindex-semantic-search/autoindex_semantic.sh。准备工作启动本地 XERJ 服务60 秒XERJ 是一个单文件静态二进制不需要 JVM、不需要单独的向量数据库、不需要 embedding API key。第 1 步启动本地开发节点xerj --insecure --data-dir ~/xerj-data--insecure关闭 TLS 与 API key 认证仅限本机单人开发场景使用。--data-dir索引数据存储目录。注意务必放在你将要 autoindex 的文件夹之外否则引擎会把索引自身也索引进去。第 2 步确认节点已就绪默认 ES 兼容端口是9200节点绑定在127.0.0.1curl -s http://localhost:9200/ | head如果你的部署启用了鉴权不带--insecure启动时默认开启首个 admin key 会写入data_dir/admin.key客户端需要带上它export XERJ_API_KEY$(cat ~/xerj-data/admin.key)一条命令索引整个文件夹xerj autoindex第 3 步指向任意文件夹执行自动索引xerj autoindex ./my-folder就这一条命令没有必填参数。仓库里就带了一个演示文件夹 demo/data/support-folder/内含faq.txt、plans.csv、tickets.ndjson等混合格式文件可以直接试xerj autoindex demo/data/support-folder执行时它会自动完成 4 件事walk sniff遍历文件夹自动尊重.gitignore、.xerjignore及内置排除列表node_modules/、target/等永远不会被索引infer每文件抽样默认 500 条推断 schema——例如71,5这种小数逗号的字符串会被强制转换为double日期字符串变成真正的date类型字段低基数列变成keyword支持精确过滤index多线程并行写入_id幂等重复运行不会产生重复数据catalog把学到的所有内容写入autoindex-catalog索引让这个文件夹里到底有什么也成为一条查询。真实输出大致如下autoindex: 4 files (0 MB) under /tmp/xerj-pubpass/sample phase A: sniffing sampling 4 files… phase A: 3 datasets inferred, 1 junk/skipped files phase B: indexing 3 files with 8 workers → http://localhost:9280 done in 0.2s — 3 datasets, 5801 records live, 0 junk records, 1 junk/skipped files ax-logs 5000 docs ax-exports 800 docs ax-docs 1 docs如何理解退出码0表示完全干净3表示完成但有垃圾文件被跳过这同样是成功1才是错误。想先预览推断计划而不实际写入加上--dry-runxerj autoindex ./my-folder --dry-run查看数据地图autoindex map索引完成后问引擎自己学到了什么xerj autoindex map它会输出一份数据简报每个数据集的记录数、推断的字段类型与真实示例值、时间范围、可直接发送的示例查询以及被跳过文件的垃圾报告。加上--json可拿原始 catalog 数据xerj autoindex status则显示 journal 进度与线上索引的实时条数。在 XERJ Console 中这些 autoindex 结果会以数据集卡片形式呈现——每个数据集展示格式、字段类型如body为semantic_text、title为keyword并提供可直接运行的 term / match / hybrid 示例查询搜索你的 PDF、CSV、SQLite 和日志所有数据集的索引名遵循prefix-dataset-slug格式--prefix默认ax查询走标准的 Elasticsearch 兼容 API——你的 Kibana、Logstash、Python ES 客户端无需任何改动。查最高温度CSV 列自动转成了 doublecurl -s -X POST http://localhost:9200/ax-exports/_search \ -H Content-Type: application/json \ -d {size:0,aggs:{temp:{stats:{field:temperatur_c}}}}返回结果中max: 99.0耗时 2 ms——而索引前没有人知道这个文件是分号分隔、带小数逗号的刁钻CSV。统计哪个服务报错最多日志的 level/service 被推断为 keywordcurl -s -X POST http://localhost:9200/ax-logs/_search \ -H Content-Type: application/json \ -d {size:0,query:{term:{level:ERROR}},aggs:{by_service:{terms:{field:service}}}}偷懒版一行命令全文搜索。如果你的环境里有 shellxerj search会自己找到节点、按定义优先排序并打印文件:行号 上下文xerj search 数据库连接池耗尽想在仪表盘上看聚合结果可以为任意索引建一个面板中断了怎么办断点续传且绝不重复这是新手最关心的问题答案可以放心随时重跑同一条命令。autoindex 按文件写 journal默认~/.xerj/autoindex/hash/并用确定性_id去重再次运行会打印resuming from journal … (N files already done)只处理剩余文件即使中途被kill -9恢复后最终条数与一次性跑完完全一致不产生重复文件新增/修改后重跑即增量同步加--fresh可忽略 journal 全量重来幂等 id 仍保证不重复。进阶参数与常见问题速查参数 / 场景说明--dry-run只打印推断计划不实际索引大文件夹先估算再动手--workers N并行度上限遇 429 背压会自动降并发并在空闲后探回--prefix myds自定义索引前缀隔离不同语料库--sample N每文件抽样条数默认 500类型只出现在样本之后时调大--code-analyzer code对代码数据集启用标识符感知的 code 分析器--no-semantic纯 BM25 keyword不建向量字段归档 tar.gz不会被解压记录为 junk 并给出解压建议语义检索想要真语义默认内置嵌入器是词法级的以--embed-mode neural启动服务器内置 BERTall-MiniLM-L6-v2首次使用自动下载约 90 MB即可按语义检索⚠️ 诚实的边界内置词法嵌入器提供的是混合检索词汇 向量排序而非同义词级别的语义理解推理基于抽样极端编码如 Shift-JIS可能乱码TB 级超大文件夹暂不建议直接指向它。更多细节见 docs/recipes/zero-config-indexing.md 的 Notes and honest limits 一节。总结步骤命令启动本地节点xerj --insecure --data-dir ~/xerj-data一条命令索引文件夹xerj autoindex folder查看数据地图xerj autoindex map查询ES 兼容POST /ax-*/_search或xerj search ...至此你用一个二进制、三条命令就让 PDF、CSV、SQLite 和日志全部可搜索、可聚合、可续传——这正是 XERJ 零配置自动索引的完整闭环。【免费下载链接】xerjXERJ is the new way for AI to search data. Its autoindex capability activates agents to know your data without the token waste of grep and sed. One command indexes code, docs, logs and PDFs for search, RAG, security audits and agent memory, using 40x fewer tokens than grep. Elasticsearch compatible, so existing clients just work.项目地址: https://gitcode.com/GitHub_Trending/xe/xerj创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考