AIプロダクトの操作画面とモジュールを表す抽象ビジュアル
NAW / PRODUCTS 03

IMAGE: AI生成ビジュアル

PRODUCTS / DEV TOOLS

DSPy 3.4.0公開 — TypeSafeの決定モデル「Jev」統合とReAnchor較正、ネイティブLMエンジン搭載

スタンフォード発のLMプログラミング枠組みDSPyが3.4.0を公開した。TypeSafe経由でJevの型付き判断(Noul・Choice・Score)をPredictに組み込み、較正オプティマイザReAnchorを追加。LM層のネイティブ実行、永続CPythonのLocalInterpreter、非同期ReActV2も導入。3.4はLM移行版で3.5が移行期限とされる。

言語モデル(LM)プログラムの最適化枠組み「DSPy」が、バージョン3.4.0を公開した。2026年9月25日(UTC)にGitHubでリリースされた安定版で、目玉はTypeSafeの決定モデル「Jev」との統合、判断の較正を行う新オプティマイザ「ReAnchor」、LM層のネイティブ実行エンジンだ。以下はリリースノートで確認できる範囲の整理である。

Jev統合 — 判断と証拠を型付きで返す3つの型

  • 利用方法: dspy[typesafe] をインストールし、TYPESAFE_API_KEY を設定して dspy.experimental.TypeSafe("jev-latest") を lm= に渡す。Predict がシグネチャ・入力・デモ・基準をJevの判断リクエストへ自動変換し、専用モジュールやアダプタ選択は不要とされる
  • 3種の実験的型: 真偽判断の Noul(値・確率・確信度)、選択肢から選ぶ Choice[...](型付き値・選択肢別確率・確信度)、順序付きルーブリックで採点する Score[...](連続値・順序レベル・確率・確信度)
  • 生成LMとの併用: 対応する dspy.LM を同じ予測器に束ねれば、生成LM経由でも証拠付き判断を要求できる。回答だけ要る場合はJevの bool・Literal[...] 出力も使える
  • 判断ルールは予測器側: 閾値やScoreの区切り、Choiceの重みはローカルに適用され、バックエンドには送られない。同一リクエストはキャッシュ済み証拠を再利用できる
  • 実験的APIの制限: Jevは汎用テキスト生成器ではなく、全出力欄が対応型である必要があり、生成への自動フォールバックはない。判断のストリーミングやRLM判断出力、生成系オプティマイザとの併用などは未対応。Noul の確信度は統計的較正ではなく閾値からの距離と明記されている

ReAnchor — 命令を書き換えずに判断を較正

  • 役割: 実験的オプティマイザ dspy.experimental.ReAnchor が、Predict プログラム内の真偽閾値・Score区切り・Choice重みを、プログラム全体の評価指標に対して適合させる。命令文・基準・デモの書き換えは行わない
  • 対象: TypeSafeと生成LMの双方に対応。生成LMでは bool・Literal 出力に確率証拠を要求し、較正が元の挙動を上回った場合のみ保持する
  • 検証手順: 設定は学習スコアの改善に加え、held-outフォールド検査の通過が必須。任意の valset は報告書の採点にのみ使い適合には使わない。compile() は複製を返し、元のプログラムは不変
  • 注意: キャッシュは既定で必須。推論予算の固定は保証されず、RLM判断出力と単一選択肢Choiceの較正は未対応

LM層・実行基盤の変更

  • ネイティブLMエンジン: LM層が同梱のlm15リクエスト・応答・ストリーミング型を使い、dspy.lm15 から追加インストールなしで利用可能。既定 engine="auto" は対応経路でネイティブ実行を優先し、互換フォールバックは推論前にLiteLLMを選択する。認証失敗やタイムアウト、プロバイダ障害でバックエンドを切り替えることはない。engine="lm15" でネイティブ必須、engine="litellm" で互換明示も可能
  • LocalInterpreter: 生成Pythonを現行実行ファイルの永続サブプロセスで動かすCPython互換の実行器。Deno不要でRLM・Flexと併用でき、状態とimportはセッション内で持続する。セキュリティサンドボックスではないと明記されており、生成コードはホストユーザーのファイル・環境・認証情報・サブプロセス・ネットワークに到達できる。信頼できないコードには既定の PythonInterpreter か適切に隔離されたリモート実行器を使う。既定自体は変更なし
  • 非同期ReActV2: 実験的な ReActV2 が await agent.acall(...) に対応(非同期予測・非同期ツール・最終提出)。ツールは逐次実行で、並列化や同期ツールの自動オフロードは追加されない
  • 文書基盤: ドキュメントがMaterial for MkDocsから後継のZensicalへ移行し、バージョン別ドキュメントも追加。新規タグ付きリリースはパッケージ公開後に一致するスナップショットを公開する

互換性 — 3.4は移行版、3.5が期限

  • LM移行: 3.3で導入された実験的LM型は置換され、従来のカスタムLM統合とOpenAI式 messages= 呼び出しは非推奨警告付きで3.4も利用可能。通常のDSPyプログラムや lm("hello") 呼び出しは引き続き対応。3.5が移行期限とされる
  • 破壊的変更: RLMの呼び出し時インタプリタ指定は、キーワード専用 interpreter_factory= に工場そのものを渡す形式へ変更。実体や位置引数での指定は不可となり、入力名 interpreter_factory は予約される
  • 導入: pip install --upgrade "dspy==3.4.0"、TypeSafe併用時は pip install --upgrade "dspy[typesafe]==3.4.0"

なお本稿のJevに関する記述はDSPy側リリースノートの範囲であり、Jev本体の仕様・料金はTypeSafe側の一次情報を参照されたい(本サイトでは2026年9月22日にTypeSafeのSystem One Models/Jevを記事化済み)。

出典