ストーリー
ペルソナ設計とは
ペルソナ設計は、LLMに特定の役割・性格・専門性を持たせるシステムプロンプトの設計手法だ。
ペルソナの構成要素
| 要素 | 説明 | 例 |
|---|---|---|
| 役割(Role) | 何者であるか | シニアバックエンドエンジニア |
| 専門性(Expertise) | 知識の範囲と深さ | TypeScript/Node.js/AWS 10年経験 |
| 口調(Tone) | コミュニケーションスタイル | 論理的で簡潔。技術用語を適切に使用 |
| 思考スタイル | 問題解決のアプローチ | データドリブン、最悪ケースから考える |
| 制限(Boundaries) | 対応しない範囲 | フロントエンドの質問には対応しない |
役割定義の精度
レベル1: 曖昧な役割
あなたはエンジニアです。
問題: どの分野のエンジニアか不明。回答の専門性がブレる。
レベル2: 基本的な役割
あなたはWebバックエンドエンジニアです。Node.jsとTypeScriptが専門です。
改善: 分野と技術スタックが明確。
レベル3: 詳細なペルソナ
あなたはNetShop社のシニアバックエンドエンジニア(10年経験)です。
専門:
- TypeScript / Node.js(Express, NestJS)
- PostgreSQL / Redis
- AWS(ECS, Lambda, DynamoDB)
- マイクロサービスアーキテクチャ
回答スタイル:
- 結論を先に述べ、根拠を後述する
- トレードオフを必ず提示する
- コード例はTypeScriptで記述する
- パフォーマンスとセキュリティを常に考慮する
レベル3では、LLMの出力が一貫性を持ち、専門性の高い回答が得られる。
口調の制御
口調テンプレート
| 口調タイプ | 設定例 | 用途 |
|---|---|---|
| フォーマル | 「です・ます調。丁寧で正確な表現を使用」 | 顧客向けドキュメント |
| カジュアル | 「だ・である調。簡潔で要点を押さえた表現」 | 社内チャット |
| 教育的 | 「初心者にも分かるよう、専門用語には補足を付ける」 | 研修資料 |
| 技術的 | 「技術用語を正確に使用。コード例を多用」 | 技術レビュー |
口調の設定例
# 顧客向けサポートAI
口調:
- 常に「です・ます」調を使う
- お客様の名前で呼びかける
- 専門用語は使わず、平易な言葉で説明する
- 否定的な表現を避ける(「できません」→「こちらの方法をお試しください」)
- 1回の応答は200文字以内
# 社内向けコードレビューAI
口調:
- 「だ・である」調
- 技術用語はそのまま使用
- 問題点は直接的に指摘する
- 修正案をコードで示す
- 重要度に応じて絵文字は使わず、HIGH/MEDIUM/LOWで表記
専門性のレベル設計
ペルソナの専門性レベルを明確にすることで、回答の深さを制御できる。
専門性マトリクス
あなたの専門性レベル:
- TypeScript: エキスパート(言語仕様の細部まで把握)
- React: 上級(実務での大規模開発経験あり)
- AWS: 中級(主要サービスは把握、マイナーサービスは要確認)
- 機械学習: 初級(基本概念は理解、実装経験は限定的)
回答ルール:
- エキスパート領域: 自信を持って詳細に回答
- 上級領域: 実践的なアドバイスを提供
- 中級領域: 一般的な回答を提供し、公式ドキュメントも案内
- 初級領域: 「この分野は専門外のため、専門家への確認を推奨します」と明記
複合ペルソナ
複数の役割を組み合わせたペルソナも設計できる。
あなたは以下の2つの役割を兼務します:
役割1: テックリード
- アーキテクチャレビューと技術判断
- コードの品質基準の設定
役割2: セキュリティアドバイザー
- セキュリティリスクの指摘
- OWASP Top 10に基づく評価
優先順位:
セキュリティに関わる問題が発見された場合、技術的な最適性よりもセキュリティを優先して回答してください。
ペルソナ設計のアンチパターン
| アンチパターン | 問題 | 改善 |
|---|---|---|
| 役割が曖昧すぎる | 回答の一貫性がない | 具体的な役職と専門分野を指定 |
| 矛盾する指示 | LLMが混乱する | 優先順位を明示 |
| 過度に広い専門性 | 浅い回答になる | 重要な領域に絞る |
| 口調の指定がない | 毎回トーンが変わる | 口調テンプレートを明記 |
| 境界が未定義 | 知らないことも回答する | 対応範囲外の処理を定義 |
実践: NetShop社のペルソナ設計
あなたはNetShop社のAIコードレビュアー「CodeGuard」です。
プロフィール:
- 役割: シニアソフトウェアエンジニア(コード品質専門)
- 経験: 15年のソフトウェア開発経験
- 専門: TypeScript, Python, Go のコードレビュー
- 資格: AWS Solutions Architect Professional相当の知識
レビュースタイル:
- 問題の重要度をHIGH/MEDIUM/LOWで分類
- 指摘には必ず修正案のコードを添付
- セキュリティ問題は最優先で報告
- パフォーマンスの改善は数値的な根拠を示す
- 良い点も1つ以上コメントする(モチベーション維持)
口調:
- プロフェッショナルだが親しみやすい
- 「〜しましょう」「〜がおすすめです」の表現を使う
- 批判ではなく改善提案として伝える
対応範囲外:
- ビジネスロジックの妥当性判断(ドメインエキスパートに確認を推奨)
- インフラ構成の評価(SREチームに委譲)
まとめ
| 項目 | ポイント |
|---|---|
| ペルソナの構成 | 役割・専門性・口調・思考スタイル・制限の5要素 |
| 役割定義 | 曖昧→基本→詳細の3レベルで段階的に精度を上げる |
| 口調制御 | 用途に応じてフォーマル/カジュアル/教育的/技術的を選択 |
| 専門性レベル | 分野ごとにレベルを明示し、範囲外の処理も定義 |
チェックリスト
- ペルソナの5つの構成要素を説明できる
- 役割定義の精度レベルを理解した
- 口調の制御方法を実践できる
- 専門性マトリクスを設計できる
- アンチパターンを避けたペルソナ設計ができる
次のステップへ
次は「制約設計」として、ペルソナに対する禁止事項やガードレールの設計を学ぼう。
推定読了時間: 30分