xerj vs azure-search-openai-demo
Two of the top projects in RAG and search, side by side: who leads on each score part and who each one suits, then setup, license, activity and what each review found.
xerj
Elasticsearch-compatible search server that auto-indexes folders for coding agents
azure-search-openai-demo
Azure RAG chat reference on AI Search and Azure OpenAI
Verdict
xerj ranks higher, 61 to 57. Of the 5 score parts we measure for both, xerj leads on 2, azure-search-openai-demo on 1 and 2 are even.
- Adoptionazure-search-openai-demo leads by 15 points, 70 to 55: a wide gap.
- FreshnessEven at 100.
- Maintenancexerj leads by 14 points, 99 to 85.
- Easy to runxerj leads by 17 points, 17 to 0: a wide gap.
- Agent-readyEven at 30.
Pick xerj if you are
Developers giving coding agents local code and document search or memory
- Single static binary, no JVM; prebuilt for Linux, macOS and Windows on x86-64 and arm64
- Works with existing Elasticsearch clients pointed at localhost:9200; 1366/1369 ES-YAML conformance tests
Pick azure-search-openai-demo if you are
Teams on Azure wanting the vendor-maintained RAG starting point
- Optional Entra login with per-document access control and Cosmos DB chat history
- Evaluation, safety evaluation, monitoring and productionizing guides in docs/
| What we compare | xerj | azure-search-openai-demo |
|---|---|---|
| Score parts, out of 100 | ||
| Adoption | 55, popular | 70, popular |
| Freshness | 100, active | 100, active |
| Maintenance | 99, healthy | 85, healthy |
| Easy to run | 17, hard | 0, hard |
| Agent-ready | 30, minimal | 30, minimal |
| Facts from GitHub and the README | ||
| Stars | 5.6k | 7.8k |
| License | Apache-2.0 (permissive) | MIT (permissive) |
| Last commit | Oct 2026 | Oct 2026 |
| Last release | Oct 2026 | Oct 2026 |
| Language | Rust | Python |
| Docker | No | No |
| GPU | Not needed | Not needed |
| arm64 or Apple Silicon | Mentioned | Not stated |
xerj
XERJ is a single Rust binary that speaks the Elasticsearch API. `xerj autoindex <folder>` infers datasets from code, docs, logs, PDFs, SQLite and CSV, and creates one typed index per dataset, with tree-sitter symbols and line numbers for code. It supports BM25, kNN and hybrid search, a `/_memory` agent memory API, and a `xerj mcp` stdio server exposing 13 tools. Its main pitch is cutting agent token use by retrieving passages instead of reading files.
Who it is for: Developers giving coding agents local code and document search or memory
Strengths
- Single static binary, no JVM; prebuilt for Linux, macOS and Windows on x86-64 and arm64
- Works with existing Elasticsearch clients pointed at localhost:9200; 1366/1369 ES-YAML conformance tests
- Autoindex needs no schema; handles code, PDF, DOCX, XLSX, SQLite, mail and logs
- Default lexical embedder runs offline; air-gapped deployment recipe is documented
Weaknesses
- Token savings come from the project's own 16-run study; neutral to negative on popular libraries
- Default embedder is lexical feature-hashing; neural mode is opt-in and downloads about 90 MB
- `--insecure` quick start disables TLS and auth; every caller becomes a superuser
- Optional Jev rerank sends result text to TypeSafe's servers
- Rust, lexical embedder (default, offline), neural embedder (opt-in, ~90 MB download), Jev reranker (optional, external service)
azure-search-openai-demo
The canonical Azure RAG sample: a Python (Quart) backend and React frontend answering multi-turn questions over your documents with citations and a visible thought process, using Azure AI Search for retrieval and Azure OpenAI for generation. azd up provisions Container Apps, AI Search, Document Intelligence and Blob storage, with optional Cosmos DB chat history, Entra login with document ACLs, multimodal and speech. For teams already on Azure.
Who it is for: Teams on Azure wanting the vendor-maintained RAG starting point
Strengths
- Optional Entra login with per-document access control and Cosmos DB chat history
- Evaluation, safety evaluation, monitoring and productionizing guides in docs/
- Multimodal, speech and agentic retrieval are switchable features
- Commits within the last week; tests included
Weaknesses
- Cannot run locally until azd up has provisioned Azure resources
- Provisions paid services by default (AI Search, Document Intelligence); run azd down
- Azure OpenAI only; no other provider path
- README itself says not production-ready without extra security work
- Python, azure-openai
- Needs azure-subscription, azd, azure-ai-search, azure-openai, azure-document-intelligence, azure-blob-storage
More in RAG and search
Building with these?
We help teams pick an open-source AI stack and run it in production. Client work never changes a rank.