~/talk

Lessons learned in bringing a RAG chatbot with access to 50k+ diverse documents to production

Talkat PyCon DE & PyData 2025 · on Thursday, 2025-04-24· at 16:55· Titanium3· [large-language-models, machine-learning]
name:Nico Mohr
links:none on file
slides:none on file

Production RAG system at Merck Electronics indexes 50,000+ documents from SharePoint and experiment writeup DBs, built on Palantir Foundry with PySpark/Polars, Quadrant vector store, OpenAI dense embeddings plus BM25 sparse for hybrid search, Streamlit UI on AWS Fargate, Langfuse tracing and permission-aware filters. CI runs ~130 PyTest cases including keyphrase checks and LLM-as-judge evaluations. Outcome: ~150 users, ~80k documents live, higher test pass rates after adding hybrid search, but months of engineering with 1–3 devs.

AI-written summary · about

  1. 0:00Introduction and agenda
  2. 1:28Use case at Merck
  3. 4:26Data ingestion pipeline
  4. 13:08Chatbot workflow
  5. 22:09Evaluation framework
  6. 29:20Development workflow
  7. 34:06Lessons and takeaways
  8. 39:18Q&A session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.