DSPyとは
DSPyとは、LLMへの指示をただのプロンプト文ではなく、評価できるPythonプログラムとして組み立てるためのフレームワークです。公式ドキュメントでは、プロンプトを書くのではなくプログラムする、という方向で説明されています。AIの回答品質を毎回の勘や文章調整に頼らず、再現しやすく改善するための道具です。
DSPyの仕組み
DSPyでは、「入力は何で、出力は何か」を構造として定義し、LLMの呼び出しを部品としてつなぎます。さらに評価指標を用意すると、その指標に合うようにプロンプトや例示を最適化できます。営業資料の文面を毎回手で直すのではなく、採点基準つきのテンプレート製造ラインを作る感覚に近いでしょう。
プロンプトエンジニアリングとの違い
プロンプトエンジニアリングは、よい指示文を人が試行錯誤して探す色が強い方法です。DSPyはそこから一歩進めて、指示、データ、評価、改善をプログラムの部品として扱います。個人の文章センスに依存しすぎず、変更前後を比べながら改善できる点が重要です。ただし、評価指標が雑なら、DSPyを使っても本当に欲しい品質には近づきません。
ビジネスでの使われ方
社内問い合わせ、RAG、分類、要約のように、同じAI処理を繰り返し使う場面でDSPyは役立ちます。決裁者にとっての論点は、「良いプロンプトを作った人」ではなく「品質を測りながら改善できる仕組み」があるかです。AI活用を属人化させないための開発基盤として見ると理解しやすくなります。
Topic「プロンプトを書くな、プログラムせよ」という合図
DSPy公式サイトの冒頭には「Program, don’t prompt」という考え方が置かれています。これは、AIへの指示を長い文章芸として磨くだけでなく、入力、出力、評価を持つソフトウェア部品として扱うという合図です。AI活用が実験から運用へ進むほど、この発想が効いてきます。
DSPyに関するよくある質問
- DSPyとプロンプトエンジニアリングは何が違いますか?
- プロンプトエンジニアリングは指示文を人が調整する発想です。DSPyは入力、出力、評価をプログラムとして定義し、改善を仕組み化する点が違います。
- DSPyは非エンジニアでも使えますか?
- DSPy自体はPythonフレームワークなので、実装には開発者が必要です。ただし経営側は、AI処理を属人的な文章調整ではなく評価可能な仕組みにする道具だと理解すれば十分です。
- DSPyを使えば回答品質は自動で上がりますか?
- 自動で保証されるわけではありません。何を良い回答とするかの評価指標や検証データが適切でなければ、最適化しても業務上の品質にはつながりません。