Omar Khattab
lateinteraction.bsky.social
Omar Khattab
@lateinteraction.bsky.social
Incoming asst professor at MIT EECS, Fall 2025. Research scientist at Databricks. CS PhD @StanfordNLP.bsky.social. Author of ColBERT.ai & DSPy.ai.
Reposted by Omar Khattab
Drew’s post is well worth reading as DSPy seems to be a missing link in thinking about LLM usage. Very readable and interesting. www.dbreunig.com/2025/06/10/l...

Thank you @simonwillison.net
October 6, 2025 at 11:42 AM
Reposted by Omar Khattab
If you've been trying to figure out DSPy - the automatic prompt optimization system - this talk by @dbreunig.bsky.social is the clearest explanation I've seen yet, with a very useful real-world case study www.youtube.com/watch?v=I9Zt...

My notes here: simonwillison.net/2025/Oct/4/d...
Let the LLM Write the Prompts: An Intro to DSPy in Compound AI Pipelines
YouTube video by Databricks
www.youtube.com
October 4, 2025 at 11:05 PM
Reposted by Omar Khattab
#pydatabos interesting! How the Arbor library works under the hood hand in hand with DSPy
October 15, 2025 at 11:42 PM
premature optimization is the sqrt of all evil
#pydatabos one line motivation for using DSPy!
October 29, 2025 at 4:26 PM
Reposted by Omar Khattab
#pydatabos one line motivation for using DSPy!
October 15, 2025 at 11:56 PM
Reposted by Omar Khattab
Stop what you are doing and try out GEPA now!

"GEPA: Reflective Prompt Evolution Can Outperform Reinforcement Learning" presents such elegant ideas by a collection of amazing researchers!

Here is a tldr of how it works:
October 21, 2025 at 3:03 PM
Btw there’s no trouble in storage at all either.

ColBERT vectors are often 10 bytes each. Ten bytes. That’s like 4 numbers.

It’s not “many vectors work better than one vector”. It’s “set similarity works better than dot product”.

Even with the same storage cost.
September 28, 2025 at 2:20 AM
Reposted by Omar Khattab
colbert-muvera-micro a 4M(!!) late interaction model

late interaction models do embedding vector index queries and reranking at the same time leading to far higher accuracy

huggingface.co/NeuML/colber...
September 19, 2025 at 11:15 AM
Reposted by Omar Khattab
Reposted by Omar Khattab
Here's the write up of my Data+AI Summit talk on the perils of prompts in code and how to mitigate them with DSPy. www.dbreunig.com/2025/06/10/l...
Let the Model Write the Prompt
Notes from a talk I delivered at the 2025 Data + AI Summit, detailing the problem with prompts in your code and how DSPy can make everything better.
www.dbreunig.com
June 15, 2025 at 4:57 PM
Reposted by Omar Khattab
Have you heard the news? #MLflow now supports tracking for DSPy optimization workflows—just like it does for #PyTorch training!

Keep reading to see what this means for your #LLM projects… 👇

#opensource #dspy #oss
May 30, 2025 at 3:08 PM
Reposted by Omar Khattab
📣 TODAY at 4PM PT - MLflow Community Meetup!

🔗 Register today 👉 lu.ma/mlflow423

Join the global MLflow community for two exciting tech deep dives:
🔹 MLflow + #DSPy Integration
🔹 Cleanlab + #MLflow

🎥 Streaming live on YouTube, LinkedIn, and X
💬 Live Q&A with the presenters

#opensource #oss
MLflow Community Meetup | April 23 · Luma
Join us for the next MLflow Community Meetup — Wednesday, April 23 at 4PM PT! We’re bringing two exciting presentations to the community: 🔹 MLflow + DSPy…
lu.ma
April 23, 2025 at 7:21 PM
Reposted by Omar Khattab
MLflow now supports tracking for #DSPy (Community) optimization — just like it does for @pytorch.org training! 🙌

#MLflow is the first to bring full visibility into DSPy’s prompt optimization process. More observability, less guesswork.

Get started today! ➡️ medium.com/@AI-on-Datab...

#opensource
April 21, 2025 at 7:20 PM
Reposted by Omar Khattab
Join us for the next MLflow Community Meetup — Wednesday, April 23 at 4PM PT! 🗓️

🔹 Explore the new MLflow + #DSPy integration
🔹 Learn how Cleanlab adds trust to AI workflows with MLflow

💬 Live Q&A + demos
📺 Streamed on YouTube, LinkedIn, and X
👉 RSVP: lu.ma/mlflow423

#opensource #mlflow #oss
MLflow Monthly Meetup · Luma
Join us for the next MLflow Community Meetup — Wednesday, April 23 at 4PM PT! We’re bringing two exciting presentations to the community: 🔹 MLflow + DSPy…
lu.ma
April 15, 2025 at 7:51 PM
Nice work! For history:

dspy.ai/api/primitiv...
History - DSPy
The framework for programming—rather than prompting—language models.
dspy.ai
April 6, 2025 at 9:54 PM
This was built by a long-time DSPy community member!
March 4, 2025 at 12:34 AM
Yes there's an evals crisis, but evaluating *models* is not even the right question most of the time

LangProBe from Shangyin Tan, @lakshyaaagrawal.bsky.social, Arnav Singhvi, Liheng Lai, @michaelryan207.bsky.social et al begins to ask what complete *AI systems* we should build & under what settings
🧵Introducing LangProBe: the first benchmark testing where and how composing LLMs into language programs affects cost-quality tradeoffs!

We find that, on avg across diverse tasks, smaller models within optimized programs beat calls to larger models at a fraction of the cost.
March 3, 2025 at 7:42 PM
Reposted by Omar Khattab
🧵Introducing LangProBe: the first benchmark testing where and how composing LLMs into language programs affects cost-quality tradeoffs!

We find that, on avg across diverse tasks, smaller models within optimized programs beat calls to larger models at a fraction of the cost.
March 3, 2025 at 6:59 PM
It doesn't help that the we in ML often only design abstractions leak all kinds of implementation details. Folks often define ML itself in terms of techniques, not problems!

But it's prematurely abstracting that leads to the bitterness of wasted effort, and not "modularity doesn't work for AI". 2/2
February 26, 2025 at 10:00 PM
Composition & abstraction are the foundations of CS, but are clearly absent in modern ML.

It's not that they're not crucial for intelligent software. But it takes building many half-working systems to abstract successfully, and it takes good abstractions to have primitives worth composing.

🧵1/2
February 26, 2025 at 10:00 PM
4) By default, IR methods that use "multiple vectors" (e.g., cross-encoders) are unscalable. It seems like a necessary tradeoff, but the fascinating thing in late interaction is that it's easy to implement in asymptotically sub-linear ways, thanks to pruning.

Hope this was useful!
February 26, 2025 at 7:14 PM
3) "Multi-vector" makes it sound like these approaches win because they store "more stuff".

But that's not true: if you look at how aggressive ColBERTv2 representations are compressed, it's often ~20 bytes per vector (like 5 floats), which can be smaller than popular uncompressed single vectors!
February 26, 2025 at 7:14 PM
For dot products, every time you "fix" one query--document pair, you likely break so many other pairs by moving the query and/or document representations.

For ColBERT, you typically *fix* more than you break because you're moving *tokens* in a much smaller (and far more composable!) space.
February 26, 2025 at 7:14 PM
The problem isn't the vector representation, it's the **learnability of the scoring function**.

A dot product is just very hard to learn. An intuition I learned from Menon et al (2021) is that:
February 26, 2025 at 7:14 PM