LLMをアプリに組み込む
この章でわかること: 「アプリにAI(LLM)を組み込みたい」と思ったときの判断軸。 LLMが得意なことと使わなくてよいことを見分け、組み込むなら フロントだけで動く軽量モデルかクラウドのAPIか、という2つのレベルから選べるようになります。
LLM(大規模言語モデル)は、AI・外部サービスでできることで触れた 「生成AI系」の心臓部です。ここでは一歩踏み込んで、それを自分のプロトにどう載せるかを扱います。
LLMが得意なこと
Section titled “LLMが得意なこと”LLMは、言葉のゆらぎを受け止めて、言葉を作り出すのが得意です。入力がきっちり 決まっていなくても、意図をくみ取って柔軟に応えます。
- 理解: 自由に書かれた文章から要点や意図を読み取る
- 生成: 案内文・返信・キャッチコピーなどの下書きを作る
- 要約・翻訳・変換: 長文を短く、別言語に、別のトーンに
- 分類・抽出: 問い合わせを種類分けする、文章から項目を取り出す
- 会話: 文脈を保ちながらやり取りする(チャットボット)
共通点は、**「入力があいまい」で「答えに幅がある」**仕事だということ。ここがLLMの主戦場です。
LLMじゃなくてもできること(まず疑う)
Section titled “LLMじゃなくてもできること(まず疑う)”一方で、LLMを使わないほうが良い場面もたくさんあります。組み込む前に、まず 「これ、決まったルールで済まないか?」を問うのが、エンジニア的な勘どころです。
| こういう処理は | LLMより |
|---|---|
| 合計・税率・割引などの計算 | ふつうの計算式(LLMは計算を間違える) |
| キーワードの完全一致・絞り込み・並べ替え | 通常の検索・ソート処理 |
| 決まった形式の入力チェック(メール形式など) | ルールによる検証 |
| 選択肢からの単純な条件分岐 | if の分岐 |
LLMは便利ですが、遅い・お金がかかる・時々間違える・鍵の管理が要るという コストがあります。ルールで確実に解けることにLLMを使うのは、電卓で済む計算に 毎回人を雇うようなもの。「ゆらぎ」がある所にだけLLM、が基本方針です。
組み込む2つのレベル
Section titled “組み込む2つのレベル”「ここはLLMの出番だ」と決めたら、載せ方は大きく2レベルあります。
レベル1:フロント完結・軽量なエッジモデル
Section titled “レベル1:フロント完結・軽量なエッジモデル”ブラウザの中でLLMを動かす方法です。モデル本体を端末にダウンロードして、 その場で推論します。サーバーもAPIキーも不要なのが最大の特徴です。
- 鍵が要らない: 課金や鍵漏洩の心配がない
- プライバシーに強い: 入力データが端末の外に出ない(社外秘・個人情報に向く)
- オフラインでも動く(モデル取得後)
ただし弱点もあります。端末上で動かす都合、モデルは小さめ=能力・精度は控えめ、 初回のダウンロードが重い(数百MB〜)、端末の性能に左右される。 「軽い分類」「定型の下書き」「機密を外に出せない用途」などに向きます。
代表的な選択肢: WebLLM / Transformers.js(Hugging Face)などのブラウザ内実行、 Chrome が実験的に提供するブラウザ組み込みAI(Prompt API / Gemini Nano)。
レベル2:バックエンド・クラウドのAPI
Section titled “レベル2:バックエンド・クラウドのAPI”OpenAI / Gemini / Claude などの高性能モデルを、APIで呼び出す方法です。 本格的な精度・大規模な知識が要るなら、こちらが本命です。
- 高精度・高機能: 最新の大規模モデルをそのまま使える
- 端末を選ばない: 重い処理はクラウド側が担う
注意点は、APIキーを必ずサーバー側で扱うこと(ブラウザに出さない)、 従量課金でコストが積み上がること、入力データが外部に送られることです。
- 鍵の扱い: APIキーをフロントに置く危険性 / 秘密情報をGitにコミットしない
- 機密の投入可否: 個人情報・著作権の注意
選び方の目安
Section titled “選び方の目安”| 重視すること | 向いているレベル |
|---|---|
| 精度・最新知識・大規模 | レベル2(クラウドAPI) |
| プライバシー(データを外に出さない) | レベル1(エッジモデル) |
| オフライン・鍵なしで手軽に | レベル1(エッジモデル) |
| コストを従量で増やしたくない | レベル1(エッジモデル) |
| 難しい要約・生成・会話をきちんと | レベル2(クラウドAPI) |
- ハルシネーション: LLMは自信満々に間違えます。事実が重要な用途では、参照元データを 渡す・人が最終確認する運用を添える(生成物の良し悪しの見分け方)。
- コスト: クラウドAPIは使うほど課金。想定回数で概算を(費用の目安)。
- プライバシー: 機密・個人情報を外部APIに送ってよいかは事前確認。迷えば匿名化かエッジモデルを。
「AIを組み込む」は、いきなりクラウドの巨大モデルに飛びつく話ではありません。 まず「LLMが本当に要るか」を見極め、要るなら軽量(エッジ)から本格(クラウド)まで 段階で選ぶ——この判断ができると、過剰なコストや情報リスクを避けつつ、必要な所に だけAIの力を効かせられます。夢を広げる発想はAI・外部サービスでできること、 安全に出す作法はセキュリティの章とあわせてどうぞ。
参考リンク(情報ソース)
Section titled “参考リンク(情報ソース)”- WebLLM(ブラウザ内でLLMを動かす): https://github.com/mlc-ai/web-llm
- Transformers.js(Hugging Face / ブラウザで動くモデル): https://huggingface.co/docs/transformers.js
- Chrome 組み込みAI(Prompt API): https://developer.chrome.com/docs/ai/built-in
- OpenAI API: https://platform.openai.com/docs
- Google Gemini API: https://ai.google.dev/
- Anthropic(Claude)API: https://docs.anthropic.com/