LLMとは?大規模言語モデルをわかりやすく解説
LLM(大規模言語モデル)は、膨大な量の文章で学習し、言語を理解して生成できるようにしたAIの一種です。文章が与えられると、その続きに来るものを、少しずつ一つの断片ずつ予測します。この単純な能力だけで、質問への回答、文章の作成、要約、翻訳、コードの作成まで行えるようになるのです。ChatGPT、Claude、Geminiの背後にあるモデルは、すべてLLMです。
AIでアプリを作る場合になぜ重要なのか
AIアプリビルダーで作るとき、あなたはLLMと二重に関わっています。第一に、アプリを作っているのがLLMです。依頼を読み、変更を計画し、コードを書きます。第二に、アプリの 中に LLMを組み込みたくなるかもしれません。チャットボット、要約ボタン、文章作成の補助などです。
基本を理解しておくと、どちらの場合にも役立ちます。AIがあいまいな依頼を誤解するのはなぜか、なぜ自信満々に間違ったものを生成してしまうのか、長い会話では前に話した細部を見失うことがあるのはなぜか、そして、アプリにAI機能を追加すると利用するたびに費用がかかるのはなぜか、が説明できます。数学を知る必要はありません。確かな頭の中のモデルがあれば十分です。
身近なたとえ
とてつもなく膨大な図書館を読み尽くした人を想像してください。本、ウェブサイト、マニュアル、コード、フォーラムなど、あらゆる文章を読んでいて、どんな文章の続きでも、それに合うように書くことが驚くほど上手になっています。メールの書き出しを渡せば、あなたの口調で書き終えてくれます。質問をすれば、そうした質問の後に続きそうな答えを書いてくれます。
しかし、確認するためのメモはありません。そして、その図書館は、ある日付で閉館しています。その人は事実を調べているのではなく、パターンを思い出しているのです。ほとんどの場合、パターンは正しいものです。ところが、ときには、ただ 正しそうに聞こえる だけのものを、まったく同じ自信で埋めてしまうことがあります。
それがLLMです。非常によく読んでいて、とても流暢に書くけれど、記憶は不完全で、事実確認をする仕組みは組み込まれていない書き手なのです。
LLMの仕組みを平易に説明すると
- 学習。 モデルは膨大な量の文章を見せられ、何十億もの内部の数値(パラメータ)を調整することで、次に来る文章を予測できるように学習します。ほとんどのLLMが使う設計は トランスフォーマー と呼ばれ、2017年にGoogleの研究者によって発表されました。
- 調整。 生のモデルは、指示に従い、会話を続け、有害な出力を避けるように、多くの場合は人間のフィードバックを使って磨き上げられます。
- 利用(推論)。 プロンプトを送ると、モデルはそれを読み、トークン 単位で1つずつ返信を生成します。そのたびに、それまでのすべてを踏まえて、もっともらしい次のトークンを選びます。
モデルの中には事実のデータベースがあるわけではなく、あなたとの会話から学習し続けるわけでもありません。会話の中でモデルが「知っている」ことは、学習によるものか、いま目の前にあるもの、つまり コンテキストウィンドウ から来たものだけです。
具体例:顧客対応の返信
あなたがオンラインの植物ショップを運営していて、LLMに次の文章を貼り付けたとします。
お客様からのメッセージ:「注文番号 #4412 の商品が、割れた鉢の状態で届きました。どうしていただけますか?」当店の方針:破損した商品は、写真を送っていただければ14日以内に無料で交換いたします。感じのよい返信を書いてください。
このとき、次のことが起きます。
- 文章はトークンに分割されます。おそらく百個ほどです。
- モデルは全体を読みます。お客様のメッセージ、あなたの方針、あなたの指示です。
- 返信をトークン単位で生成します。「ご注文の鉢が割れた状態で届いてしまい、大変申し訳ございません…」と書き、写真を求め、無料交換について触れます。
では、同じ依頼を、方針 なし でしてみましょう。モデルは、やはり自信のある感じのよい返信を書くでしょう。しかし、返金を約束したり、30日の期間を提示したりするかもしれません。サポートのメールでよくあるパターンを見てきたからです。これが ハルシネーション であり、LLMについての最も実践的な教訓を示しています。LLMの正確さは、あなたが与える情報の正確さに依存します。 信頼できる答えが必要なアプリは、毎回、適切な根拠資料をモデルに渡しています。これは RAG と呼ばれる手法です。
主な用語の説明
| 用語 | 意味 |
|---|---|
| トークン | 文章の断片。多くは単語またはその一部。上限と料金はトークンで数えられる。 |
| コンテキストウィンドウ | モデルが一度に考慮できる文章の量。プロンプト、会話、文書を含む。 |
| プロンプト | モデルに与える入力。プロンプトエンジニアリングとは をご覧ください。 |
| パラメータ | 学習によって得られた内部の数値。多ければ自動的によいとは限らない。 |
| 学習データ | モデルが学習した文章。 |
| 知識のカットオフ | モデルが学習データを持たない日付。教えられない限り、最近の出来事は知らない。 |
| ハルシネーション | 流暢で自信に満ちているが、誤った出力。 |
| 温度(temperature) | 出力がどれだけ多様で予測しにくいかを決める設定。 |
| 推論(inference) | 答えを得るためにモデルを動かすこと。利用するたびに支払うのはこれ。 |
| マルチモーダル | テキストだけでなく、画像や音声など他の入力も扱えるモデル。 |
| API | アプリがプロンプトをLLMにプログラムから送る方法。LLMのAPIの使い方 をご覧ください。 |
よくある間違いと誤解
- 「モデルは情報を調べている」。 単独のLLMは調べません。ウェブ検索や文書の検索を加えるアプリもありますが、モデル自体はパターンから生成しています。
- 「自信がありそうなら正しい」。 自信と正確さは無関係です。名前、数字、日付、価格、法律や医療に関わるものは必ず確認してください。
- 「私が言ったことはすべて覚えている」。 覚えているのは、コンテキストウィンドウに収まる範囲だけです。非常に長い会話では、前の細部が抜け落ちたり、注目されにくくなったりします。大事なことは言い直しましょう。
- 「人間のように考えている」。 印象的な推論をすることはありますが、目標や信念、結果を意識する仕組みはありません。出力は、確認すべき下書きとして扱いましょう。
- 「大きいものや新しいものが常によい」。 単純で大量に処理する作業には、小さく、安く、速いモデルのほうが適切なことがよくあります。
- 確認せずに個人データを送る。 顧客データをAIサービスに貼り付けたり、アプリに組み込んだりする前に、提供元のデータ利用と保存に関する規約を確認してください。
AIビルダーへの頼み方
LLMがアプリを作っているとき:
- 「何かを変える前に、私が何を理解したか、そしてこれから何をするかを教えてください。」
- 「正確な方針の文言がこちらです。想像で細部を作らず、そのまま使ってください。」
- 「価格や日付などの事実は推測しないでください。プレースホルダーを残して、一覧にして私に教えてください。」
アプリの中にLLMを組み込みたいとき:
- 「サーバーから [提供元] のAPIを呼び出す [要約] ボタンを追加してください。APIキーはシークレットに保存し、ブラウザには決して出さないでください。」
- 「回答が方針に沿うように、私たちの方針をプロンプトに入れてください。確信がないときは『わかりません』と答えるようにしてください。」
- 「回答の長さに上限を設けて、1人のユーザーが1日に行えるリクエストの数も制限してください。」
- 「リクエストごとの費用を記録して、利用状況が見えるようにしてください。」
ステップごとのガイドは、アプリにAI機能を追加する方法 をご覧ください。
LLMとMythex
Mythexの構築エージェントはLLMで動いています。すべての人が同じStandardエージェントを使い、モデルを選ぶ画面はありません。構築にはMythexのクレジットを使います。ただし、あなたが作るアプリの 中 のAI機能は別物です。OpenAIやAnthropicなどの提供元のAPIキーを自分で用意し、プロジェクトのシークレットとして保存すると、その利用料金は提供元から直接請求されます。ドキュメントのレシピ アプリにAIを追加する に、使うべきプロンプトが載っています。
よくある質問
LLMとは何の略ですか?
LLMはLarge Language Model(大規模言語モデル)の略で、非常に大量の文章で学習し、言語を理解して生成するAIモデルです。ChatGPT、Claude、Geminiの背後にあるモデルはLLMです。
ChatGPTはLLMですか?
ChatGPTは、OpenAIのLLMの上に作られたチャットアプリです。LLMは文章を生成する基盤のモデルで、アプリはその周りにチャットの画面、記憶機能、ツール、安全のための仕組みを加えています。
LLMはなぜ間違ったことを作り出すのですか?
LLMは、データベースで事実を調べるのではなく、学習したパターンに基づいて、もっともらしい次の言葉を生成します。適切な情報が足りないときには、流暢で自信に満ちた、しかし間違った文章を生成することがあり、これをハルシネーション(幻覚)と呼びます。根拠となる資料を与え、回答を確認することで、そのリスクを減らせます。
LLMは私との会話から学習しますか?
会話の途中でモデルが変わることはありません。モデルはコンテキストウィンドウの中にあるものだけを見ています。会話の内容が将来のモデルの学習に使われるかどうかは、提供元の方針と設定によって異なるので、使っているサービスの規約を確認してください。
LLMにおけるトークンとは何ですか?
トークンは、モデルが読み書きする文章の断片で、多くの場合は単語やその一部です。コンテキストの上限とAPIの料金はトークンで数えられるため、プロンプトや回答が長いほど費用がかかります。