APIとトークンの基礎知識:AIを使う前に知っておくべきこと
「API」は知っていたけど、「トークン」の正確な意味は長く掴めないまま使っていた。精度の良いモデルほどすぐ制限に引っかかる、という体験から見えたもの。
AI関連の記事を読んでいると「API」「トークン」という言葉が必ず出てきます。この2つを理解していないと、料金の計算もツールの選び方も、エラーの原因も分かりません。この記事では、用語の解説をしつつ、実際にAIツールを使っていて直面した「精度とコストのジレンマ」と「制限の壁」を書きます。
- 「API」「トークン」の意味をなんとなくで済ませている人
- AIツールを使い始めて、制限に引っかかった経験がある人
- APIで何かサービスを作ろうか迷っている人
Photo by Brecht Corbeel on Unsplash
APIは「外部サービスを使うための窓口」— これは元から分かっていた
正直に言うと、APIについて「これを初めて聞いた」という記憶はありません。10年以上前から別の仕事の文脈で使っていました。「今使っているサービスを、外部からプログラム経由で呼び出すための仕組み」という認識は最初からあり、AIでも意味は大きく変わらないと感じています。
なので、AIにおけるAPIも「ChatGPTのウェブ画面を使わずに、プログラムからAIに『この文章を要約して』と指示を出す仕組み」として、特に混乱なく受け入れられました。レストランで例えるなら、APIはメニューのようなもの。厨房(AIサーバー)の中身を知らなくても、メニュー(API)を見て注文(リクエスト)を出せば、料理(レスポンス)が返ってくる。この比喩は昔から知っていたので、違和感なく使えました。
ただ、APIの概念は分かっていても、「APIで実際に何かを作る」ことには踏み切れていません。理由は後で書きます。
トークン — 「使った数」の感覚はあったが、正確な定義は掴めていなかった
一方でトークンは、長く正確な定義が掴めていないまま使っていました。「トークン」という言葉自体は、別の文脈では「鍵のようなもの」という印象で使われることが多く、AIの場合は「使った数・カウント」のような意味だろうとは感じていました。でも、サービスによって意味合いが違うように見えて、今でも「これで合っているのか」と迷うことがあります。
ここで、公式情報を確認して整理しておきます(2026年9月時点・OpenAI公式ヘルプセンターおよびAPIドキュメントより)。
トークンとは、AIが文字を処理する単位です。AIは文字を1文字ずつではなく、いくつかの文字をまとめた「トークン」という単位で処理します。OpenAIの公式説明では、英語の場合「1トークン ≒ 約4文字(約¾単語)」が目安。つまり100トークンで約75語分です。
日本語の場合はもう少し複雑で、文字によって1〜2トークンに分割されます。エンコード方式(AIが文字を分割するルール)によっても違い、新しい方式(o200k_base)では日本語の効率が改善されていますが、それでも英語よりトークンを消費する傾向があります。大雑把には「日本語1文字 ≒ 0.5〜2トークン」と幅がある、と考えておくのが無難です。
APIの料金は「1MTok(100万トークン)あたりいくら」という単位で表示されます。1MTokはざっくり50万〜100万字分。個人用途なら1ヶ月で1MTokを使い切ることはほとんどありませんが、会話履歴を毎回送るような使い方をすると、あっという間に消費します。これについては後で触れます。
Photo by Aleksandr Popov on Unsplash
精度とトークン消費のトレードオフ — 安いモデルと賢いモデル
ここからが実体験の話です。以前、GoogleのAntigravity(AIコーディングツール)を使っていました。AntigravityはGeminiだけでなく、Claude Opus等の複数モデルを統合的に使えるツールです。
この時、Gemini Flash(軽量・高速モデル)を使うと、トークン消費は少ないのですが、精度が良くありませんでした。的外れな返答や無駄な返答が多く、結局やり直しになることが多かった。これは現在も変わっていません。
一方で、Claude Opus(高性能モデル)を使うと、バグを1回で直したり、指示を忠実に再現してくれることが多い。精度は段違いに良い。でも、トークンがすぐに減ってしまう。精度の良いモデルほど、コンテキスト(文脈)を多く読み込み、長く回答するため、トークン消費が跳ね上がります。
つまり、「安くて精度が低いモデル」と「高くて精度が良いモデル」の間で、常にトレードオフが起きる。これは今も変わらない実感です。
軽量モデル(Flash等)
トークン消費は少ない。でも精度が低く、的外れな返答や無駄な回答が多い。結果的にやり直しが増える。
高性能モデル(Opus等)
精度が高い。バグを1回で直すこともある。でもトークンをすぐ消費し、制限にすぐ引っかかる。
レートリミット — タスクの途中で止まる苦痛
精度の良いモデルを使うと、もう一つの壁にぶつかります。それがレートリミット(制限)です。
レートリミットとは、一定時間内にAPIやツールを利用できる回数・量の上限のこと。例えるなら「レストランの1時間あたりの注文上限」のようなもので、上限を超えると「制限に達しました」と断られ、一定時間使えなくなります。
AntigravityでClaude Opusを使っていた時、この制限にすぐ引っかかりました。バグを1回で直してくれるほど精度が良い反面、すぐに制限が来て動かなくなる。しかもタスクの途中で止まることが多く、これが非常に困りました。作業が半分の状態で手詰まりになるのです。
実際、Antigravityの公式フォーラム(Google AI Developers Forum)でも、Claude Opusの週次制限に対する不満が多数報告されています。以前は5時間ごとにリセットされていたのに、ある時点から5日〜7日の週次ベースライン制限に変更され、数日で1週間分を使い切ると残りの日が完全に使えなくなる、という声が相次いでいます(2026年3月〜6月の報告)。私の体験もこれと同じでした。1〜2日で1週間分を使い切ってしまうと、残りの5日間が何もできない状態になります。
つまり、精度の良いモデルほど制限が早く来る。そして制限が来ると、タスクが途中でも止まる。これが、APIやツール経由でAIを使う上で最も困るポイントです。
Photo by Pineapple Supply Co. on Unsplash
ステートレス — 「AIが前の会話を覚えていない」問題
もう一つ、APIを使う上で必ず直面するのがステートレスという仕組みです。ステートレスとは、AIが前の会話を覚えていない状態のこと。
ChatGPTのウェブ版では、前の質問と回答を自動的に覚えていて、文脈を理解してくれます。しかし、API(Chat Completions API)では毎回、前の会話履歴を一緒に送る必要があります。これを知らないと、「APIで2回目の質問をしたら、AIが1回目の質問を忘れていた」という現象に遭遇します。
これは今でも日常的に遭遇する問題です。現状は、Markdownファイルを共有するなどして、最初からプロンプトを繰り返さずに済むように工夫しています。でも、「もっといい方法があるんじゃないか」と今も感じています。
実際、調べてみると、より良い方法は存在します。OpenAIの公式ドキュメント(2026年9月時点)によると、Chat Completions APIはステートレス(毎回全履歴を再送する必要がある)ですが、新しいResponses APIでは previous_response_id を使ってサーバー側に会話状態を保持でき、さらにConversations APIでは永続的な会話オブジェクトを作れます。つまり、APIレベルでは「毎回履歴を送り直す」以外の解決策がすでに用意されています。私がMarkdown共有で工夫していたのは、APIの古い使い方の範囲内での対処であって、より新しいAPI機能を使えば、もっとスマートに解決できる可能性があります。
ただし、ここで注意が必要です。会話履歴を送るにしても、サーバーに保持しても、過去の入力トークンは課金対象です。OpenAIの公式ドキュメントにも「previous_response_id を使っても、チェーン内の前のレスポンスの入力トークンはすべて入力トークンとして課金される」と明記されています。つまり、状態を保持する仕組みを使っても、トークン消費そのものがゼロになるわけではありません。履歴が長くなるほど、コストは積み上がります。
APIでサービスを作る、という判断
ここまで書いてきた体験から、一つ正直なことを書きます。APIを使って何かサービスを作ろうという気には、今のところあまりなりません。
理由は明確です。APIを使うと、AIが回答するたびにトークンが消費される。つまり、サービスを動かすたびにコストが発生します。月額で収益が得られるサービスで、なおかつAPI使用料が収益を確実に下回ると見込める場合以外は、先行投資になってしまいます。精度の良いモデルを使えば制限に引っかかるし、安いモデルを使えば精度が落ちる。このトレードオフの中で「APIでサービスを作る」という判断は、よほど確実な見込みがないと難しい、というのが今の実感です。
これは「APIを使うな」という話ではありません。APIの仕組み自体は理解しているし、自動化やカスタマイズが必要ならAPIは有力な選択肢です。ただ、「APIを使えば何か儲かる」という単純な話ではなく、コストと精度と制限のバランスを、実際に手で触って確かめないと分からない、ということを伝えたいです。
結論 — 手で触って感じるしかない
APIとトークンの基礎を言葉で理解することはできます。APIは「外部サービスをプログラムから呼び出す仕組み」、トークンは「AIが文字を処理する単位」、レートリミットは「一定時間内の利用上限」、ステートレスは「AIが前の会話を覚えていない仕組み」。これらは説明を読めば分かります。
でも、トークンがどれくらいの速さで減るか、精度の良いモデルと安いモデルでどれくらい結果が違うか、制限にタスク途中で引っかかるとどれだけ困るか— これらは、実際に使ってみないと実感として掴めません。どのレベルで何を求めるかによって、使うべきモデルも、許容できるコストも、許容できる制限も変わります。
だから、もし迷っているなら、まずは無料枠や安いモデルで触ってみることをおすすめします。言葉の定義は後からでも補えるけど、自分の手で感じた感覚は、読むだけでは得られない。APIもトークンも、結局は使ってみて初めて「自分の場合はいくらかかるか」「どのモデルが自分に合うか」が分かるものだと思います。
0 件のコメント:
コメントを投稿