Build with TypeSafe
TypeSafe は、AI インテリジェンスの単位をプログラミングのプリミティブのように使えるようにします。小さな判断を組み合わせて、より大きな機能にすることができます。その System One モデル は、ソフトウェアが直接消費できる、高速で焦点を絞った判断を返します。Jev は TypeSafe の主力製品であり、最初の System One モデルです。自然言語を理解し、テキストや推論の説明を生成するのではなく、型指定された回答と確率を返します。コードがワークフローを所有し、モデルは、通常のコードが意味論的な理解を必要とする場所に、プログラム可能な常識を提供します。
最新のドキュメントを読む
最新の TypeSafe ドキュメントが信頼できる情報源です。タスクの一部として読んでください。 このスキルは方向性を示します。ドキュメントには、最新のコンセプト、プロンプトのガイダンス、API コントラクト、SDK の使用法、モデル、制限、および実践例が記載されています。
- ドキュメントインデックス から始めて、関連するページとクックブックを探してください。サイト全体をロードするのではなく、対象を絞った読み取りを行ってください。
- Mintlify はページパスに
.mdを追加して Markdown を提供します。例: TypeSafe での構築方法。インデックスからリンクをたどってください。必要に応じて、拡張子のないドキュメントページのリンクを.mdに変換してください。相対リンクはhttps://docs.typesafe.aiに対して解決してください。 - 統合を作成する前に、現在の API または選択した SDK のページと、設計に関連する質問ガイダンスを読んでください。新しいワークフローの場合は、最も近いクックブックも確認してください。多くの場合、汎用的な分類器よりも優れた分解方法が示されています。
- インデックスが利用できない場合は、以下の直接リンクまたはサイトのナビゲーションを使用してください。Markdown の取得に失敗した場合は、通常のページを試してください。ライブアクセスが利用できない場合は、利用可能なローカルドキュメントまたはインストール済み SDK の型を使用し、その制限を明記し、バージョンに依存する詳細をでっち上げないでください。
| タスク | ここから始めて、関連する詳細をたどってください |
|---|---|
| プログラミングモデルを理解する | System One、構築ガイド |
| 何を構築するか検討する | ユースケースマップ、次にインデックスから関連するクックブック |
| 入力と質問を準備する | 状態、プリミティブ、次に選択したプリミティブのページ |
| 不確実性への対処方法を決める | 信頼性 |
| API コードを書く | HTTP API、Python SDK、または JavaScript SDK |
| 古い統合を更新する | 移行ガイド とインストール済み SDK の現在のリファレンス |
有用な形状を見つける
ユーザーが望む動作から始めてください。アプリケーションが何を表示、選択、変更、または引き渡すかを考えます。そこから、必要な判断にさかのぼって考えます。既知のルール、計算、正確なルックアップ、および実行はコードに保持します。ユーザーが選択したスタックとスコープを維持し、意味論的な理解が役立つ場所に TypeSafe を追加します。
アーキテクチャをブレインストーミングしたり選択したりするときは、分類以外のことも検討してください。以下のパターンは出発点です。確立されたレシピに適合しないアイデアも含めて、ユーザーの目標に合わせてプリミティブを組み合わせてください。
- 既知の引数をルーティングして入力する。 リクエストはハンドラーとその型指定されたパラメーターを選択できます。有用なブランチ固有の質問を事前に尋ね、関連する回答のみを消費します。関数呼び出し と 投機的ファンアウト を調べてください。
- 生成する代わりに選択する。 コード内で候補値またはソーススパンを見つけ、判断を使用して意図されたものを選択し、コピーまたは正規化します。コードは、ソーステキストをフォーマットされたドキュメントまたは読書ガイドに組み立てることもできます。値抽出 と 構造復元 を調べてください。
- 証拠を見つけて判断する。 候補を取得し、クエリとの関連性を比較し、有用なコンテキストを選択します。再ランキング と 階層的分類 を調べてください。
- 判断を再利用可能なデータに変える。 一度次元をスコアリングし、コードまたはユーザーコントロールが重み、しきい値、ランキング、ビューを変更できるようにします。ラベル付けされた結果があれば、それらのシグナルは古典的な ML の特徴量になります。複合スコアリング と 特徴発見 を調べてください。
- 検証してエスカレーションする。 特定の主張またはフィールドを証拠と照合してチェックし、不確実または失敗したケースを人間または推論モデルに送ります。引用チェック と 抽出カスケード を調べてください。
- 変化する状態に応答する。 コードは目標と観測結果を保持し、新しい判断が次の境界のあるステップをガイドします。推論された状態は観測された事実とは区別し、変化した状況に結果を適用する前に新鮮さを確認してください。
自由形式のリクエストには、ユーザーの目標に最も適したいくつかの方向性を提供し、開始点を推奨してください。具体的なリクエストには、関連するパターンを選択して構築してください。ブレインストーミングは必須の寄り道ではありません。
判断を設計する
答えの意味に基づいて選択し、次に関連するプリミティブページを読んでください。
| ニーズ | プリミティブ | 重要な区別 |
|---|---|---|
| 定義されたセットのうちの1つ | Choice | 1つのオプションを選択し、その分布は競合するオプションを比較します |
| 条件が成立するかどうか | Noul | Yes の確率。独立した信頼性はなし。複数が該当する可能性がある場合は、ラベルごとに1つ使用します |
| 記述された次元に沿った程度 | Score | 順序付けられたレベルでの確率加重位置。段階的なランキングには、比較可能なアイテムごとのスコアを使用します |
各質問に、回答するための十分な関連する 状態 を提供します。ソーステキスト、ID、関係、ポリシー、現在の事実などです。コンテキストに複数の部分がある場合は、名前付き JSON フィールドを優先します。判断を 指示 に記述し、可能な答えを 基準 で定義します。質問 ID はコード用であり、モデルには送信されません。質問に完全な意味を含めてください。ネストされた状態は、バッククォートで囲まれたパス(ticket.messages[0].text など)で参照します。
質問ごとに、1つの狭く一貫した判断を尋ねます。判断されている関係を壊すことなく、独立して有用な次元を分割します。境界のあるアクション選択またはコンテキスト解釈は有効です。アトミックは、文字通りの事実抽出や1文の制限を意味しません。単純な質問には文字列で十分です。定義、対比、除外、または例が指示や基準を明確にする場合は、構造化オブジェクトまたは配列を使用します。スコアレベルは具体的な状況を説明し、それ自体で理解できる必要があります。
必要な回答を利用可能にしておきます。何も該当しない場合に備えて、該当なしの結果を含めます。プレゼンスの判断が独立して有用な場合は、別のプレゼンス判断を使用します。ソース値の選択では、候補のカバレッジを確認します。モデルは省略された値を選択できません。
構成して検証する
同じ状態に対して独立した質問を一緒に尋ねます。有用な投機的質問を含みます。これらは並列に実行され、互いの回答を見ることができません。各投機的前提は明示的に記述します。コードは該当する回答を消費します。以前の回答が証拠を取得したり、新しい状態を構築したり、次のオプションを決定したりするために必要な場合は、2番目のリクエストが正当化されます。追加の質問はトークンを使用します。実際のリクエスト予算、コスト、およびエンドツーエンドのレイテンシを測定します。
確率と信頼性を使用して動作をガイドし、しきい値はユーザーのデータと結果に基づいて評価します。Choice/Score の信頼性は分布の集中度を要約し、ワークフロー全体の正しさやアクションの許可ではありません。0.5 に近い Noul は、Yes と No の確率が類似していることを意味し、中程度の強度ではありません。いくつかの許容可能な代替案も確率を分散させる可能性があります。低い信頼性は、無害な選好選択を無効にする必要はありません。未使用のブランチの不確実性は無視します。
ポリシーを明示的に保ち、生の判断を再利用可能に保ちます。重み付けされたスコアは、補償的な選好に適しています。「重大な違反がある」ルールには、個別の条件が必要です。証拠と質問の意味が変わらない場合、重みや表示フィルターを変更しても推論を再実行する必要はありません。型指定された出力はインターフェースを保証しますが、真実を保証するわけではありません。System One モデルは較正された決定のためにトレーニングされています。対象ドメインでパフォーマンスを検証してください。
代表的なケースと結果として得られるアプリケーションの動作をテストします。障害の場合は、正確な状態、質問、候補、回答、構成、および観測された結果を検査します。欠落した証拠、モデルエラー、コードエラー、およびサービス障害を分離します。クックブックのしきい値とデモ結果は、評価する例として扱い、普遍的なルールや永続的なモデルの制限として扱わないでください。Web アプリでは API 認証情報をサーバーサイドに保持します。