AIプロンプトとの連携

このドキュメントでは、特に GitLab エンジニアを対象に、AI プロンプトを扱うためのヒントとガイドラインを示します。ヒントは以下のとおりです:

  1. トーンを設定する - AIアシスタントがどのように答えるべきかを記述します。例えば、「あなたはDevSecOpsに特化した役に立つアシスタントです。コンテキストを与えることで、AIはより良い回答を提供できるようになります。これにより、AIがどのようにコミュニケーションを取るべきかという期待が確立されます。
  2. 具体的に - タスクを説明するときは、AIが理解しやすいように詳細とコンテキストをたくさん提供しましょう。できるだけ具体的な情報を与えてください。例えば、ただ「この文章を要約してください」と言うのではなく、「あなたはGitLab DuoというAIアシスタントです。以下の文章を読み、要点を絞って3つの簡潔な文章に要約してください。”詳細を提供すればするほど、AIはより良いパフォーマンスを発揮します。
  3. 例を示す - 想定される質問と望ましい回答の例を示してください。これは、AIがより良い回答をするのに役立ちます。例えば、「この文章の主旨は何ですか」というような質問例を提示し、次に理想的な簡潔な要約を回答例として提示します。常に最初に指示を与え、次に例示的な例を示します。
  4. 入力を誘導する - 区切り記号を使って、ユーザーの入力がどこで始まり、どこで終わるかを明確に示します。AIは何が入力されたかを知る必要があります。どのようなテキストがユーザーの入力であるか、モデルにとって明白にしてください。
  5. ステップ・バイ・ステップの推論 - AIにその推論をステップ・バイ・ステップで説明するように求めます。これにより、より正確な結果が得られます。モデルに推論をステップバイステップで考え、完全な説明を示すよう明示的に求めることで、より良い回答を得ることができます。どのように要約にたどり着いたか、ステップバイステップで推論を説明してください。” のように言ってください。
  6. 不確実性を許容する - AIが答えを幻覚するのを避けるため、不明な場合は「わからない」と言うように指示します。誤った回答を避けるため、答えがわからない場合はモデルに明確な逃げ道を与えてください。答えがわからない場合は、”わからない “と答えてください。
  7. 肯定的な表現を使う - アクションを禁止する場合でも、AIは何をすべきでないかではなく、何をすべきかを言いましょう。やっかいですが、行動を制限する場合でも、できるだけ肯定的な表現を使いましょう。例えば、「有害な回答や不正な回答はしないでください」ではなく、「有益で正直な回答をしてください」と言いましょう。
  8. 正しい言語 - AIが理解しやすいように、適切な英語の文法と構文を使用してください。技術的に正確な言語と文法を使用することで、モデルがプロンプトをよりよく理解できるようになります。テクニカルライターとの連携がプロンプト作成に非常に役立つのはこのためです。
  9. さまざまなモデルをテストする - プロンプトはプロバイダーに依存します。完全に切り替える前に、新しいモデルをテストしてください。プロンプトは、異なるAIプロバイダー間で同じように機能するわけではないことを認識することが重要です。新しいモデルに変更する際は、同じように機能すると思い込まず、パフォーマンスを慎重にテストしてください。
  10. 品質管理の構築 - RSpecまたはRakeタスクでプロンプトのテストを自動化し、相違点を検出します。プロンプトを定期的にテストし、リグレッションを検出する自動チェックを開発しましょう。RSpecやRakeタスクのようなフレームワークを使用して、サンプルの入力と目的の出力でテストケースを構築します。
  11. 繰り返し - プロンプトを徐々に改良し、変更をテストしてその影響を確認します。プロンプトエンジニアリングを反復プロセスとして扱いましょう。小さな変更を加え、結果をテストしてから続けます。効果を継続的に評価しながら、プロンプトを段階的に作り上げていきます。

その他のリソース

より包括的なプロンプト・エンジニアリング・ガイドについては、こちらをご覧ください: