基本 初級
推論(インファレンス)
Inference
学習を終えた AI モデルに、実際に入力を与えて答えや生成物を出させる段階のことです。チャットで質問したり、画像を生成したりするときに裏で行われている処理を指します。
別の呼び方推論、インファレンス、Inference
例学習は一度きりだが、推論は利用者が使うたびに走るので、サービスの運用費は主に推論にかかる。
詳しく
推論(インファレンス)とは、学習が済んだモデルを使って、新しい入力に対する出力を計算することです。日常で AI を使っている場面は、ほぼすべて推論にあたります。
学習との違い
モデルのライフサイクルは、大きく二つに分かれます。
- 学習:大量のデータでモデルの重みを調整する。時間と計算が膨大にかかるが、基本的にモデルを作るときに行う。
- 推論:重みを固定したまま、入力から出力を計算する。利用者が使うたびに行われる。
職人にたとえると、学習が長い修業の期間、推論が実際に注文を受けて仕事をする場面です。
文章生成の仕組み
大規模言語モデルでは、入力された文章をトークンに分割し、次に来るトークンの確率を計算して1つ選び、それを追加してまた次を計算する、という処理を繰り返します。出力が一文字ずつ流れるように表示されるのはこのためです。長い入力ほど処理が重くなり、すでに計算した内容を再利用するための KV キャッシュなどの工夫が使われます。
具体例
- チャットボットへの質問、翻訳、要約
- 画像や動画の生成
- 自分のパソコンで動かすローカル LLM(推論だけを手元で行う)
速さと費用
推論の性能は、体感に直結します。
- レイテンシ:応答が始まるまでの時間と、生成の速さ。
- スループット:同時に多くの利用者をさばく力。
- 費用:API の料金は、主に推論に使う計算資源への対価です。
高速化のために、量子化(数値の精度を落として軽くする)、蒸留(大きなモデルの知識を小さなモデルに移す)、投機的デコーディングなどの手法が使われます。推論専用の GPU やチップも開発されています。
使うときの注意・よくある誤解
- 推論中にモデルが賢くなるわけではありません。 会話の中で教えたことは、その会話の文脈には残りますが、モデルの重みが書き換わるわけではありません。
- 同じ入力でも答えが変わります。 出力の選び方に確率が関わるため、設定(temperature など)で揺らぎが決まります。
- 「推論」という語の二つの意味に注意します。 ここでの推論は計算の実行を指し、論理的に考える意味の推論(reasoning)とは別の概念です。後者を重視したものは推論モデルと呼ばれます。
関連する考え方
学習済みモデルを動かすソフトウェアは推論サーバーと呼ばれ、運用の効率に影響します。
計算の置き場所
推論は、クラウド上のサーバーで行うことも、自分のパソコンやスマートフォンで行うこともできます。前者は高性能なモデルを手軽に使え、後者は情報を外部に出さずに済みます。用途と機密性に応じて選びます。
あわせて知りたい言葉
- レイテンシ依頼を送ってから応答が返るまでの待ち時間のことです。AI では、最初の文字が出るまでの時間と全文が出終わるまでの時間に分けて考え、使い心地を大きく左右する要素です。
- 量子化モデルの重みを、16ビットなどから8ビット・4ビットといった少ないビット数で表すことで、モデルのサイズと必要なメモリを減らす手法です。手元の PC でモデルを動かすときによく使われます。
- KVキャッシュLLM が文章を生成するとき、過去の単語について計算した中間結果を保存して使い回す仕組みです。同じ計算を繰り返さずに済むため、生成が速くなりますが、メモリを多く消費します。
- GPU大量の計算を同時に並べて行うのが得意な半導体で、もともとは画像表示のために作られました。AI の学習や推論に向いていて、現在の AI 開発を支える中心的な部品です。
- 推論サーバー学習済みのモデルを読み込み、API として外部からの質問に答えられるようにするソフトウェアです。vLLM が代表例で、多数のリクエストを効率よく同時にさばく工夫が詰まっています。