エージェント体験
モデルが見るものをデザインし、必要な情報を見つけ、安全に動作し、コンテキストをタスクに費やせるようにします。これはガイダンスであり、チェックリストではありません。
- 最小限のコンテキストから始める: 目的、利用可能なアクション、制約を最初に公開し、詳細な指示は必要なときにロードします。
- 発見性を明示する: 遅延リソースにはそれぞれ明確な説明と、それを取得するための信頼できる方法が必要です。
- 重要な制約を可視化する: 権限、破壊的影響、必要な検証は、関連アクションの前に表示します。
- 範囲を限定した出力を優先する: IDやパスを使って詳細を取得できるようにしながら、簡潔な結果を返します。ログやドキュメント全体をダンプするのは避けます。
- 局所性を活用する: 操作の結果とともに、必要となりそうな隣接コンテキストを範囲限定で含めます。たとえば、スレッド応答に先行メッセージを数件含めます。省略や切り詰めを明示的にマークし、さらに取得する手段を提供します。
- 総作業量を評価する: コンテキストを節約することが、より多くの検索、繰り返しの読み取り、誤りを引き起こさない場合にのみ有用です。
ツール定義
- 明らかな制約は削除する。 モデルが呼び出し結果から学習できるルール(存在しないファイルの読み取り失敗や、送信失敗の未配信など)は省略します。
- 動作を記述し、実装は記述しない。 ツールが何を実行し、何を返すかを記述します。内部メカニズム、結果にモデルが表示する出力マーカー、実施の詳細は省略します。
- パラメータルールはパラメータに記述する。 デフォルト値、範囲、ペアリング、設定すべきタイミングのルールは、そのパラメータの説明またはスキーマに記述します。設定によって変化する説明は、通常、変化する部分がパラメータに属することを意味します。
- 各事実は一度だけ記述する。 システムプロンプトセクションでツール定義を繰り返したり、パラメータ説明をツール説明で繰り返したり、あるツールのルールを別のツールで繰り返したりしないでください。
- 変更を測定する。 ツール定義変更前後で、最初のターンのプロンプトトークンを比較します。
スキルとエージェント指示
- 説明がトリガーとなる。 スキルの説明は、ユーザーやタスクが使う言葉でいつ使用すべきかを記述し、本文はその方法を記述します。
- エントリファイルは簡潔に保ち、詳細はリンクする。 ワークフローとガードレールはスキルファイルに記述します。キャリブレーションの例や長い参照は、オンデマンドでロードされるファイルに移動し、エントリファイルから直接リンクします。
- スコープ制限を明示的に記述する。 「ガイダンスであり、チェックリストではありません」や「調査結果を報告するが編集はしない」といった記述は、モデルがワークフローを適用する方法を変えます。
- 真実のソースを指し示す。 指示は所有ドキュメントを再記述するのではなくリンクすることで、乖離を防ぎます。