メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://arkor-92aeef0e-eng-736.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

infer

onCheckpoint の中で SDK は infer という関数を渡してくれます。これを呼ぶと、直前に保存されたチェックポイントに対する推論リクエストを実行し、生の Response が返ります。学習途中のモデルを完了前に評価するための経路です。
onCheckpoint: async ({ step, infer }) => {
  const res = await infer({
    messages: [{ role: "user", content: "I can't log in." }],
  });
  console.log(`step=${step}`, await res.text());
}
デフォルトのレスポンスは SSE ストリームです(Studio の Playground が読み取るのと同じ形)。単一 JSON ボディが欲しい場合は stream: false:
const res = await infer({ messages, stream: false });
const data = await res.json();
inferCheckpointContext 上にのみ 存在します。トップレベルの export はありません。コールバックの引数として受け取るため、呼び出しが正しいジョブとステップに自動的にスコープされます。

よくあるシナリオ

  • サニティーチェック。 ステップ 50 とステップ 100 の出力を固定プロンプトで比較。
  • JSON Schema で出力を制約。 responseFormat: { type: "json_schema", json_schema: { name, schema, strict: true } } を渡すと、レスポンスの choices[0].message.content が JSON 文字列として返り、JSON.parse で型付きオブジェクトとして使える。構造化出力と Function Calling レシピ を参照。
  • 関数を呼ばせる。 tools + toolChoice を渡すと、チェックポイント検査の中からモデルにツール呼び出しをリクエストさせられる。同じレシピを参照。
  • カスタム Early Stopping。 abortSignal + cancel() と組み合わせて、迷走した学習を止める。Early Stopping レシピ を参照。
  • ライブプレビュー。 チェックポイントの出力を Slack や自前のレビューキューに転送。

リファレンス

InferArgs の完全な型、ストリーミングと JSON のトレードオフ、SSE フレーム形式、別チェックポイント/別モデルへの再ターゲット制約、SSE デルタストリームのデコード方法は infer リファレンス を参照してください。