使い始める
はじめに
Skynet とは何か、何を最適化するか、どこから始めるか。
Skynet は、すでにお持ちのアーティファクトを改善します。開始バージョン、ケースのセット、メトリクスを渡すと、Skynet は新しいバージョンを提案し、各バージョンをケースで実行し、出力をメトリクスで採点して、最も良いバージョンを残します。
Skynet が最適化するもの
Skynet は 4 種類のアーティファクトを扱います。
| アーティファクトの種類 | 変更される内容 |
|---|---|
| プロンプト | プロンプトのテキスト |
| コード | ソースコード |
| DSPy プログラム | dspy.Module 内の各 predictor の指示文 |
| テキスト | その他のテキスト(ドキュメントや設定ファイルなど) |
すべての実行は同じコントラクトに従います。実行コードは run(artifact, input) を定義します。メトリクスは score(input, output, expected=None) を定義します。メトリクスはスコアと文章によるフィードバックを返します。オプティマイザーはそのフィードバックを読んで、次のバージョンをより良くします。
1 つのプロダクト、多数のエンジン
Skynet は Optimize Anything です。アーティファクトの種類によって、使えるエンジンが決まります。
- プロンプト、コード、テキストのアーティファクトは、ネイティブエンジン(GEPA、Best-of-N、Meta-Harness、AutoResearch、AutoSaddler、ShinkaEvolve)を使います。
- DSPy プログラムのアーティファクトは、DSPy オプティマイザー(DSPy GEPA、DSPy MIPROv2、DSPy BootstrapFewShot)を使います。
Auto は自動で選択します。DSPy プログラムでは、Auto は DSPy GEPA を使います。その他のアーティファクトの種類では、Auto は 5 つのネイティブエンジンを組み合わせます。詳しくは 最適化の仕組み と エンジン をお読みください。
実行の流れ
- タスクを説明し、開始バージョンを設定します。
- ケースを渡します。Skynet はそれを学習・検証・テストのセットに分割します。
- オプティマイザー、モデル、予算を選択します。
- 実行コードとメトリクスを書きます。コントラクトチェックがサンプルケースでそれらを実行します。
- Skynet が最適化を実行し、結果を表示します。
Skynet は検証ケースでバージョンを選びます。最終スコアはテストケースで報告します。エンジンがテストケースを見ることはありません。