Independent portfolio demonstration. All data is synthetic. Not affiliated with, or endorsed by, any financial institution.
Settings
Retrieval, grounding checks, schema validation, scoring and evaluation all execute normally. Only text generation is served from recordings captured against a real model.
replaygpt-4o-miniWhich vectoriser is behind the search results, and what that means for them.
local-hashed-lexicalRetrieval limitation
v1.4.0One line in .env changes the whole system's behaviour.
.env.example to .env.OPENAI_API_KEY or ANTHROPIC_API_KEY.python -m scripts.doctor, which prints the resolved configuration without revealing any secret.Setting a key also switches retrieval from the local lexical vectoriser to real embeddings, so re-run make seed to rebuild the index with comparable vectors.
The distinction matters for reading any number in this application.
Replayed: text generation only. Responses were captured from a real model against these exact prompts, and carry their original model name, token counts and latency.
Executed normally: chunking, retrieval, grounding verification, schema validation, cross-reference integrity, the uncertainty model, scoring, escalation rules and the whole evaluation harness.
A replayed response that cites evidence which does not exist is rejected by the same controls that would reject it live.
Every document in this deployment is synthetic and was written for the demonstration. No real counterparty data is present, and the application is not affiliated with or endorsed by any financial institution.
Authentication is deliberately absent from this prototype. docs/architecture/security.md records exactly what would need to change before this ran anywhere real.