Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Workers バインディング

最終更新 Markdown で表示Agent セットアップ

このガイドでは、最初の Workers AI プロジェクトのセットアップとデプロイ手順を説明します。Workers、Workers AI バインディング、大規模言語モデル(LLM)を使い、Cloudflare のグローバルネットワーク上に最初の AI アプリケーションをデプロイします。

  1. Cloudflare アカウント に登録します。
  2. Node.js をインストールします。

Node.js のバージョンマネージャー

権限の問題を避け、Node.js のバージョンを切り替えられるよう、Voltanvm などの Node バージョンマネージャーを使います。このガイドの後半で説明する Wrangler には、Node バージョン 16.17.0 以降が必要です。

1. Worker プロジェクトを作成する

create-cloudflare CLI(C3)で新しい Worker プロジェクトを作成します。C3 は、Cloudflare への新規アプリケーションのセットアップとデプロイを支援するコマンドラインツールです。

次のコマンドで、hello-ai という名前の新しいプロジェクトを作成します。

npm create cloudflare@latest -- hello-ai

npm create cloudflare@latest を実行すると、create-cloudflare パッケージ のインストールを求められ、セットアップが進みます。C3 は Cloudflare Developer Platform CLI である Wrangler もインストールします。

セットアップでは、次のオプションを選びます。

  • What would you like to start with? では、Hello World example を選びます。
  • Which template would you like to use? では、Worker only を選びます。
  • Which language do you want to use? では、TypeScript を選びます。
  • Do you want to use git for version control? では、Yes を選びます。
  • Do you want to deploy your application? では、No を選びます(デプロイ前にいくつか変更します)。

これで新しい hello-ai ディレクトリが作成されます。hello-ai ディレクトリには次が含まれます。

アプリケーションのディレクトリへ移動します。

cd hello-ai

2. Worker を Workers AI に接続する

Worker を Workers AI に接続するには、AI バインディングを作成する必要があります。Bindings を使うと、Workers から Cloudflare Developer Platform 上のリソース(Workers AI など)とやり取りできます。

Workers AI を Worker にバインドするには、Wrangler ファイルの末尾に次を追加します。

{
	"ai": {
		"binding": "AI"
	}
}
[ai]
binding = "AI"

バインディングは、Worker コード内の env.AI利用できます

Pages Function に Workers AI をバインドすることもできます。詳細は Functions Bindings を参照してください。

3. Worker で推論タスクを実行する

これで Worker 内で推論タスクを実行できます。ここでは LLM の gemma-4-26b-a4b-it を使い、質問に答えます。

hello-ai アプリケーションディレクトリの index.ts を、次のコードで更新します。

index.jsjs
export default {
	async fetch(request, env) {
		const response = await env.AI.run("@cf/google/gemma-4-26b-a4b-it", {
			messages: [
				{
					role: "system",
					content: "You are a helpful assistant.",
				},
				{
					role: "user",
					content: "What is the origin of the phrase Hello, World",
				},
			],
			chat_template_kwargs: {
				enable_thinking: false,
			},
		});

		return Response.json(response);
	},
};
index.tsts
export interface Env {
	// If you set another name in the Wrangler config file as the value for 'binding',
	// replace "AI" with the variable name you defined.
	AI: Ai;
}

export default {
	async fetch(request, env): Promise<Response> {
		const response = await env.AI.run("@cf/google/gemma-4-26b-a4b-it", {
			messages: [
				{
					role: "system",
					content: "You are a helpful assistant.",
				},
				{
					role: "user",
					content: "What is the origin of the phrase Hello, World",
				},
			],
			chat_template_kwargs: {
				enable_thinking: false,
			},
		});

		return Response.json(response);
	},
} satisfies ExportedHandler<Env>;

ここまでで、Worker に AI バインディングを作成し、reasoning を無効にした Gemma 4 26B A4B モデルを実行するよう Worker を設定しました。グローバルにデプロイする前に、プロジェクトをローカルでテストできます。

4. Wrangler でローカル開発する

プロジェクトディレクトリで wrangler dev を実行し、Workers AI をローカルでテストします。

npx wrangler dev

wrangler dev の実行後、ログインを求められます。npx wrangler dev を実行すると、Wrangler は Worker を確認するための URL(多くの場合 localhost:8787)を表示します。Wrangler が提示する URL を開くと、次のような形の応答が返ります。

{
	"id": "<generated id>",
	"object": "chat.completion",
	"created": 0,
	"model": "@cf/google/gemma-4-26b-a4b-it",
	"choices": [
		{
			"index": 0,
			"message": {
				"role": "assistant",
				"content": "<generated response>",
				"refusal": null
			},
			"finish_reason": "stop",
			"logprobs": null
		}
	]
}

5. AI Worker をデプロイする

AI Worker をグローバルにデプロイする前に、次のコマンドで Cloudflare アカウントにログインします。

npx wrangler login

Cloudflare ダッシュボードへのログインを求める Web ページが開きます。ログイン後、Wrangler が Cloudflare アカウントを変更してよいか確認されます。下にスクロールし、Allow を選んで続行します。

最後に Worker をデプロイし、プロジェクトをインターネットから利用できるようにします。次のコマンドでデプロイします。

npx wrangler deploy
https://hello-ai.<YOUR_SUBDOMAIN>.workers.dev

Worker は、カスタムの workers.dev サブドメインにデプロイされます。この URL を開くと、AI Worker を実行できます。

このチュートリアルを完了すると、Worker を作成し、AI バインディングで Workers AI に接続し、Gemma 4 26B A4B モデルで推論タスクを実行できるようになります。

関連リソース

  • Cloudflare Developers community on Discord - Cloudflare Discord サーバーに参加し、機能リクエストの送信、バグ報告、フィードバックの共有を Cloudflare チームへ直接行えます。
  • Models - Workers AI のモデルカタログを閲覧します。
  • AI SDK - AI モデルとの統合方法を確認します。

役に立ちましたか?