コンセプト
エンジン
GEPA、Best-of-N、Meta-Harness、AutoResearch、AutoSaddler、ShinkaEvolve、Auto。
エンジンとは、アーティファクトの新しいバージョンを提案する探索方法です。Skynet には、プロンプト、コード、テキストのアーティファクト向けの 6 つのネイティブエンジン、DSPy プログラム向けの 3 つの DSPy オプティマイザー、そして Auto があります。このページでは、それぞれの機能、選ぶべき場面、設定項目を説明します。
どのエンジンがアーティファクトに合うかわからない場合は、まず 最適化の仕組み をお読みください。
簡単な比較
| エンジン | アーティファクトの種類 | コーディングエージェントの設定 | 最大反復回数の設定 |
|---|---|---|---|
| Auto | すべて | あり(プロンプト、コード、テキスト) | なし |
| GEPA | プロンプト、コード、テキスト | なし | なし |
| Best-of-N | プロンプト、コード、テキスト | なし | なし |
| AutoResearch | プロンプト、コード、テキスト | あり | なし |
| Meta-Harness | プロンプト、コード、テキスト | あり | あり |
| AutoSaddler | プロンプト、コード、テキスト | あり | あり |
| ShinkaEvolve | プロンプト、コード、テキスト | なし。独自のエディター設定があります。 | あり |
| DSPy GEPA | DSPy プログラム | なし | なし |
| DSPy MIPROv2 | DSPy プログラム | なし | なし |
| DSPy BootstrapFewShot | DSPy プログラム | なし | なし |
ウィザードでは、GEPA、DSPy GEPA、Auto が、メトリクスからのフィードバックの文章を使うオプティマイザーとして示されます。
Auto
Auto は既定の選択です。何を実行するかは、アーティファクトの種類によって異なります。
- DSPy プログラム: Auto は DSPy GEPA を実行します。
- プロンプト、コード、テキスト: Auto は 5 つのエンジン(GEPA、AutoResearch、Meta-Harness、AutoSaddler、ShinkaEvolve)で同時に探索します。各エンジンには、スコアラー実行回数の均等な割り当て(予算を 6 で割った数)が与えられます。その後、残りの予算で、最良のバージョンから GEPA が続行します。
Auto は Best-of-N を使いません。
選ぶべき場面: どのエンジンが合うかわからないとき。最初に試すのに最適です。
GEPA
「パレートフロントを持つ、バージョンのリフレクティブな進化。」リフレクションモデルが各ケースのスコアとフィードバックを読み、より良いバージョンを書きます。GEPA は、それぞれが一部のケースで最良となるバージョンのフロントを維持します。
選ぶべき場面: メトリクスが具体的なフィードバックを返し、強力な単一エンジンを使いたいとき。
Best-of-N
「リフレクションモデルからの独立した提案。最良のものを残す。」各提案は他の提案から独立しています。Skynet は上位の提案を検証ケースで再採点します。
選ぶべき場面: 他のエンジンと比較するためのシンプルなベースラインがほしいとき。
AutoResearch
コーディングエージェントが研究ラウンドを実行します。予算がなくなるまで、編集し、採点し、効果のあるものを残します。
選ぶべき場面: 良い変更に何段階かの調査が必要なとき。たとえば、コードのアーティファクトの場合です。
Meta-Harness
コーディングエージェントが、反復ごとに候補のバッチを提案します。候補とスコアの全履歴を使います。
選ぶべき場面: これまでのすべての試行の履歴から学習するエージェントを使いたいとき。バッチサイズは 反復ごとの候補数 で設定します。
AutoSaddler
コーディングエージェントがメトリクスからのフィードバックを読み、バージョンにパッチを当てます。Skynet は、新しいスコアラー実行で効果が確認されたパッチだけを残します。
選ぶべき場面: メトリクスのフィードバックが、明確で局所的な欠陥を指摘しているとき。
ShinkaEvolve
「並列の島で多数のバージョンを進化させ、どのモデルが最も改善するかを学習する。」候補の集団に対する進化的探索で、モデルが書く突然変異と交叉を使います。
選ぶべき場面: 幅広く探索したく、予算に余裕があるとき。
DSPy オプティマイザー
| オプティマイザー | 機能 |
|---|---|
| DSPy GEPA | メトリクスのフィードバックを読み、各 predictor の指示文を進化させます。 |
| DSPy MIPROv2 | 指示文と few-shot デモを一緒に提案し、その組み合わせをベイズ最適化で探索します。 |
| DSPy BootstrapFewShot | プログラムが正解した実例を集め、few-shot デモとして追加します。リフレクションモデルは使いません。 |
DSPy MIPROv2 と DSPy BootstrapFewShot にはペア(期待される出力を持つケース)が必要です。
設定
予算
| 設定 | 既定値 | 範囲 |
|---|---|---|
| 最大スコアラー実行回数 | 200 | 1〜100000(Auto: 6 以上) |
| 停止スコア | オフ | 0 以上 |
| 最大反復回数 | オフ | 1〜1000。Meta-Harness、AutoSaddler、ShinkaEvolve のみ。 |
1 回のスコアラー実行は、1 つのケースに対するメトリクスの 1 回の呼び出しです。開始バージョンと勝者の最終的な再採点は、最大スコアラー実行回数 には含まれません。
コーディングエージェントの設定
これらの設定は、Auto、AutoResearch、Meta-Harness、AutoSaddler に適用されます。
| 設定 | 既定値 | 範囲 |
|---|---|---|
| コーディングエージェント | Codex | Pi、Codex、OpenCode、Prime Agent、カスタムコマンド |
| 反復ごとの候補数 | 3 | 1〜8。Auto と Meta-Harness で表示されます。 |
| 候補あたりの最大ツール呼び出し数 | 100 | 1〜1000 |
ShinkaEvolve の設定
| 設定 | 既定値 |
|---|---|
| 新しいバージョンの作成方法 | 単一のモデル呼び出し。もう 1 つの選択肢は「コーディングエージェント(Pi)」です。 |
| 島 | 2(1〜8) |
| 移住間隔 | 10 |
| 親選択 | 重み付き。他の選択肢: べき乗則、ビームサーチ。 |
| 差分編集 / 全体の書き直し / 交叉 | 60% / 30% / 10%。合計が 100% になる必要があります。 |
| アーカイブサイズ | 40 |
| 並列評価数 | 2 |
| 並列提案数 | 2 |
Auto が ShinkaEvolve を実行する場合、ウィザードはこれらの設定を「ShinkaEvolve の設定(Auto が実行する場合)」として表示します。