第7章: Workers AI を使ったサーバーレスAI機能
7.1 Workers AI とは?
Workers AI は、Cloudflareの世界中のGPU搭載エッジサーバー上で、オープンソースの最先端AIモデル(Llama 3、Mistral、Whisper、Embeddingモデルなど)をサーバーレスで直接実行できるサービスです。
- APIキー不要: OpenAIなどの外部APIキーを管理する必要がありません。
- 低レイテンシ: ユーザーの最寄りエッジで推論が実行されます。
- 充実した無料枠: 毎日10,000ニューロン(一定回数の推論)が無料。
7.2 wrangler.jsonc へのAIバインディング設定
{ "name": "my-ai-app", "main": "src/index.ts", "ai": { "binding": "AI" }}バインディングを追加したら、型定義を更新します。
npx wrangler types7.3 Hono から AI モデルを呼び出すコード例
import { Hono } from 'hono';
const app = new Hono<{ Bindings: Env }>();
app.post('/api/chat', async (c) => { const { prompt } = await c.req.json();
const response = await c.env.AI.run('@cf/meta/llama-3-8b-instruct', { prompt: prompt, });
return c.json(response);});
export default app;7.4 Vectorize(ベクトル検索)との組み合わせ
RAG(検索拡張生成)を構築したい場合は、ベクトルデータベース Vectorize をCLIから作成します。
# 768次元のインデックスを作成(Embedding用)npx wrangler vectorize create docs-index --dimensions=768 --metric=cosine次章では、ポート開放不要で手元のMacやPCを安全に外部公開できる強力なツール cloudflared の実践に入ります。
💡 用語解説コラム
[!NOTE] Embedding (テキスト埋め込み / ベクトル化)
文章の意味を数百〜千次元以上の数値の配列(ベクトル)に変換する技術。類似した意味を持つ文章同士はベクトル間の距離が近くなるため、AI検索やRAGの基盤として使われます。
[!NOTE] ニューロン (Neurons)
Cloudflare Workers AI における計算量(推論リソース)の課金単位。モデルの大きさや生成トークン数に応じて消費されます。