8000 xerj/demo at main · hpahm/xerj · GitHub
[go: up one dir, main page]

Skip to content

Latest commit

 

History

History
 
 

demo

README.md

⚠️ STALE — sales-engineer material from April 2026 (v1.0.0-rc.1). The numbers here are out of date (conformance was 1305/1329; it is now 1360/1363, and the RC1 ingest race and unfused-hybrid caveats it warns about are fixed). This kit pitches XERJ to enterprise buyers; it is not the guide to XERJ as an AI-agent tool. For that — how XERJ saves an AI coding agent time and tokens, with reproducible measurements — see demo/agent-gate/SCENARIOS.md and do 5A8B cs/TOKEN_USAGE.md. Kept for reference; refresh the numbers before any external use.

XERJ demo kit

This folder is a complete demo kit for sales engineers pitching XERJ to enterprises adopting AI (RAG, agents, internal copilots). Everything here is reproducible — every command was run on the demo machine while authoring; every claimed number has a receipts file behind it.

What's in here

Path What it is Audience
DEMO_RUNBOOK.md The five-act demo flow with copy-paste commands, expected outputs, and timing Sales engineer running the call
pitch/PITCH.md Discovery questions, three pitch arcs (5/10/45 min), 12-question objection bank, closing patterns Same SE plus account exec
scripts/setup.sh Build, start, wait-for-green Same SE, run before the call
scripts/teardown.sh Graceful stop, optional --purge for a clean slate Same SE, run after the call
data/ai_kb.ndjson 40-doc enterprise-AI knowledge base with 8-dim cosine vectors (hand-authored, real) Ingested by the runbook
data/generate_ai_kb.py Generator script — extend or regenerate the corpus SEs who want to customize per buyer
data/extras/generate_demo_corpus.py Reproducible (seed=42) generator for the synthetic LLM-telemetry / agent-memory / anomaly / ingest-event corpora that drive the AI / vector / agent / anomaly / ingest dashboards SEs running the full Xerj Console demo
data/extras/*.ndjson The synthetic NDJSON corpora produced by the generator above (chat-events, vector-ops, agent-memory, anomalies, ingest-events) Ingested into matching xerj indices for the dashboard demos

About the data shown in the Xerj Console dashboards. The demo blends three kinds of data, and we call out which-is-which everywhere:

  • Real public data — the logs-ssh-auth index is loaded from the logpai/loghub OpenSSH server log corpus that lives at engine/demo-data/ssh_one.ndjson (655 K real auth events; the demo ingests the first 50 K with timestamps shifted to the last 24 h so the dashboard's default time range catches them). This is real production traffic captured by the loghub project.
  • Hand-authored real corpus — data/ai_kb.ndjson is 40 enterprise-AI knowledge-base documents (RAG topics: chunking, hybrid search, agent memory, …) authored to demonstrate the kNN + dense_vector path. Real text, real 8-dim embeddings, just small.
  • Reproducible synthetic — the five data/extras/*.ndjson files (chat-events, vector-ops, agent-memory, anomalies, ingest-events) are generated by generate_demo_corpus.py with random.seed(42). Distribution shapes (model mix, latency means, error rate, diurnal QPS curve) are modelled on typical enterprise LLM ops; specific values are not from any real customer. We use synthetic here because we don't ship a real LLM-traffic capture, and the AI / vector / agent dashboards need that shape to render meaningfully.

Every dashboard's status pill says either LIVE · XERJ (data fetched from a running xerj engine on localhost:9200) or MOCK FALLBACK (the dashboard's backend adapter returned null because the live shape isn't wired yet). It is never both. There is no JS-hardcoded mock data presented as real numbers — when the pill says LIVE, every metric you see came out of an _search call to the engine reading data from /tmp/xerj-demo-data/segments/.

Five-minute first run

# From the repo root (the directory containing engine/Cargo.toml)
demo/scripts/setup.sh                                          # ~3-5 min first time, ~2s thereafter
curl -s localhost:9200/_cluster/health | jq                    # expect "status":"green"

Then open DEMO_RUNBOOK.md and start at §1.

Critical reminders before a live demo

  1. Build before the call. First-time cargo build --release is slow. Always do a setup.sh dry-run at least 30 minutes before the buyer dials in.
  2. Reset between buyers. demo/scripts/teardown.sh --purge then setup.sh again — this guarantees no cross-talk between demos.
  3. Read the gap list. §5.1 of the runbook is the gap list; §3 of the pitch is the objection bank. If you don't know both cold, don't take the call solo — pair with someone who does.
  4. The receipts file. engine/reports/2026-04-25T22-50-00_xerj_vs_elasticsearch_rerun.md is the one source-of-truth benchmark to link if a buyer wants methodology.

Per-persona compression cheat sheet

Persona Compress Expand
VP Eng / CTO Act 2 Act 5 (pilot ask)
Head of AI Infra Act 1 Act 2 (kNN, hybrid)
SRE / Platform Act 2 Act 3.1 (cold start), Act 4 (ops APIs)
CISO / Compliance Act 3 Act 4 (durability), Act 5.1 (be candid about RBAC)
CFO-influenced exec Act 2 Act 3.4 (disk), Act 5.2 (pilot economics)
0