krypticmouse/DSRs
Performance centered DSPy rewrite to(not port) Rust
解决的问题
DSRs 为构建 LM 驱动的应用程序提供了一种高性能、类型安全的 DSPy 框架替代方案。它用程序化方法取代了手动提示工程,允许开发者使用训练数据和指标自动优化提示和管道结构。
如何工作
开发人员不编写静态提示,而是定义 Signature(输入/输出规范)和 Module(可组合的管道组件)。框架使用 Predictor 与语言模型交互(支持基于 API 和本地后端,如 Ollama)。
为了提升性能,DSRs 包含多个 Optimizers(如 COPRO、MIPROv2 和 GEPA),它们基于评估指标和训练示例迭代优化提示或生成新提示,从而有效“编译”管道以获得更高的准确性。
适用人群
需要 Rust 的性能、内存安全性和并发性来构建 LLM 应用的 Rust 开发者,以及希望从手动提示调优转向自动化、数据驱动优化流程的开发者。
主要亮点
- 自动提示优化:包含多个优化器(COPRO、MIPROv2、GEPA),可根据数据改进指令。
- 类型安全的签名:利用 Rust 的类型系统定义严格的 LM 交互输入/输出规范。
- 灵活的后端支持:支持多种 LM 提供商,包括 OpenAI 和通过 vLLM 或 Ollama 的本地模型。
- 内置评估功能:提供框架用于定义指标并在测试集上运行评估。
- 思维链(CoT):内置支持为任意签名添加推理步骤。
- 执行追踪:一个追踪系统,将数据流记录为有向无环图(DAG),用于调试和分析。
相关
- 项目
- 项目
- 项目
- 项目