会議メモを自動で要約する小さなアプリを作るとします。
必ずしも自分のパソコンに巨大な言語モデルを置く必要はありません。文章をインターネット越しにAIサービスへ送り、要約結果を受け取ることができます。
この接続でよく使われるのが**アプリケーション・プログラミング・インターフェース(Application Programming Interface, API)**です。
APIはソフトウェア同士の決められた窓口
レストランの注文窓口を考えてください。
客は厨房へ入って自分で調理器具を操作しません。店が理解できる形式で注文を渡し、厨房が処理し、完成した料理を受け取ります。
APIも似ています。
自分のアプリが**Request(リクエスト)**を送り、外部サービスが処理し、**Response(レスポンス)**を返します。
Requestには何が入る?
AI APIでは、たとえば、
- 使用するモデル
- 入力テキストや画像
- 生成設定
- 出力形式やTool設定
- 認証情報
などを送ります。
呼び出す宛先は**Endpoint(エンドポイント)**と呼ばれることがあります。
API Keyとは?
多くのサービスではAPI Keyという秘密の認証情報を発行します。
これはユーザー名より、パスワードに近いものです。
公開GitHub、スクリーンショット、誰でも読めるブラウザ側コードへ秘密Keyを直接置いてはいけません。
通常はサーバー側の環境変数やSecrets管理へ保存します。
Responseは機械が読みやすい形式
APIはWebページを返す必要はありません。JSONなど、プログラムが読みやすいデータ形式で返ることがよくあります。
そのためアプリは、結果の文章を表示したり、使用量を保存したり、次の処理を自動で開始したりできます。
Chat画面を使うのと何が違う?
Chat製品では、画面、メモリ、アカウント設定、内部Promptなどを製品側が用意します。
APIでは、その周囲のロジックを自分で設計します。
いつ呼ぶか、どのContextを送るか、結果をどこへ保存するか、次に何をするかを決められます。
自由度が上がる分、Security、Cost、Error Handlingの責任も増えます。
最小のイメージ
自分のApp → API Request → 外部サービス/モデル → API Response → 自分のApp
APIは無料とは限らない
商用AI APIの多くは使用量で課金されます。TextモデルではToken、画像・音声・動画では別の単位を使うことがあります。
次の第019回では、Input Token、Output Token、Cached Tokenなど、AI APIの料金の読み方を扱います。
今日の一文
APIとは、一つのソフトウェアが別のシステムの機能やデータを、決められた方法で呼び出すためのインターフェースです。
コメント
質問、感想、補足したいことがあれば、ここに残せます。
まだコメントはありません。1Fになってみませんか。