Llama2(ラマ2)完全ガイド。性能導入ライセンス日本語対応まで徹底解説



目次

Llama2とは概要と強み

Screenshot of www.llama.com

Meta Llama 2

概要

Llama2はMetaが公開した大規模言語モデル群で、7B・13B・70Bのパラメータ規模と、指示追従に最適化されたChat系バリアントを提供します。事前学習済みモデルと会話最適化モデルを用途に応じて選べるため、PoCから本番運用までスムーズに展開できます。配布はオープンウェイト形式で、商用利用を含む広い用途に対応する独自ライセンスに基づき提供されます。

設計の要点

  • 効率性重視のアーキテクチャで、同規模モデル比で推論速度とメモリ効率のバランスが良好です。量子化やLoRAなどの軽量化手法と相性が良く、単一GPUやエッジ環境でも動作させやすい設計です。
  • コンテキスト長は4kトークン級で、対話や要約、抽出などの一般的タスクを過不足なくカバーします。
  • Chat系は教師あり微調整と人間のフィードバックによる強化学習で安全性と一貫性を高めています。プロンプト設計に素直に反応しやすく、運用ガイドラインの組み込みが容易です。

強み

  • 導入容易性
    Transformersやllama.cppなど主要ランタイムの対応が厚く、ローカル実行からクラウドまで環境選択の自由度が高いです。Hugging Faceを中心にモデル管理や配布が整っており、MLOpsへの組み込みも進めやすいです。
  • コスト効率
    7Bや13Bでも良好な品質が出しやすく、量子化と組み合わせることで推論コストを大幅に抑制できます。GPUリソースが限られるチームでも現実的なTCOで運用できます。
  • 拡張性
    ベースモデルに対する追加学習やLoRA微調整で、業務固有ドメインへの最適化が容易です。RAG構成とも親和性が高く、最新情報や私有データを安全に取り込めます。
  • 商用利用のしやすさ
    独自ライセンスは商用利用を許容しており、社内ツールから顧客向けプロダクトまで適用しやすいです。配布や改変時の注意点を守ることで、法務対応のハードルを低く保てます。
  • エコシステムの厚さ
    監査・安全フィルタ、評価ベンチ、プロンプトテンプレート、監視・ロギングまでコミュニティ資産が豊富です。実務で必要な評価指標やベストプラクティスが見つかりやすい点も利点です。

こういうときに選びます

  • 単一または少数GPUでの現実的なコストで高品質な対話や要約を実装したいとき
  • 社内データ連携型のRAGやナレッジ検索で、制御しやすいモデルを使いたいとき
  • 軽量な追加学習やプロンプト最適化でドメイン特化の精度をすばやく引き上げたいとき
  • 配布や組み込みを前提にしたSaaSや業務アプリで、ライセンス条件を明確に管理したいとき

要点は「軽くて賢くて使いやすい」です。手元や安価なGPUでも回せますし、RAGやLoRAで業務に合わせて伸ばせます。まずは7Bで試し、必要に応じて13B→70Bへと階段を上がる設計をおすすめします

Llama2の種類と選び方 7B・13B・70B・Chat

種類の全体像

  • Base系(Llama-2-7B / 13B / 70B)
    事前学習のみの汎用モデルです。追加学習(LoRA/フルFT)やRAGで使う前提の「素材」として最適です。
  • Chat系(Llama-2-7B/13B/70B-Chat)
    指示追従と安全性に最適化された対話特化モデルです。すぐにヘルプデスク、QA、文章支援に使いやすいです。

まず決める3要素

  1. 用途
  • 対話・社内QA・文章生成 → Chat系
  • 分類・抽出・独自タスクの微調整前提 → Base系
  1. コスト/環境
  • ローカルPC・軽量GPU → 7B
  • 単一GPUで実務と品質の両立 → 13B
  • マルチGPU/クラウドで最高精度 → 70B
  1. 日本語の重み
  • そのままでも使うが社内用語が多い → RAG+Chat系
  • 業務専門ドメインで精度要求が高い → Base系+追加学習(日本語/ドメインデータ)

典型ユースケース別の最適解

  • ヘルプデスク/社内ナレッジQA(即導入)
    Llama-2-13B-Chat(RAG併用)。応答品質とコストのバランスが良く、1GPUで運用しやすいです。
  • 要約・下書き・翻訳の下支え
    Llama-2-7B-Chat。低VRAMで高速です。高品質が必要な文書のみ13Bへ。
  • 精密な推論・長文一貫性(レビュー/分析/規程ドラフト)
    Llama-2-70B-Chat。クラウド前提で、重要文書の最終案出しに向きます。
  • 自社専用モデルの育成(微調整前提)
    Llama-2-13B Base。LoRAで専門語の定着とガード設計を両立しやすいです。
  • エッジ/組み込み・ローカルファースト
    Llama-2-7B(Base/Chat)。量子化でCPU/Macでも現実的に動かせます。

リソース目安(量子化時の実務感)

  • 7B:4bit量子化でVRAM約6〜8GB、ストレージ約12〜15GB。ノートPCの単一GPU/Macで現実的です。
  • 13B:4bit量子化でVRAM約10〜12GB、ストレージ約20〜30GB。ミドル級GPUで安定運用できます。
  • 70B:4bit量子化でもVRAM約35〜45GB相当。A100/H100級やマルチGPUを想定します。
  • スループット:同設定なら 7B > 13B > 70B の順で速く、同時接続数/レスポンスを左右します。

Base と Chat の使い分け

  • Chat系を選ぶとよいケース
    指示の解釈、禁則対応、丁寧な文体が重要(顧客対応/社内QA/生成ライティング)。
  • Base系を選ぶとよいケース
    追加学習や独自推論フローの組み込み、分類・抽出・計画生成などの非対話パイプライン。

日本語対応の考え方

  • Chat系+RAGで大半の業務は実用域になります。用語ゆらぎは辞書/システムプロンプトで補正します。
  • 正答率が要となる専門領域はBase+日本語/ドメインLoRAで上振れを狙います。評価は和文ベンチ+実務プロンプトで行います。

コスト設計と拡張戦略

  • 段階導入:7B-ChatでPoC → 13B-Chatで本番 → 70Bは重要業務/バッチのみに限定。
  • 量子化:まずは4bit(NF4系)でGPUコストを圧縮。品質要件に応じて8bit/FP16へ段階的に引き上げます。
  • LoRA活用:小容量で更新容易。新ルールや新製品語彙はLoRA差分でこまめに反映します。
  • RAG前提:最新情報や社外規程は外部ソースで都度検索し、モデル更新頻度を抑えます。

迷ったときの決定フロー

  1. 対話か非対話か → 対話ならChat、非対話/微調整ならBase。
  2. GPUの上限 → 8〜12GBなら7B、16〜24GBなら13B、40GB超/クラウドなら70B。
  3. 日本語の厳しさ → RAGで足りるか?足りなければBase+LoRA。
  4. SLA → レイテンシが厳しい/同時接続が多いなら7B/13Bを水平展開、70Bは少数高価値リクエストへ。

小さな実務Tips

  • プロンプト共通テンプレ(役割・出力形式・禁則)を先に用意すると、7B→13B→70Bの切替でも品質が安定します。
  • コンテキスト設計:重要情報を上位に、指示は箇条書きで明示。RAGでは抜粋長を短く多段に。
  • 安全設計:機微情報は前処理でマスキング、出力に監査ログIDを付けて追跡可能にします。

迷ったら13B-Chatから始めてください、です。まずRAGとプロンプト設計で基準線を作り、足りない精度はLoRAで上げ、それでも届かないタスクだけ70Bに割り当てるとコストと品質の両立がしやすいですよ

Llama2の商用利用とライセンス要点

まずは結論

Llama 2は商用利用可能です。再配布や改変(LoRAやファインチューニング含む)も認められますが、配布時の表示義務受入規約(AUP)の順守“他LLMの学習強化への利用禁止”、そして月間アクティブユーザー(MAU)7億超の追加許諾条項など、実務で外せない条件があります。(Hugging Face, AI Meta)

ライセンスの要点(商用で最低限おさえる4点)

  1. 商用利用の可否
     研究・商用ともに利用可。世界共通・無償・非独占の利用許諾が付与されます。(AI Meta)
  2. MAU7億条項
     Llama 2が公開された時点の前月に、ライセンシーやその関連会社の製品・サービス合算MAUが7億超なら、Metaに追加ライセンス申請が必要。許可が出るまで本ライセンスに基づく権利は行使できません。(Hugging Face)
  3. 再配布・改変の条件
     モデルや派生物を配布する際は**ライセンス表記と注意書き(Notice)**を同梱し、AUPに従う必要があります(派生物の再配布も同様)。(Hugging Face)
  4. 使用制限(AUP/競合学習禁止)
     AUPで禁止される用途を避けることに加え、Llama 2やその出力を使って“他のLLM”を改良してはならない(Llama系やその派生は除く)という条項があります。(Hugging Face)

できること/NGの境界

  • できる
     社内・社外向けアプリ、SaaS、オンプレ製品への組込み、エッジ推論、RAG、LoRA/全量微調整、モデルの再配布(条件充足前提)。(Hugging Face)
  • NG/注意
     AUP違反用途(違法行為の助長など)、出力を使った別LLMの学習や評価改善MAU7億超で無許諾運用、ライセンス表記欠落の再配布。(Hugging Face)

表示・配布の実務テンプレ

  • 同梱物
     「Llama 2 is licensed under the LLAMA 2 Community License, Copyright (c) Meta Platforms, Inc. All Rights Reserved.」を含むNoticeファイル、ライセンス本文、AUP参照の明示。(Hugging Face)
  • 派生モデル
     学習レシピ/差分(LoRA)配布も同様の表示AUP順守を明記。評価レポートにもLicense/AUPを記載。(Hugging Face)

SaaS・オンプレ・再配布のケース別チェック

  • SaaS提供
     利用規約にAUP順守をユーザー義務として組み込み、濫用検知(プロンプト監査・レート制御)を実装。MAU集計ロジック(関連会社分含む)を月次で監査。(Hugging Face)
  • オンプレ提供
     顧客配布パッケージへNotice/License/AUPを必ず同梱。サードパーティへ再配布される可能性を想定した再配布時の表示義務を契約に反映。(Hugging Face)
  • モデル配布(Hugging Face等)
     カードやREADMEにライセンス表記AUPリンク学習データ方針既知のリスクを明記。(Hugging Face)

よくある誤解

  • 「完全なオープンソース」なのか
     OSI承認の“オープンソース”ではありません。MAU7億条項やAUPなどの制限があるため、“オープン”と表現されることはあっても、オープンソースの定義は満たしません。(Open Source Initiative)
  • 「将来MAUが7億を超えたら違反か」
     条文は公開時点の前月MAUを基準にしています。とはいえ大規模化が視野なら、早期にMetaへの相談窓口を整えるのが安全です。(Hugging Face)

監査・法務チェックリスト

  • ライセンスとAUPを社内ポリシーに取り込み、禁止用途のモデレーション設計を実装
  • Notice/License/AUPの自動同梱パイプラインをCIに追加
  • **MAU集計(関連会社含む)**の月次レポート化と閾値アラート
  • **“他LLM学習禁止”**のデータガバナンス(出力の二次利用フラグ付け)
  • エクスポート管理・制裁対象国対応の貿易管理チェック(Hugging Face)

リスクと対応

  • 契約終了・違反時モデルの使用停止・削除義務。IP侵害を主張してMetaを訴えた場合、ライセンス終了条項のリスクも把握。(Hugging Face)
  • 広報・FAQ整備で、オープンソース性の誤解を回避し、顧客/投資家コミュニケーションを統一。(Open Source Initiative)

要点だけ覚えておきましょう。商用は可能ですが、AUP順守・再配布の表示義務・“他LLM学習禁止”・そしてMAU7億超の追加許諾、この4点を外さなければ大きな問題は起きません。ここを運用ルールに落としておけば安心ですよ

Llama2の導入手順 ローカルGPU クラウド

事前準備とアクセス申請

  • Metaのモデル利用申請を行い、承認メールを保存します。Hugging Faceアカウントを作成し、アクセストークンを発行します。
  • 利用するモデル名を決めます(例:meta-llama/Llama-2-7b-chat-hf-13b--70b-)。用途に応じて chat か base を選びます。
  • 日本語重視なら、後段で日本語指示データの追加や日本語強化派生モデルの検討を行います。

ローカル導入(GPU前提の標準構成)

要件と目安

  • OS:Linux/Windows 10+/macOS(Apple Silicon可)
  • ドライバ:CUDA対応GPUの場合は NVIDIA Driver + CUDA Toolkit、PyTorchはビルド互換の版を選びます
  • VRAM目安(4bit量子化・推論時)
  • 7B:6〜8GB程度
  • 13B:10〜12GB程度
  • 70B:35〜40GB程度(単機でも80GB級が望ましい)
  • ストレージ目安(HF版FP16の重み+キャッシュ):7Bで10GB台、13Bで20GB台、70Bで100GB超を想定します

インストール(Python + Transformers)

  1. 仮想環境を作成します。
   uv venv .venv && source .venv/bin/activate  # または python -m venv
  1. PyTorch(CUDA版)をインストールします。
   # 公式のget-startedに従ってCUDA互換のコマンドを選択
   pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
  1. ランタイムと量子化関連を入れます。
   pip install transformers accelerate sentencepiece bitsandbytes safetensors
  1. トークンの設定と初回起動コードです。
   import os, torch
   from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline, BitsAndBytesConfig

   os.environ["HF_TOKEN"] = "hf_********"  # 発行したトークン
   model_id = "meta-llama/Llama-2-13b-chat-hf"

   quant = BitsAndBytesConfig(
       load_in_4bit=True, bnb_4bit_quant_type="nf4",
       bnb_4bit_use_double_quant=True
   )
   model = AutoModelForCausalLM.from_pretrained(
       model_id, token=os.environ["HF_TOKEN"],
       quantization_config=quant, device_map="auto", trust_remote_code=True
   )
   tok = AutoTokenizer.from_pretrained(model_id, token=os.environ["HF_TOKEN"])
   pipe = pipeline("text-generation", model=model, tokenizer=tok, repetition_penalty=1.1)
   print(pipe("USER: 日本語で自己紹介してください\nSYSTEM:", max_new_tokens=200)[0]["generated_text"])
  1. 推論品質/速度の調整ポイントです。
  • 生成長:max_new_tokens、出力安定性:temperaturetop_p
  • VRAMが不足する場合は 8bit→4bit量子化、rope_scaling無効化、バッチ縮小で回避します
  • メモリ断片化対策に PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 を設定します

低リソース代替(llama.cpp / GGUF / Ollama)

  • CPUやApple Silicon、古いGPUでも軽量に回す場合に有効です。
  • 手順の要点
  1. GGUF形式の量子化モデルを入手(例:q4_k_m
  2. llama.cpp をビルドし実行、または Ollama をインストール
  3. サーバーモードで起動し、CLI/HTTPで推論
  • 例(Ollama)
  brew install ollama
  ollama pull llama2:13b
  ollama run llama2:13b

GUI運用(Text Generation Web UI)

  • モデル切替やプロンプトテンプレ、LoRA読込が容易です。
  • 使い方:リポジトリ導入 → WebUI起動 → モデルパス指定 → 生成設定を保存

ローカル導入(Windowsメモ)

  • CUDA + 最新GPUドライバを入れ、pip install bitsandbytes が通らない場合は pip install bitsandbytes-windows など派生ビルドを利用します。
  • PowerShellの長いパスや日本語パスで不具合が起きることがあるため、短い ASCII パス配下に環境を作ります。
  • メモリ節約のためページファイルを十分に確保します。

クラウド導入(実務向け)

どの形で動かすかを決めます

  • 単体インスタンスでの REST サービング:TGI(Text Generation Inference)、vLLM、Ollama Server、llama.cpp サーバ
  • バッチ/非同期:キューイング(SQS/PubSub)+ワーカー
  • スケール要件:オートスケール or 固定(営業時間のみ稼働など)

インスタンス選定

  • 7B/13B:A10G(24GB) / L4(24GB) / RTX 4090(24GB) 相当で4bit推論が安定します
  • 70B:A100 80GB 単機または H100、あるいはマルチGPU(Tensor/PPで分割)
  • ストレージはモデルサイズ+10〜30%の余裕。永続ディスク(EBS/PD)にキャッシュを置きます

代表的なサービング例

  • vLLM(高速生成・OpenAI互換API)
  docker run --gpus all -p 8000:8000 \
    -e HF_TOKEN=hf_******** \
    vllm/vllm-openai:latest \
    --model meta-llama/Llama-2-13b-chat-hf \
    --quantization bitsandbytes
  # OpenAI互換で叩けます
  curl http://<host>:8000/v1/chat/completions -H "Content-Type: application/json" \
    -d '{"model":"meta-llama/Llama-2-13b-chat-hf","messages":[{"role":"user","content":"日本語の自己紹介"}]}'
  • Hugging Face TGI(安定運用・並列化)
  docker run --gpus all -p 8080:80 \
    -e HUGGING_FACE_HUB_TOKEN=hf_******** \
    ghcr.io/huggingface/text-generation-inference:latest \
    --model-id meta-llama/Llama-2-13b-chat-hf --quantize bitsandbytes
  • Ollama Server(手軽・軽量)
  ollama serve  # ポート11434
  curl http://<host>:11434/api/generate -d '{"model":"llama2:13b","prompt":"こんにちは"}'

ネットワークとセキュリティ

  • APIの前段にAPI Gateway/ALBを置き、IP許可リストまたは認可(JWT/OAuth)を必須化します
  • モデル取得用のトークンは KMS/Secret Manager に保管します
  • 監査ログ:プロンプト/応答をPIIマスキング後に保存し、TTLで自動削除します

コスト最適化

  • 量子化(4bit/8bit)、バッチ推論、max_tokens制限、キャッシュ(vLLMのPagedAttention)で単価を下げます
  • スケジューリング(営業時間のみ起動)、スポット/プリエンプティブの併用を検討します
  • 粗い概算式の例
  • 推論コスト ≒(GPU時間単価 × 実稼働時間)÷(1時間あたり処理リクエスト数)
  • リクエストレートは トークン/秒 × 同時実行 で見積もります

セットアップが詰まりやすいポイント

  • ライセンス承諾未了:Hugging Faceで Llama2 の使用同意が未完だと403になります
  • CUDA不整合:PyTorchビルドとCUDAドライバの版ズレでロードに失敗します
  • VRAM不足:OOM発生時は 4bit量子化・バッチ縮小・max_new_tokens減・長文履歴の削除で回避します
  • Windowsのbitsandbytes:ビルド済みWheelを利用し、accelerate configでデバイスマップをautoにします
  • 70Bの単機運用:A100 80GB/H100推奨。分割時は tensor parallel / pipeline parallel を有効化します

導入後の運用ベストプラクティス

  • 品質:定常の社内プロンプトセットで自動評価(正答率、一貫性、毒性検査)
  • 安全:入力前マスキング、出力側フィルタ(NG語、PII)、コンテキスト長の上限
  • RAG:社内検索を併用し、最新性と事実性を補強します(スキーマ設計と帰納的プロンプト)
  • 監視:レイテンシ、トークン/秒、エラー率、OOM回数、GPUメモリ利用を可視化ししきい値で通知します

環境別のクイック選定表

  • ノートPC/Mac:Ollama または llama.cpp(7B/13Bのq4)で軽量運用
  • 開発サーバ1台:Transformers + bitsandbytes(13B)、または vLLM(7B/13B)
  • 本番API(中規模):vLLM or TGI(A10G/L4/A100 80GB)
  • 高精度/長文:70B(A100 80GB/H100、マルチGPU可)、RAG必須

ライセンス上の実務メモ

  • モデルの再配布や第三者提供時は、Llama 2 コミュニティライセンスの条件に従い、同意書の提供と出所明示を行います
  • 月間ユーザー数が非常に大規模な場合の追加ライセンス条項を事前に確認します
  • 生成物の取り扱い(著作権・個人情報)を社内ポリシーに明文化します

要はね、まず申請とトークン周りをきっちり通して、手元なら4bit量子化で7B/13Bから、クラウドはvLLMかTGIでA10G→A100へ段階的に伸ばすのが堅実です。VRAMが足りないときは量子化とバッチ縮小、品質はRAGとプロンプト整備で底上げしていきましょう

Llama2の日本語対応強化と学習データ

前提と到達目標

Llama2の事前学習は英語優勢で、日本語は語彙被覆・文体制御・固有名詞の再現で弱みが出やすいです。到達目標は次の4点です。

  1. 語彙被覆の拡張と漢字・かなの揺れ吸収、2) 敬語・文末表現の安定、3) 業務固有語の正確性、4) 評価指標での継続改善です。

強化の基本戦略

  1. 継続事前学習(CPT)
    大量の高品質日本語コーパスで追加事前学習を行い、文法・語彙・世界知識の土台を底上げします。英語混在を避け、日本語比率を高めるほど効果が安定します。
  2. 指示チューニング(SFT)
    日本語の命令・質問・役割指定・制約条件を含む多様なプロンプトと模範応答でSFTします。タスク別(要約・抽出・分類・RAG・会話)にデータを束ねると汎用性が上がります。
  3. 嗜好最適化(DPO/ORPO等)
    文末の丁寧さ、過度な断定回避、根拠提示などの「望ましい日本語出力」をペア比較データで学習します。短文化や箇条書き優先などメディア運用ポリシーも反映できます。
  4. ドメイン適応
    業界語・製品名・規約文の再現性はドメイン固有SFTやRAG辞書で補強します。一般日本語の流暢性を損ねないよう、CPT→SFT→ドメインSFTの順で段階適用します。

学習データの設計

ソース設計

  • 一般日本語:百科・ニュース・白書・技術記事・QAフォーラム。誤記やコピペを除外します。
  • 法令・規程:公式配布の条文・告示・ガイドライン。句読点と条番号の正規化が重要です。
  • 企業ドメイン:FAQ、製品マニュアル、サポート履歴から抽出した問答。機密は匿名化して要旨化します。
  • 会話テンプレ:敬体・常体、社外/社内、サポート/営業など文体別テンプレを多様化します。

クリーニングと前処理

  • 言語判定と重複除去:fastText等の言語判定→MinHash/SimHashで近重複除去。
  • 正規化:全角/半角、句読点、全角英数、機種依存文字、表外漢字の統一。
  • 固有名詞の保護:ブランド名・品番・型式・住所・人名はトークン境界を壊さないよう特殊トークンで囲うか、RAG辞書へ寄せます。
  • PIIマスキング:電話番号・メール・住所・免許・マイナンバー等はパターン抽出でマスクします。

日本語特有のトークナイズ対策

  • SentencePieceの正規化ルール拡張で「ヶ/ケ/ヵ」「〜/~」「・/中黒」などを統一します。
  • 追加語彙:社名、品番、医薬品名、地名の頻出N-gramを追加トークン化し分割崩壊を防ぎます。既存語彙を壊さない小規模追加が安全です。

学習レシピ例

継続事前学習(7B/13B目安)

  • データ量:日本語10〜80Bトークン(品質優先で徐々に拡張)。
  • コンテキスト長:4k→8kに伸張すると長文要約や規約処理が改善します。
  • 学習率と安定化:低LR(1e-5台)+Cosine、混合精度+bfloat16。英語混入は10%未満に抑制します。
  • 正規化ミス監視:学習中に句読点連打・記号連鎖を監視し、データ側のクリーニングへフィードバックします。

指示チューニング(SFT)

  • 規模:20k→200k例を段階増加。各サブタスクを均衡化(会話40%、要約20%、抽出20%、分類/生成20%など)。
  • 形式:<system>方針</system><user>指示</user><assistant>回答</assistant> の一貫スキーマ。丁寧語・禁止事項・根拠要求をsystemに明記します。
  • 損失:EOSまでのラベル化、過学習防止にラベル平滑化小さめ(0.05前後)。

嗜好最適化(DPO/ORPO)

  • データ:日本語回答A/Bの優劣対を5k〜50k。冗長/断定/曖昧/俗語/無根拠を負例に、簡潔/根拠付き/敬語整然を正例に。
  • 目的:出力の「丁寧・簡潔・箇条書き」傾向を安定化し、メディア方針に寄せます。

軽量学習

  • QLoRA/LoRA:4bit-QLoRAでVRAMを節約。Target modulesはq_proj/k_proj/v_proj/o_projを中心に。
  • Adapter合成:汎用SFTアダプタ+ドメインSFTアダプタを合成し用途切替を高速化します。

評価と監視

自動評価

  • ベンチ系:日本語含意(NLI)、読解QA、要約、常識推論、指示追従、コード混在など多角評価。
  • 実務プロンプト:自社FAQ、長文規約要約、箇条書き整形、RAG追跡質問で現場妥当性を測ります。
  • 指標:タスク正解率+冗長率、敬体率、箇条書き整形率、用語整合率、根拠提示率。

人手評価

  • 文体適合(敬語・語尾・言い切り/婉曲)、専門用語の誤用、社外向け安全性(誇大・差別・法令抵触)を採点します。

監視

  • 本番ログで「英語化の逆流」「固有名詞の崩れ」「機種依存文字」「全角記号暴走」を検知し、再学習キューへ戻します。

実装のコツ

プロンプト・出力設計

  • 出力ポリシーをsystemで明記(ですます調・見出し/箇条書き・用語統一・禁止表現)。
  • 長文安定:段落ごとに要件を小分け、生成長制限を設定、見出しテンプレを固定します。

辞書/RAG併用

  • 固有名詞や品番はRAG辞書で補完し、生成テキストと根拠スニペットを同時提示します。
  • 辞書優先規則:生成が辞書と矛盾したら辞書を優先するポリシーをsystemに書き込みます。

日本語特有の落とし穴

  • 漢数字・算用数字、和暦/西暦、全角/半角の混在を禁止リストで正規化します。
  • 敬語過多で冗長化しやすいため、語尾候補を制限(「です」「ます」に統一、重複敬語を抑止)。
  • カタカナ用語の表記ゆれ(サーバ/サーバー、ディレクトリ/ディレクトリー)は用語集で固定します。

サンプルワークフロー(7B/13B想定)

  1. 収集・整備:日本語20Bトークン前後、重複・英語混入・PIIを除去
  2. CPT:低LR・8kコンテキストで1〜2エポック
  3. SFT:日本語指示データ10万例、敬体テンプレで整形
  4. DPO:好みデータ2万対で簡潔・根拠・安全性を最適化
  5. RAG辞書:自社用語1〜5万語とFAQ根拠を検索可能に
  6. 評価:自動+人手で文体・正確性・安全性を確認、回帰失敗はデータ起因で修正
  7. 運用:監査ログ→誤り分布→データ再生成→小刻み再学習のループ

推奨データの内訳目安

  • 一般日本語(百科・ニュース・解説):40–60%
  • 技術/業務ドメイン(マニュアル・FAQ・規約):20–40%
  • 指示・会話テンプレ(多文体):10–20%
  • テスト/評価用(ホールドアウト):5%前後

ポイントは「日本語を増やす」だけでなく、敬体テンプレと用語辞書、RAGの三点セットで出力方針を固定することです。まずは小規模SFT+DPOから始めて、監視で見つかった揺れをデータに戻し、短いサイクルで直していきましょう

Llama2でできること活用ユースケース

社内QA・ナレッジ検索(RAGで最新情報に強くする)

目的は「社内ドキュメントを自然文で探し、根拠を添えて答える」ことです。検索結果を根拠として回答を組み立てるRetrieval-Augmented Generation(RAG)を使います。

推奨設計は、インデクサ(PDF/Slack/Confluence取り込み)→ ベクタDB(重複削除・埋め込み更新)→ リトリーバ(多段検索+再ランキング)→ Llama2で回答生成+引用整形の流れです。

KPIは「正解率(人手評価)」「出典付き回答率」「一次回答までの平均応答時間」です。

プロンプト例:
「あなたは社内ヘルプデスクです。必ず引用URLと抜粋を併記し、推測は禁止。質問:{問い} コンテキスト:{上位文書抜粋}」

リスクは“幻覚”と機密取り扱いです。検索スコア閾値と回答拒否ルール、PIIマスキングで対策します。ローカル実行なら7B/13Bの量子化で十分です。

文書処理の自動化(要約・分類・抽出・翻訳)

大量の議事録、レポート、契約文を短く正確に処理します。

典型パイプラインは、言語判定→前処理(改行整形・章区切り)→ タスク別プロンプト(要約/カテゴリ/項目抽出)→ 監査ログ保存です。

要約は「役員向け1段落+アクション3点」、分類は「多ラベル」、抽出は「契約当事者・金額・更新日」などをJSONで返すと実務で扱いやすいです。

KPIは「F1(抽出)」「評価者満足度(要約)」「処理コスト/件」です。

プロンプト例(抽出JSON):
「次の契約書から当事者・金額・更新日を日本語で抽出し、必ずJSONで返してください。キーは{party_a,party_b,amount,renewal_date}。テキスト:{本文}」

カスタマーサポート・FAQボット(安全策込み)

FAQ・マニュアル・リリースノートを根拠に一次回答します。

設計の要は「安全ガード」と「エスカレーション基準」です。NGワード、返答禁止領域(法務・約款超解釈)、不確実性の自己申告をプロンプトに含め、信頼区間が低いときは人へ転送します。

メトリクスは「自己解決率」「CSAT」「平均応答時間」「誤案内率」です。社外向けは70BやAPI利用が無難ですが、社内向けヘルプなら13B量子化で高コスパです。

コード補完・レビュー・テンプレ生成

設計書から雛形コード、テストケース、PRコメントを生成します。

実務では「差分パッチを入力→要約+レビューポイント出力」「テスト観点表を入力→ユニットテスト雛形出力」が効果的です。

プロンプト例(レビュー):
「目的:{目的} 差分:{git_diff} 出力:重大バグ/設計上の懸念/セキュリティ/パフォーマンス/可読性の順で箇条書き。具体的な修正案を示す。」

KPIは「レビュー指摘の再現率」「バグ流出率」「実装時間削減」です。ローカル実行の需要が高い場合は7B/13Bで補完、レビューは70B相当をクラウドで使い分けます。

分析支援(自然言語→SQL・チャート説明)

BIに接続し、自然文から安全なテンプレSQLに写像して集計意図を満たします。

安全のために「許可テーブル・許可関数のホワイトリスト」「サブクエリ長制限」「EXPLAINチェック→閾値超えで拒否」を入れます。

出力は「SQL」「要約」「注意点(欠損・季節性)」の3点セットにします。KPIは「SQL実行成功率」「再実行回数」「分析サイクル短縮」です。

企画・コンテンツ支援(たたき台から社内体裁へ)

提案書の章立て、見出し、要約、リスク、Q\&A想定を生成し、社内標準テンプレへ流し込みます。

効果を最大化するには「社内テンプレの書式例」「禁止表現」「過去の採用例」をコンテキストに含めます。KPIは「初稿完成までの時間」「修正回数」「採択率」です。

会議アシスト(要約・議事録・タスク化)

音声認識の結果を節見出しごとに要約し、決定事項・保留・担当・期日を抽出します。

プロンプトは「出力はMarkdownの議事録→Decision/Action/Owner/Dueの表」です。KPIは「アクション抜け漏れ率」「共有までの時間」です。

コンプライアンス・レッドラインチェック

自由記述の文面から、機微情報の露出、表現の法務リスク、差別的表現を検知します。

ルールベースとLlama2の併用が現実的で、まずルールで強制遮断→曖昧領域をLlama2で説明つき判定にします。

出力は「該当箇所の抜粋」「理由」「代替表現案」です。KPIは「検知再現率」「誤警告率」です。

エッジ/ローカル実行ユースケース(オフライン・高秘匿)

店舗端末や生産ラインの端末上で、手順書検索や異常時の一次手当ガイドを提供します。

7B/13Bを4bit量子化してCPU/小型GPUで動かし、更新は夜間同期に限定します。KPIは「回線断時の稼働率」「推論レイテンシ」「現場自己解決率」です。

ユースケース別おすすめモデルと設定(実運用目安)

社内QA・FAQは7B/13B(4bit量子化、温度0.2–0.5、max_new_tokens 256、根拠必須)。根拠スコアが閾値未満なら「回答保留」にします。

文書要約・抽出は13B(温度0–0.3、出力はJSON/Markdown固定、検証スキーマで機械判定)を推奨します。

コードレビューは13B以上、推論は温度0–0.2、diff長が長いときはチャンク分割+マージ要約が有効です。

NL2SQLは13B/70B、温度0、関数呼び出し風プロンプトで構文を安定化します。

エッジ用途は7B(Q4_K_M相当)を選び、プロンプト短縮とシステムプロンプトに厳格ルールを入れます。

成功させるための運用Tips

すべてのユースケースで「入出力をログ化」「人手評価サンプルを継続蓄積」「週次でプロンプト/リトリーバのABテスト」を回します。

評価は自動化し、正解文書の有無、引用の妥当性、フォーマット遵守を機械チェックします。

コスト最適化は「量子化+短いコンテキスト+厳格テンプレ」で達成します。まずは13B中心で設計し、70Bは再回答時だけに使うのが定石です。

実装は小さく始めて数値で改善します。まずは1ユースケース×10件の評価セットを作り、正解率と根拠付き率を見ます。効果が見えたらプロンプトを固定し、リトリーバの改善に投資するのが早道ですよ

Llama2の性能比較ベンチマークと限界

まず押さえる評価軸

  • 汎用知識・推論
    MMLU、HellaSwag、BBHなどで基礎力を測ります。業務のFAQ応答や一般教養の正答率に直結します。
  • 数理・論理
    GSM8K(算数)、MATH(数学)で逐次推論の安定性を確認します。数式を含む社内手順書の要約や見積もり計算の信頼性に影響します。
  • コーディング
    HumanEval、MBPP、Codeforces派生の私設セットでコード生成・補完を検証します。レビュー負荷の低減に直結します。
  • 会話最適化
    MT-Bench、Arena系の人手評価で指示追従、丁寧さ、一貫性を確認します。ヘルプデスクなど対話品質の体感に効きます。
  • 事実性・安全
    TruthfulQA、RealToxicityPrompts、内部ハルシネーション診断で誤情報・偏りを点検します。社外公開前の最低限のゲートです。
  • 長文一貫性
    LongBench、Needle-in-a-Haystackで長文保持・参照精度を見ます。議事録や仕様書の扱いに影響します。

サイズ別の実務体感(目安)

  • 7B
    軽量・安価。英語中心の軽作業(分類・下書き)やRAG前提の検索応答なら十分に使えます。日本語は追加学習やプロンプト工夫が前提です。
  • 13B
    バランス型。業務文書の要約・抽出、簡易コード補完、FAQ自動化などで「使える」品質に届きやすいゾーンです。
  • 70B
    高精度。長文読解、複合推論、非定型質問で安定します。推論コスト・遅延とのトレードオフ管理が必須です。

日本語性能の見立て

  • ベースのLlama2は日本語事前学習が薄く、そのままでは敬体・文脈整合でブレやすいです。
  • 追加学習済み(例:日本語指示データや用語辞書を併用)では、要約・抽出・FAQが実用域になります。
  • 検証は JGLUE系(JNLI/MARC-ja/JSQuAD)+自社ドメイン評価 の併用が効率的です。公開ベンチで高くても、自社文体で崩れることがあるためです。

ベンチマークの読み解き方と設計 Tips

  • 公開ベンチだけで選ばない
    MMLUやGSM8Kは「基礎学力」を示しますが、実務は社内語彙・固有名詞で決まります。必ず自社プロンプトでA/Bします。
  • プロンプトの固定化
    評価時はシステム・ユーザー・アシスタントの役割文、温度、トップP、停止語を固定します。少しの差で点が動きます。
  • 採点の自動化
    文字列一致+正規化(全角/半角・表記揺れ)→ ルーブリック採点(要点カバー率/禁則違反)→ 人手監査5〜10%抽出の三段構えにします。
  • RAG前提の評価
    業務では最新情報が必要です。**「RAGあり」/「RAGなし」**を分離集計し、検索失敗時のフェイルセーフ(無回答・出典提示)率も出します。

推論コスト・速度の実務感(量子化込みの目安)

  • 7B: 4bit量子化でVRAM 6〜8GB、応答1kトークンあたり数百ms〜数秒(GPU依存)で軽快に動きます。
  • 13B: 4bitでVRAM 10〜12GB。長文要約でも実用。
  • 70B: 4bitでVRAM ≈40GB級、BF16では100GB超が現実的です。高負荷用途は分散推論を想定します。
  • スループットを重視するなら**KVキャッシュ有効化、連続バッチ、Speculative Decoding(候補先読み)**の導入が効果的です。

代表的な強みとハマりやすい弱点

  • 強み
  • 一般知識・常識推論は安定し、**定型ドキュメント化(議事録→要約→ToDo抽出)**が得意です。
  • 追加学習とRAGの併用で社内QAの一次回答精度が伸びます。
  • Code Llama系を組み合わせるとコード補完・雛形生成の生産性が高いです。
  • 弱点(限界)
  • 長文整合:5,000字級の仕様横断で参照抜けが出ます。段落ごとに小問化し、段階推論要点アンカーで補います。
  • 最新性:事前学習の更新が止まるため、RAGなしだと古い記述を混ぜます。常に検索・出典提示を組み込みます。
  • 事実性:自信満々の誤答(ハルシネーション)が残ります。**ソース必須指示・関数呼び出し(ツール使用)**で制御します。
  • 日本語表現:敬語階層や助詞の曖昧さが出ます。出力テンプレ(文末・禁止語)+rewrite段を後段に用意します。
  • 安全:機微情報の再現や差別表現のリスクがあります。脱感作プロンプト・PIIマスキング・拒否文テンプレを先置きします。

ベンチで見落としがちな落とし穴

  • データ重複(コンタミ):公開セットを学習済みだと点が不当に高く出ます。社内合成セット+Blindテストを併用します。
  • 温度・停止語の差:少数点の差で勝敗が入れ替わります。設定を固定しログ保存します。
  • 採点の主観:要約・生成は主観が混ざります。**粒度(文単位・要点単位)**で定義し、採点表を共有します。
  • SLO無視:精度だけ見て応答時間・同時接続数を無視すると運用で破綻します。ベンチにレイテンシと1円あたりトークンを入れます。

導入判断のクイックガイド

  • 社内QA・要約中心 → 13B+RAG+出典必須で十分。
  • 非定型質問・長文横断 → 70B+段階推論+ルールベースの再検証を追加。
  • 軽量エッジやコスト最優先 → 7B 4bit+厳密プロンプト+高品質RAGで補完。
  • いずれも**「モデル単体の点数」ではなく「RAG・ガード・後段検証を含むパイプライン性能」**で意思決定します。

改善レシピ(限界への対策)

  • RAG強化:検索の再ランキング、段落スライディング、引用文ハイライトで事実性を底上げします。
  • Constrained Decoding:正規表現・BNFでフォーマット拘束し、表形式・JSONの壊れを防ぎます。
  • 日本語特化:自社文体・用語辞書でLoRA微調整し、敬語・表記揺れを矯正します。
  • 評価の常時運転:本番トラフィックのサンプリングで継続ベンチを回し、劣化検知・回帰を防ぎます。

ベンチは“点取りゲーム”で終わらせないでくださいね。実務はRAGやガード、後段チェック込みの“総合力”で決まります。小さく速く試して、数字と体感の両方で選びましょう

Llama2運用ベストプラクティス 安全性 コスト最適化

運用設計の原則

  • 用途別にモデルを分割:対話・要約は7B/13B、精度要求の高い分析は70Bなど、タスクごとに最小十分モデルを割り当てます。
  • RAG前提の設計:最新情報・社内専用知識はRAGで補い、ベースモデルの幻覚を抑えます。
  • “品質・速度・コスト”の三軸KPI:例)回答正解率、平均レイテンシP95、1リクエスト当たり総トークンコスト。ダッシュボードで日次トラッキングします。
  • 本番は常に段階投入:影響度小→中→大の順でカナリアリリースとA/Bテストを行います。

安全性ガードとガバナンス

  • プロンプトガイドライン
  • システムプロンプトで禁止領域(個人攻撃、医療・法務の断定等)と“安全な断り方”を明示します。
  • ロール・境界条件・出力形式(JSON/Markdown)を固定し、脱線を抑えます。
  • 出力ガード(多層)
  1. 生成前:入力でPII/機微情報を検知しマスキング。
  2. 生成中:トークン制限、停止語、温度・top_pの上限。
  3. 生成後:有害表現/リーク検知のルール+分類器でフィルタ。必要時は“拒否テンプレート”に差し替えます。
  • データ保護
  • 入出力の一意識別子化(ハッシュ)と可逆マスキング(鍵管理はKMS)。
  • ログの最小化(サンプル率・保持期間・マスキング方針を運用規程に明記)。
  • 匿名化不能なデータは学習・評価コーパスから除外します。
  • 監査と責任分担
  • モデルカード(学習ソース、想定用途、既知の限界、評価指標)を作成。
  • 変更管理(プロンプト・重み・RAGインデックス)をGitOpsで版管理。

品質評価と継続モニタリング

  • オフライン評価:日本語指示追従、要約忠実度、社内FAQ正答などの固定ベンチを作り、モデル/プロンプト更新時に自動回す。
  • オンライン評価:ユーザー満足度、手戻り率、エスカレーション率を計測。少数の人手監査でサンプルを週次レビュー。
  • レッドチーミング:脱獄・越境質問・誘導表現のテストセットを運用。失敗例は即プロンプトと出力ガードに反映します。

推論コスト最適化

  • モデル・重み
  • 量子化(4bit/NF4)でVRAMと電力を削減。精度に影響するタスクは8bitや混合精度に切替。
  • LoRA/QLoRAで領域別の軽量アダプタを用意し、70B常用を避けます。
  • トークン経済
  • 出力を構造化(JSONスキーマ)して冗長生成を防止。
  • システム+圧縮プロンプト、要約コンテキスト、テンプレ分離で入力トークン削減
  • 早期停止(stopシーケンス)とmax_new_tokensの厳格化。
  • 計算効率
  • バッチ推論(同一パラメータをまとめる)、KVキャッシュ再利用、繰り返し問い合わせは結果キャッシュ
  • スペキュレーティブデコーディングルーターで軽量モデル→重いモデルの段階判定。
  • インフラ最適化
  • オートスケールはキュー長/P95遅延で制御。スポット/プリエンプティブ活用、時間帯別スケジューリング
  • ストレージはEmbeddings/RAGの再計算を減らすための増分更新設計。

スケーラビリティと信頼性

  • SLO/SLA:P95<2s、エラー率<1%などを明確化。
  • レートリミット・タイムアウト:ユーザー/トークン単位で制御し、リトライは指数バックオフ
  • フォールバック:モデル障害時は“検索+テンプレ回答”や“小型バックアップモデル”に切替。
  • 観測性:プロンプトID、モデルバージョン、トークン数、温度、検閲理由を構造ログで収集し、相関分析を行います。

RAG品質を上げる実務

  • 索引の鮮度と粒度:段落500–1,000字のチャンク+オーバーラップ。
  • 再ランキング:BM25→ベクトル→再ランクの多段検索。
  • 引用義務:回答に根拠URL/文書IDを必ず付与し、ハルシネーション抑制。
  • 機微データの境界:部門・権限ごとに別インデックスで検索範囲を物理分離。

インシデント対応フロー

  1. 検知:有害出力/データ漏えい疑疑のシグナルをアラート化。
  2. 封じ込め:該当バージョンのトラフィックを即時カットしフォールバック。
  3. 根本原因:プロンプト・ガード・データ・プラットフォームのどこかを切り分け、再発防止策(テスト/ルール追加)をチケット化。
  4. 通知と記録:関係者・法務・DPOに定型で共有、監査ログに紐付けます。

よくある失敗と対策

  • “とりあえず70Bで全処理”:ルーター+アダプタで小型を基本に。
  • プロンプト肥大化:要件をルール化し、テンプレを3行以内の指示と出力形式に分離。
  • 評価なしの本番投入:固定ベンチ+オンラインKPIが閾値を満たすまで凍結。
  • ログ収集しすぎ:マスキング・サンプリング・保持90日上限などの最小化原則を徹底。
  • RAGの的外れ:再ランキング導入と“回答は必ず引用付き”のプロンプトで改善。

導入時のチェックリスト

  • 目的・禁止用途・責任分担が文書化されている
  • モデル/プロンプト/インデックスのバージョン管理ができている
  • 入出力マスキングと保持期間が運用規程に明記されている
  • 三軸KPIダッシュボードとアラートが稼働している
  • カナリア・フォールバック・レッドチームの手順がある

要は“安全に速く安く”を同時に追うには、RAG前提の小型モデル運用と多層ガード、そして数値で回す評価・監視が肝です。今日からKPIダッシュボードとカナリア導入をセットで始めていきましょう