createTrainer
createTrainer は start / wait / cancel メソッドを持つ Trainer オブジェクトを返します(トレーナー制御 を参照)。この関数は TrainerInput のクライアント側バリデーションを しません: TypeScript が型付きフィールドをコンパイル時にチェックし、それ以外は start() 実行時にクラウド API へ転送されます。不正な値は構築時のクライアント側 throw ではなく、学習中にバックエンドエラーとして現れます。
シグネチャー
TrainerInput の全体は下記のパラメーターで説明します。返ってくる Trainer は トレーナー制御 ページにあります。第 2 引数 context は @internal 注釈付きで、テストと高度なオーバーライド用に予約されています。TrainerInternalContext 自体は形状が安定していないため arkor から export されていません。設定可能な既知のフィールド (reconnectDelayMs / maxReconnectDelayMs / maxReconnectAttempts) は トレーナー制御 > 再接続 を参照してください。
必須フィールド
型付きオプションフィールド
ファーストクラスの TypeScript 型を持ち、安全に使えます:LoraConfig
lora を完全に省略するとバックエンドのデフォルトになります。同梱テンプレートが使う出発点は r: 16, alpha: 16 です。
dryRun
dryRun: true はバックエンドにデータセットを切り詰め、ステップ数を制限してパイプラインの全段階(データロード、chat-template のレンダ、学習ループ、チェックポイントアップロード、イベントストリーム)を走らせるよう指示します。GPU 時間は引き続き消費しますが、その量はずっと少なく済みます。CI や、初めてコールバックを組んでいるときに便利です。完全に課金を回避するための手段ではありません。
上級: 転送フィールド
これらはunknown として型付けされ、クラウド API にそのまま転送されます(packages/arkor/src/core/trainer.ts:100-108)。SDK のファーストクラス型付けが追いつく前にバックエンドが新フィールドを公開できるよう、入力型に予約されています。
これらのフィールドは明示的に 安定ではありません。バックエンド契約はリリース間で変わり得て、渡す値にコンパイル時チェックもありません。上記の型付きフィールドを優先し、それで対応できないときだけ手を出してください。
ロードマップ
- マルチトレーナープロジェクト。
createArkorは単一のtrainerを受け付けます。配列形はありません。2 つ目のトレーナーを登録するには、エクスポートをランタイムで切り替えるか、API がその形を獲得するのを待つことになります。
関連項目
- トレーナー制御:
Trainerオブジェクトのstart/wait/cancel - ライフサイクルコールバック:
callbacksフィールド DatasetSource:datasetフィールドの形createArkor: トレーナーをプロジェクトマニフェストにラップ