プロンプトエンジニアリング
プロンプトエンジニアリングとは、簡単に言えばAIに対して良い質問をすることです。プロンプトとは、質問やリクエストを含むあなたの入力のことです。
プロンプトエンジニアリングは、チャット中にAIモデルが正しい回答を出せるように、的確な質問や指示を考えることを指します。より良いプロンプトを使うことで、より良い結果が得られます。
選択したモデルの仕様とともに、これが回答の品質を決定づけます。
プロンプト(質問)の要素
より良い結果を得るために、以下の点を考慮してください:
- 目的:言語モデルに何を正確に求めているか?
- 役割:言語モデルの役割は何か?(例:「マーケティングアナリスト」、「法務アドバイザー」、「プロジェクトマネージャー」)
- コンテキスト:リクエストの背景情報(例:企業目標、プロジェクトの詳細、市場情報)
- スタイル:どのようなスタイルを望むか?(例:フォーマル、説得力のある、簡潔な)
- 出力:どのフォーマットを望むか?(例:レポート、メール、プレゼンテーションのアウトライン、コードスニペット)
目的
質問の目的を正確に記述することは不可欠で、省略できません。
何を知りたいですか?
- 事実に関する質問は可能ですが、制限(例えば最新の知識がない)を意識してください
- Googleと同様に、同じ質問を繰り返しても全く同じ回答が得られるとは限りません
- 「チャット」機能の利点は、追質問ができることです
明確な目的を持つプロンプトの例:
中規模企業における新しいAIプラットフォーム導入の主な課題について説明してください。
中規模企業に新しいAIプラットフォームを導入する際には、いくつかの重要な課題があります。主な課題は以下の通りです:
- 変化への抵抗:従業員は既存のプロセスやシステムに慣れています。新しいAIプラットフォームは適応を必要とし、特にワークフローへの影響が明確でない場合、抵抗が生じる可能性があります。
- データの質と利用可能性:AIプラットフォームはデータに大きく依存しています。新しいプラットフォームのためのデータ収集、クレンジング、構造化は複雑で時間がかかることがあります。
- 既存システムとの統合:AIプラットフォームはしばしば他の企業アプリケーション(ERP、データソース、BIツール)と統合する必要があります。これには技術的な課題が伴います。
- コスト:プラットフォームのライセンス費用に加え、導入、トレーニング、データインフラ、専門人材の費用がかかります。
- トレーニングと導入促進:従業員は新しいプラットフォームの使用方法と出力の解釈を学ぶ必要があります。適切なトレーニングと継続的なサポートがなければ、導入率は低くなる可能性があります。
- 適切なプラットフォームとユースケースの選択:多くのAIプラットフォームと技術があります。企業の特定のニーズと戦略目標に合ったプラットフォームと関連ユースケースを選定することが重要です。
- 倫理的考慮とコンプライアンス:AIプラットフォームの用途によっては、倫理的問題やGDPRなどのコンプライアンス要件が慎重に扱われる必要があります。
- プロジェクトマネジメント:成功する導入には、堅実なプロジェクト管理、明確な目標設定、複数部門のステークホルダーの関与が必要です。
役割とコンテキストの追加
役割とコンテキストを追加することで、より良く具体的な回答が得られます。
同じ質問に役割とコンテキストを加えた例:
従業員150名のB2Bサービス企業で、データ分析とプロセス最適化のための新しいAIプラットフォーム導入を担当するプロジェクトマネージャーとして、主な課題と可能な緩和策について説明してください。
従業員150名のB2Bサービス企業で、データ分析とプロセス最適化のための新しいAIプラットフォーム導入を担当するプロジェクトマネージャーとして、以下の主な課題と可能な緩和策を考えています:
- 変化への抵抗とユーザー導入:
- 課題:特に直接影響を受ける従業員は、慣れ親しんだ作業方法を手放し、新しいAI駆動の洞察を受け入れることに消極的になる可能性があります。
- 緩和策:キーユーザーを早期に巻き込む。利点(効率化、意思決定の改善、新しい洞察)を明確に伝える。役割別の充実したトレーニングと継続的なサポートを提供。部門内に「AIチャンピオン」を任命する。
- データの質、ガバナンス、移行:
- 課題:AIプラットフォームの効果は高品質で適切に管理されたデータに依存します。既存システムのデータはしばしば不整合、不完全、誤りが含まれます。
- 緩和策:徹底したデータ監査から開始し、データガバナンスフレームワークを定義し、統合・移行前にデータクレンジングを実施。明確なデータモデルとフローを定義。テストと検証を慎重に行う。
- 既存ITインフラとの統合:
- 課題:既存のデータソース、ERP、CRM、その他の企業システムとの連携はシームレスかつ安全である必要があります。
- 緩和策:必要な統合を早期に特定。堅牢なAPI機能や標準コネクタを持つAIプラットフォームを選択。統合を徹底的にテスト。
- スコープクリープと予算超過:
- 課題:プロジェクト中にAI適用の新たな要望が生まれ、スコープが拡大しコストが増加する可能性があります。
- 緩和策:最初のフェーズのために明確で限定的なスコープとユースケース(MVP - 最小実用製品)を定義。厳格な変更管理プロセスを適用。現実的なプロジェクト計画と予算管理を行い、バッファを確保。
- 適切な技術と実装パートナーの選定:
- 課題:AI市場は複雑です。不適切な技術選択や経験不足のパートナーはプロジェクト失敗の原因となります。
- 緩和策:定義したユースケースに適したAI技術を徹底的に調査。業界経験と選択技術の実績があるパートナーを選定。リファレンスを確認。
- 組織内のAI知識とスキル不足:
- 課題:AIプラットフォームを効果的に使用、維持、発展させるための内部専門知識が不足している可能性があります。
- 緩和策:トレーニングと教育に投資。専門人材の採用や実装パートナーとの密接な協力による知識移転を検討。継続的学習の文化を醸成。
- 倫理的考慮と説明可能性(Explainable AI):
- 課題:AIによる意思決定は透明かつ説明可能である必要があり、特に顧客や従業員に影響を与える場合は重要です。データのバイアスは不公平な結果を招く可能性があります。
- 緩和策:AI利用の倫理ガイドラインを策定。可能な限り解釈可能なモデルを選択。バイアス検出と緩和のプロセスを実装。重要なAI判断には人間の監督を設ける。
これらの課題に積極的に対処することで、企業目標に実際に貢献するAIプラットフォームの成功した導入の可能性を高めます。
テクニック
以下に、より高度なプロンプトで利用できるいくつかのテクニックを説明します。
テクニック1 - 例を示す
言語モデルに望むスタイルを使わせるために、1つか2つの例を示します。
この方法は「one & few-shot prompting」と呼ばれます。
顧客向けに予定されているシステムアップデートについての案内メールの草案を書いてください。社内の顧客コミュニケーション方針(関連ポイントを含む)を使用してください。スタイルガイドとして最近のニュースレターを使いますが、内容は含めないでください:(ニュースレターのテキストを挿入)
完全なプロンプトは以下の通りです:
社内の顧客コミュニケーション方針:
- 常にプロフェッショナルかつ丁寧であること。
- 重要な変更や障害についてはタイムリーに更新を提供すること。
- 明確で簡潔な情報を提供すること。
- 必要に応じて解決策や補償を提供すること。
スタイルにはこのニュースレターを使いますが、内容は使用しません。 拝啓
近日予定されているシステムアップデートについてご案内いたします。
アップデート日時:[日時] 中断の予想時間:[期間] 対象サービス:[サービス]
この期間中、サービスが一時的に中断する可能性があります。ご迷惑を最小限に抑え、できるだけ早くサービスを復旧させるよう努めます。
以下は例示付きの詳細なプロンプトに対する言語モデルの回答です。
拝啓
近日予定されているシステムアップデートについてご案内いたします。
アップデート日時:[日時] 中断の予想時間:[期間] 対象サービス:[サービス]
この期間中、サービスが一時的に中断する可能性があります。ご迷惑を最小限に抑え、できるだけ早くサービスを復旧させるよう努めます。
ご質問がございましたら、お気軽にお問い合わせください。
敬具 [あなたの名前] [あなたの役職] [会社名] [連絡先情報]
テクニック2 - テンプレートを示す
言語モデルに特定のフォーマットを使わせるために、テンプレートと例を示します。これにより、言語モデルは回答を特定の方法で形成または構造化します。以下のような様々なフォーマットが考えられ、状況に応じて便利です:
- Excelシートやデータ分析ツールにインポート可能なcsv出力
- API統合や設定ファイル用のjson出力
- プロジェクト会議のアジェンダ構成
例のプロンプト: 中小企業向けの新しいSaaS製品のための3つの潜在的なマーケティングチャネルのリストを生成してください。回答は以下のフォーマットで: チャネル: ターゲットリーチ: 潜在的ROI: 必要なリソース:
例: チャネル:LinkedIn広告 ターゲットリーチ:特定の職種、業界、企業規模 潜在的ROI:ターゲットが適切なら高い 必要なリソース:広告予算、コンテンツ作成、キャンペーン管理
この方法は「output templates」と呼ばれます。
以下はテンプレート付きプロンプトに対する言語モデルの回答です。
チャネル:コンテンツマーケティング(ブログ&SEO) ターゲットリーチ:問題解決を積極的に探している企業、オーガニックトラフィック 潜在的ROI:長期的に高く、権威を構築 必要なリソース:コンテンツライター、SEOスペシャリスト、キーワード調査とコンテンツプロモーションの時間
チャネル:Google広告(検索) ターゲットリーチ:SaaS製品に関連する特定キーワードを積極的に検索する企業 潜在的ROI:競合とCPCにより中〜高 必要なリソース:広告予算、キーワード調査、ランディングページ最適化、キャンペーン管理
チャネル:メールマーケティング(リードナーチャリング) ターゲットリーチ:ウェブサイト、ウェビナー、その他チャネルで収集したリード 潜在的ROI:高く、リードから顧客への転換に効果的 必要なリソース:メールマーケティングプラットフォーム、メールシーケンス用コンテンツ、セグメンテーションスキル
テクニック3 - ヒントを与える
言語モデルに特定の方法で開始・記述させたい場合、プロンプトの最後にヒントを与えます。
例のプロンプト: この市場調査レポートを要約してください。(関連セクションを貼り付け)回答は以下で始めてください: この市場調査の主な発見は:
- レポートのテキストを貼り付け
この方法は「cues and hints」と呼ばれます。 この例は架空のレポートを使用しています。
以下はヒント付きプロンプトに対する言語モデルの回答です。
この市場調査の主な発見は:
- 中小企業におけるクラウドベースのプロジェクト管理ソフトの需要は過去2年間で35%増加した。
- 中小企業の主要な意思決定要因は使いやすさ、既存ツールとの統合可能性、価格設定である。
- 競合Aは25%の市場シェアを持ち、競合Bが18%で続く。特定のニッチや優れたユーザー体験を提供する新規参入者にチャンスがある。
- 中小企業が新しいソフトウェアを採用する際の最大の課題は初期投資と従業員トレーニングに必要な時間である。
- 市場は今後5年間、年15%の成長が見込まれている。
テクニック4 - 指示のコンテンツを分割する
プロンプトが長くなりすぎて言語モデルが正確に意図を理解しない場合があります。前の例でも見られたかもしれません。その場合、テキストの開始と終了に三重引用符を使って、コンテンツをプロンプトの残りから分けます。
例のプロンプト: この記事を要約してください。 “”” (記事のテキストを貼り付け) “”” 回答は以下で始めてください: この記事の主なポイントは:
この方法は「content splitting」と呼ばれます。 この例はインターネット上の記事やレポートをソースとして使います。政策メモ、調査報告書、公開情報ページなどが利用可能です。
以下は分割コンテンツ付きプロンプトに対する言語モデルの回答です。三重引用符または三つ星で質問のコンテキストを区切っています。
この資料の主なポイントは:
- レポートは政策によって影響を受ける対象グループを説明している。
- 資料はプライバシー、アクセシビリティ、明確なコミュニケーションなど慎重な実施のための前提条件を挙げている。
- 分析はリスクと依存関係を事前に考慮すべきことを示している。
- 文書はチームや部門向けの具体的な行動に翻訳可能な推奨事項を含む。
- 意思決定には仮定、不確実性、次のステップを明確にすることが重要である。
テクニック5 - まず追加情報を尋ねる
回答を生成する前に追加の質問をするよう指示できます。これにより、言語モデルがリクエストを洗練し、より具体的にするのを助けます。
例のプロンプト: 「社内コミュニケーション用の新しいモバイルアプリ開発のためのプロジェクト提案を作成したいです。アプリにはニュース更新、社員名簿、ダイレクトメッセージ機能が必要です。提案を書く前に、提案を改善するために追加の質問をしてもらえますか?」
この方法は「ask before answer prompting」と呼ばれます。
以下は追加情報を求めるプロンプトに対する言語モデルの回答です。
もちろんです!プロジェクト提案を改善するために以下の質問をさせてください: 社内コミュニケーションアプリの主な目的は何ですか?(例:エンゲージメント向上、情報共有の改善、協力促進) 社内の具体的なターゲットユーザーは誰ですか?(例:全従業員、特定部署、フィールドスタッフ) 既存のシステムやプラットフォームと統合する必要はありますか?(例:イントラネット、人事システム、Active Directory) 開発と導入の予算と希望スケジュールは? アプリに求められる特定のセキュリティやコンプライアンス要件はありますか?(例:GDPR、データ保持ポリシー) アプリの成功を測るための主要業績評価指標(KPI)は何ですか? デザインやブランディングのアイデアはありますか?組織のアイデンティティに合致させる必要がありますか? 開発プラットフォームの希望はありますか?(iOS、Android、クロスプラットフォーム)
これらの追加情報により、スコープと要件の理解が深まり、より強力なプロジェクト提案を作成できます。
テクニック6 - 感情的なプロンプト
テキストのトーンを感情に合わせて調整したり、特定の感情的反応を引き出す指示を出せます。これはカスタマーサービス、社内コミュニケーション、マーケティングに有用です。
例のプロンプト: 「最近のサービス中断に不満を持つ顧客へのメールを作成する必要があります。顧客は以下のように書いています:""" … """(顧客のテキストを貼り付け)メールは共感的で、顧客のフラストレーションを認め、建設的な解決策を提供してください。」
この方法は「emotional prompting」と呼ばれます。 この例は架空のクレームを使用しています。
完全なプロンプトは以下の通りです:
最近のサービス中断に不満を持つ顧客へのメールを作成する必要があります。顧客は以下のように書いています: """拝啓
昨日午後の予期せぬサービス中断に非常に失望しています。これにより業務が大きく妨げられ、生産性が低下しました。貴社のサービスを信頼しており、このような事態は容認できません。明確な説明と適切な補償を期待します。"""
メールは共感的で、顧客のフラストレーションを認め、建設的な解決策を提供してください。
以下は言語モデルから得られた回答です。
[顧客名]様
ご連絡いただき誠にありがとうございます。昨日午後に発生したサービス中断につきまして、心よりお詫び申し上げます。お客様のご不満と業務への影響を深く理解しております。弊社のサービス基準に達しておらず、大変申し訳ございません。
中断は[簡潔で明確な原因説明、例:データセンターの予期せぬ技術障害]によるものでした。直ちに対応し、技術者が迅速にサービス復旧に努めました。サービスは[時刻]より完全に復旧しております。
この事態を重く受け止め、再発防止のため原因調査を進めております。
ご不便をおかけしたお詫びとして、[具体的な提案、例:次回請求書の割引/1ヶ月の無料アップグレード/サービスクレジット]をご提供いたします。担当アカウントマネージャーが24時間以内にご連絡し、詳細をご説明しご質問にお答えいたします。
改めてご迷惑をおかけしましたことをお詫び申し上げます。今後とも信頼いただけるサービス提供に努めてまいります。
敬具
[あなたの名前/会社名]
テクニック7 - 複数バージョンを求める
回答の複数バージョンを求めることで選択肢を増やせます。例えば、新製品のマーケティングスローガンを複数案生成してもらう場合です。多様な視点が可能なので、いくつかのオプションが欲しい場合に有効です。これはモデルの役割設定やシステムプロンプトと組み合わせると効果的です。
役割については関連記事で詳しく読めます。この複数バージョンの例は記事の最後にありますが、ここでは繰り返しません。
テクニック8 - システムプロンプトとの組み合わせ
システムプロンプトを使うと、AIモデルに対してタスクや振る舞いの指示を与えられます。AIモデルに期待する出力の種類を指定し、不要な回答を防ぐための方法です。
簡単で一般的なシステムプロンプトの例:
「あなたには親切で役立つアシスタントでいてほしい」
「常にプロフェッショナルで敬意ある言葉遣いを保つ」
「具体的で要点を押さえた回答を、余計な詳細なしに提供することに集中する」
システムプロンプトは、特定の会話やタスクのトーンや期待を設定します。
特定のタスク向けにより高度なシステムプロンプトも考えられます。例えばテキストの要約: 「与えられたテキストを注意深く分析し、主要なポイントの簡潔かつ情報豊かな要約を提供してください。核心メッセージと重要な詳細を特定してください。」
システムプロンプトはすべてのAIモデルで同じ効果があるわけではありません。chatGPTでは非常に効果的で、Claudeでも効果がありますが、他のモデルでは影響が小さい場合があります。試してみて、どのモデルがあなたの入力に最適か確認するのが良いでしょう。
一般的なシステムプロンプトは設定で指定できますが、最も効果的なのは自動化したいタスクごとにシステムプロンプトを考えることです。これを「役割」と呼びます。
役割については関連記事で詳しく読めます。
パッセージの注釈
チャットメッセージ内のテキストを選択し、注釈を選びます。ウィンドウに質問や変更指示(例:「この文だけ簡単にしてください」)を書き、保存を選択します。複数のパッセージに注釈を付けられます。その後送信してください。入力欄に追加のプロンプトは不要ですが、あっても構いません。注釈はコメントとともに保持され、別のウィンドウに切り替えても残ります。送信前に注釈を削除することも可能です。モバイルではテキストを長押しして選択します。