DSPy

DSPy

用代码而非提示词驱动大模型

AI官网

应用介绍

做过 LLM 应用的都懂:一段提示词调了半天终于稳定,换个模型全崩;流水线里串了三四步,改一处就得把每段 prompt 重新手搓一遍,谁也说不清哪句话在起作用。DSPy 把这件事变回写程序:你用 Python 声明「输入什么、输出什么」的 Signature,把它们像函数一样组合起来,提示词由框架去生成和优化。

真正的杀手锏是优化器:给它一小批样例和一个评估指标,它会自动搜索更好的指令和示例,甚至微调权重,让同一段程序在换了模型之后重新调到最佳状态。斯坦福 NLP 出品,已经在 Databricks、Shopify、Dropbox 的生产环境里跑着。

软件功能



声明式 Signature:写一个类,标出 InputField 和 OutputField,比如从邮件里抽取活动名和日期,调用后直接拿到带字段的 Prediction 对象,不用自己写解析。

可组合模块:Predict、ChainOfThought、ReAct 等模块可以像搭积木一样拼成 RAG 流水线、分类器或 Agent 循环,每个模块都能单独替换和测试。

自动优化提示词:内置 GEPA、MIPRO 等优化器,按你的指标自动改写指令、挑选示例,不用再靠手感一句句试。

权重微调:同一套程序既能优化提示词,也能把效果蒸馏进小模型的权重,两者结合效果更好。

一行换模型:dspy.LM("openai/...") 换个字符串就能切到别家或本地模型,业务代码一行不动。

工具与 MCP:支持把函数和 MCP 工具交给 ReAct Agent 调用,还带 Python 解释器,适合做需要算一算的推理任务。

可观测:接入 MLflow 追踪每一次调用,流水线里哪一步出错一眼能看到。

应用截图