JevCode / 基本概念

System One モデル

System One は「高速で構造化された意思決定」のために構築されたモデルの一種です。Jev はその最初のものであり、その出力はソフトウェアが直接消費できます。

本文はzh-CNからの機械翻訳です。校正は未実施で、参考情報としてのみご利用ください。

ソース: docs.typesafe.ai/concepts/system-onesystem-onearchitecture

定義

System One モデルは、ソフトウェアが直接使用できる高速な構造化意思決定を行うために特別に構築された AI モデルの一種です。Jev は TypeSafe のフラッグシップモデルであり、最初の System One モデルです。

これらが解決する核心的な問題は、従来の言語モデルが自由なテキストを出力するのに対し、ソフトウェアが必要とするのは確かな型を持つ値であるという点です。System One はこの変換プロセスをモデル内部に内蔵し、問題定義で出力型を指定すると、モデルは制約に従って応答を返します。

System Two との役割分担

この命名は認知科学の「二つのシステム理論」から借用されており、意味は非常に直接的です。

System One System Two
特徴 高速、直感的、焦点を絞る 低速、慎重、多段階
典型的なタスク 判断、分類、スコアリング、検証 複雑な推論、長鎖計画
レイテンシ 低く予測可能 比較的高く、思考の長さに比例して増加
出力 型付き、制約あり 自由なテキスト
コスト 低い 高い

これらは互いに置き換える関係ではありません。本番環境では、System One が大多数の頻繁な判断を担い、本当に深い推論が必要な場合のみ System Two へのアップグレードや人間の介入に切り替えるという典型的なアプローチが取られます。

完全な例:返金リクエスト

公式ドキュメントで示されているフローは、この2層がどのように連携するかを良く示しています。

  1. state の構築 — カスタマーサポートのメッセージ、関連する取引記録、返金ポリシーを1つの state にパッケージ化します。
  2. 並列クエリ — ユーザーが返金を要求しているか、証拠に二重請求が存在するか、ポリシーが返金を支持しているかという3つの独立した質問に同時に問いかけます。
  3. コード内での組み合わせ — 3つの回答と決定論的なビジネスチェックを組み合わせ、実行または人間のレビューへルーティングします。

ステップ2における質問の独立性に注意してください。3つの質問は互いに干渉しないため、一度に送信できます。これが、それらを単一のリクエストにパッケージ化できる前提条件です。

なぜ型付き出力がそれほど重要なのか

System One モデルは自由なテキストではなく型付きで制約のある出力を返すため、コードでこれらの回答を直接チェックし組み合わせることで、予測可能なワークフローを構築できます。

2つの統合方法におけるコードの複雑さを比較してください。

# 従来の方法:解析、検証、フォーマット異常の処理が必要
raw = llm.complete("Is this ticket about billing? Answer yes or no.")
is_billing = raw.strip().lower().startswith("y")  # 脆弱で境界ケースが多い

# System One:値自体が型付けされている
response = client.system_one(
    state=ticket,
    questions={"billing": Noul(instructions="Is this ticket about billing?")},
)
is_billing = response.nouls["billing"].noul  # float, 0..1

後者の戻り値は定義域内の確実な型です。Choice はあなたが指定した選択肢のいずれかになり、Score はあなたが指定したスコア帯域内に収まり、Noul は常に 0 から 1 の浮動小数点数になります。

信頼度:モデルに「不明」と言わせる

System One モデルの回答には confidence が含まれるため、いつ直接実行し、いつ人間のレビューや推論モデルへのアップグレードを行うかを決定できます。これは信頼できるシステムを構築する基盤です。不確実性を正直に表現できないシステムは、信頼されることはできません

呼び出し方法

クライアント SDK または HTTP API を介して呼び出します。

POST https://api.typesafe.ai/v1/systemone

リクエスト内の model フィールドで具体的なモデルを選択します。デフォルトのエイリアスは jev-latest です。

関連資料