Predict
v3.0.3Predict是DSPy中最基础的模块,用于执行简单的预测任务。它直接将输入映射到输出, 适合分类、回归等基础机器学习任务。
初始化参数
使用示例
方法详解
__call__(self, **kwargs)
执行预测任务的主要方法。
适用场景
适合使用
- • 简单的分类任务
- • 文本生成任务
- • 数据转换任务
- • 快速原型开发
不适合使用
- • 复杂推理任务
- • 多步骤问题求解
- • 需要外部工具的场景
- • 高精度要求的任务
相关模块
ChainOfThought
v3.0.3ChainOfThought模块通过生成中间推理步骤来提高答案的准确性。 它特别适合需要逻辑推理的复杂问题,能够显著提高模型的表现。
核心优势
- • 推理过程可见 - 可以查看模型的思考步骤
- • 准确性更高 - 通过逐步推理减少错误
- • 适合复杂问题 - 处理需要多步推理的任务
- • 易于调试 - 可以分析推理过程中的问题
使用示例
数学问题解决示例
最佳实践
- • 为复杂问题设计清晰的输入输出签名
- • 使用多个输出字段来分离答案和推理过程
- • 在调试时检查reasoning字段来理解模型思维
- • 结合优化器来进一步提升性能
ReAct
v3.0.3ReAct模块结合了推理和行动,可以与外部工具和环境交互,是构建AI Agent的理想选择。 它能够让AI系统在思考的同时采取行动,实现更复杂的任务处理。
初始化参数
使用示例
复杂Agent示例
ReAct最佳实践
- • 工具设计 - 工具函数应该有清晰的输入输出和错误处理
- • 迭代控制 - 设置合理的max_iters避免无限循环
- • 状态管理 - 考虑Agent的状态持久化和恢复
- • 性能监控 - 跟踪Agent的决策过程和工具使用情况
- • 安全性 - 验证工具输入,防止恶意操作
BootstrapRS
v3.0.3BootstrapRS优化器通过自举样例来优化模块的提示和权重。它从少量示例开始, 自动生成更多高质量的示例,然后使用这些示例来优化整个系统。
初始化参数
使用示例
高级配置示例
优化器选择指南
- • 有少量标注数据的任务
- • 需要快速原型验证的场景
- • 成本敏感的优化需求
- • 需要优化指令措辞的任务
- • 复杂的推理和决策任务
- • 对提示质量要求高的场景
- • 多步骤的复杂任务
- • 需要多种提示策略的场景
- • 高级AI应用开发
ProgramOfThought
ProgramOfThought模块通过生成和执行程序代码来解决复杂问题,特别适合需要精确计算和逻辑推理的任务。
核心特性
- • 代码生成 - 自动生成解决任务的程序代码
- • 执行验证 - 执行生成的代码并验证结果
- • 错误处理 - 自动修复代码中的错误
- • 多步推理 - 适合需要多步计算的问题
使用示例
GEPA
GEPA (Gradient-based Evolution of Prompts and Architectures) 优化器通过梯度指导来优化提示和架构, 能够发现更好的指令和模块配置。
初始化参数
使用示例
MIPROv2
MIPROv2 (Multi-prompt Instruction PRopOsal) 优化器通过生成和评估多个提示指令来找到最优配置, 特别适合复杂的多步骤任务。
初始化参数
使用示例
Example
Example类用于创建和管理训练示例,是DSPy优化器的重要输入。 它提供了便捷的方式来组织和标注训练数据。