dspy-optimization
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseDSPy Optimization
DSPy优化
Guidance for optimizing DSPy programs: teleprompter selection, metric definition, evaluation workflows, and save/load patterns.
DSPy程序优化指南:Teleprompter选择、指标定义、评估工作流以及保存/加载模式。
Environment Setup
环境搭建
This skill requires as the Python package manager.
uvbash
uv venv
source .venv/bin/activate
uv pip install dspyRule: Never use raw. Always usepipfor installs anduv pipfor script execution.uv run
本技能需要****作为Python包管理器。
uvbash
uv venv
source .venv/bin/activate
uv pip install dspy规则: 切勿使用原生。安装时始终使用pip,执行脚本时始终使用uv pip。uv run
Quick Start
快速开始
Optimizing with metrics
基于指标进行优化
python
undefinedpython
undefinedUse the optimize-dspy script
使用optimize-dspy脚本
uv run scripts/optimize-dspy.py --module my_module --metric my_metric --examples examples.jsonl
undefineduv run scripts/optimize-dspy.py --module my_module --metric my_metric --examples examples.jsonl
undefinedBootstrapFewShot
BootstrapFewShot
python
from dspy.teleprompt import BootstrapFewShot
optimizer = BootstrapFewShot(metric=my_metric, max_bootstrapped_demos=4)
compiled = optimizer.compile(program, trainset=trainset)
compiled.save("./compiled/program.json")python
from dspy.teleprompt import BootstrapFewShot
optimizer = BootstrapFewShot(metric=my_metric, max_bootstrapped_demos=4)
compiled = optimizer.compile(program, trainset=trainset)
compiled.save("./compiled/program.json")When to Use This Skill
适用场景
Use this skill when:
- Running DSPy optimization or compilation with teleprompters
- Defining custom metrics for DSPy evaluation
- Evaluating DSPy programs with dev sets
- Choosing between BootstrapFewShot, MIPROv2, or other optimizers
- Saving and loading compiled programs
在以下场景中使用本技能:
- 使用Teleprompter运行DSPy优化或编译
- 为DSPy评估定义自定义指标
- 使用开发集评估DSPy程序
- 在BootstrapFewShot、MIPROv2或其他优化器之间进行选择
- 保存和加载已编译的程序
Core Concepts
核心概念
Optimization Reference
优化参考文档
See optimization.md for:
- Teleprompter selection guide (BootstrapFewShot, MIPROv2, etc.)
- Metric definition patterns
- Optimization strategies and hyperparameters
- Evaluation and testing workflows
- Save/load best practices (/
.save(), never raw pickle).load()
查看optimization.md获取以下内容:
- Teleprompter选择指南(BootstrapFewShot、MIPROv2等)
- 指标定义模式
- 优化策略与超参数
- 评估与测试工作流
- 保存/加载最佳实践(使用/
.save(),切勿使用原生pickle).load()
Scripts
脚本
- optimize-dspy.py: Run optimization with custom metrics and teleprompters
- optimize-dspy.py:使用自定义指标和Teleprompter运行优化
Critical Rules
关键规则
- Always use :
uvfor installs,uv pipfor scriptsuv run - Use /
.save(): Never use raw.load()for DSPy programspickle - Use : Never use deprecated
dspy.LMordspy.OpenAIdspy.settings.configure - Mark inputs on examples: Always call on
.with_inputs()dspy.Example
- 始终使用:安装用
uv,执行脚本用uv pipuv run - 使用/
.save():切勿为DSPy程序使用原生.load()pickle - 使用:切勿使用已弃用的
dspy.LM或dspy.OpenAIdspy.settings.configure - 标记示例输入:始终在上调用
dspy.Example.with_inputs()
Related Skills
相关技能
- dspy-core: Signatures, modules, programs, and compilation fundamentals
- dspy-fleet-rlm: fleet-rlm-specific DSPy patterns and integration
- dspy-core:签名、模块、程序及编译基础
- dspy-fleet-rlm:针对fleet-rlm的DSPy特定模式与集成
Progressive Disclosure
渐进式内容披露
- SKILL.md (this file): Quick reference and navigation
- references/: Detailed optimization docs loaded as needed
- scripts/: Executable optimization tools
- SKILL.md(本文档):快速参考与导航
- references/:按需加载的详细优化文档
- scripts/:可执行的优化工具