Skip to content

Add grounded Dozer + LangChain card advisor - #143

Open
litbitrim wants to merge 2 commits into
getdozer:mainfrom
litbitrim:bounty/1690-grounded-card-advisor
Open

Add grounded Dozer + LangChain card advisor#143
litbitrim wants to merge 2 commits into
getdozer:mainfrom
litbitrim:bounty/1690-grounded-card-advisor

Conversation

@litbitrim

@litbitrim litbitrim commented Aug 9, 2026

Copy link
Copy Markdown

/claim getdozer/dozer#1690
/claim #1690

Summary

  • Add a complete banking card-advisor sample backed by four synthetic datasets and two minimal Dozer APIs.
  • Enforce age, income, credit-score, account-status, and risk constraints before vector ranking.
  • Integrate deterministic local retrieval plus an optional LangChain/Chroma vector-store path.
  • Add an optional LangChain/OpenAI conversational explanation path that receives only the already-selected product and minimized customer features; the LLM cannot change eligibility or selection.
  • Attach field-level provenance and reject prompt-injection/PII input before customer retrieval.
  • Support fixture and live Dozer gateways, JSON CLI output, and an interactive chat mode.

Why this implementation is different

The sample fails closed on malformed or non-finite financial data, uses Dozer's POST query filter rather than loading all customer rows, never exposes raw transaction APIs, and keeps hard eligibility outside both the LLM and vector database. It also includes a deterministic retrieval evaluation and explicit security tests.

Verification

  • python -m unittest discover -s tests -v — 41 passed
  • python -m tests.eval_retrieval — hit-rate@3 1.0, MRR 1.0
  • fixture JSON CLI and interactive chat smoke tests — passed
  • python -m compileall -q app tests — passed
  • git diff --check — passed

The dependency-free fixture path was executed locally. The Dozer configuration and optional hosted-LLM path are documented and contract-tested; no external API key or live Dozer binary was used for verification.

AI assistance was used for implementation and review; every submitted change and test result was independently checked.

Demo

@litbitrim

Copy link
Copy Markdown
Author

/claim getdozer/dozer#1690

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant