---
title: "Cloudflare Clefとは：Jev互換の判断モデル3種の料金・Workers AI実装・選び方【2026年10月時点】"
url: "https://www.issoh.co.jp/tech/details/18292/"
published: 2026-10-12
updated: 2026-10-12
categories: ["AI"]
publisher: "株式会社一創"
---

# Cloudflare Clefとは：Jev互換の判断モデル3種の料金・Workers AI実装・選び方【2026年10月時点】

Cloudflare Clefは、Cloudflareが2026年10月に公開した、文章を生成せずに選択肢ごとの確率だけを返す「判断モデル」です。先行するTypeSafe JevとAPIの形が同じで、Workers AIから呼べるうえ、重みもApache 2.0でHugging Faceに公開されています。この記事では、Clef・Clef-flash・Clef-omniの3モデルの料金と文脈長、10月9日の値下げと仕様変更、画像・音声・動画の入力上限を公式ドキュメントで確認し、WorkersとREST APIの実装コードを示します。Jevから移すときに書き換える箇所と、Clefを採用する条件・見送る場面までを判断材料として整理しました。

## まとめ：Cloudflare ClefはJev互換で画像も判定できる安価なオープンウェイト判断モデル

先に結論です。問い合わせの振り分けや審査の一次判定のように、答えの候補が決まった判断を大量に回すなら、Clefは2026年10月時点で有力な選択肢になります。テキストだけの判断ならまずClef-flashを試してください。入力100万トークンあたり0.038ドルで、Jevの0.042ドルより安くなりました。

モデルの選び方は入力で決まります。24kトークンを超える長い入力はClef、音声や動画を判定に含めるならClef-omniです。

前提として押さえておくべき制約が2つあります。ベンチマークはすべてCloudflare自身の計測で、推論の深さを問う課題ではJevに大きく負けています。日本語の精度も公表されていません。自社データでの評価を挟んでから本番に入れてください。

## Cloudflare Clefの正体とJev互換APIで確率を返す判断モデルの仕組み

[Cloudflareの発表記事](https://blog.cloudflare.com/clef-decision-models/)は、Clefを「決定モデル（decision model）」と呼んでいます。入力に対して、緊急度や担当チームといった型付きの答えを確率付きで返し、その値をルーティングやエスカレーション、人への引き渡しに使う、という位置づけです。

### 状態と型付き質問を渡し選択肢ごとの確率を1回の処理で受け取る仕組み

入力は、判断材料の`state`と、名前付きの質問の集まり`questions`です。質問の型は、はい／いいえの確率を返す`noul`、候補から選ぶ`choice`、段階で評価する`score`の3種類で、1リクエストに1〜64問まで入れられます。

LLMのように1トークンずつ文章を出すことはしません。発表記事によると、Clefは入力を読み込む1回の処理（prefill）で、スキーマ上で有効な選択肢を並列に採点します。定義していない答えは返らないため、出力をパースして検証し直す処理が要りません。

応答の形はJevと同じです。[公式のモデルページ](https://developers.cloudflare.com/workers-ai/models/clef/)の出力スキーマでは、`choice`の答えに`choice`・`probabilities`・`confidence`、`score`の答えに`score`・`legend`・`probabilities`・`confidence`、`noul`の答えに0〜1の`noul`が入ります。

### 10月1日のClef・Clef-flashと10月9日のClef-omniの公開

最初の発表は2026年10月1日です。27BのClefと9BのClef-flashが同時に出ました。[Hugging FaceのClefのモデルカード](https://huggingface.co/Cloudflare/clef)によると、ClefはQwen3.8-27Bを、Clef-flashはQwen3.5-9Bをもとに追加学習したモデルです。

8日後の10月9日には、[2本目の発表記事](https://blog.cloudflare.com/clef-faster-cheaper-multimodal/)でClef-omniが加わりました。ベースはQwen3-Omni-30B-A3B-Instructで、30Bのうち処理ごとに3Bだけを動かすMoE構成です。テキストと画像に加え、音声（wav・mp3）と動画（mp4・webm）を直接受け付けます。

呼び名に注意してください。Cloudflareは「オープンソース」と発表していますが、公開されているのは重みとライセンスです。Hugging Faceのモデルカードには学習データの記載がありません。正確には「オープンウェイト」と理解しておくのが安全です。

## Clef・Clef-flash・Clef-omniの料金と文脈長と入力形式を並べた比較

この章の数値は、2026年10月12日に取得した公式のモデルページと料金ページの値です。

### 入力100万トークン0.038〜0.24ドルの単価と1日1万Neuronsの無料枠の換算

| モデル                | 入力単価（100万トークン） | 文脈長（ホスト版）            | 入力の種類              |
| ------------------ | -------------- | -------------------- | ------------------ |
| Clef（27B）          | 0.24ドル         | 65,536トークン           | テキスト・JSON・画像       |
| Clef-flash（9B）     | 0.038ドル        | 24,576トークン           | テキスト・JSON・画像       |
| Clef-omni（30B-A3B） | 0.15ドル         | 64,000トークン           | テキスト・JSON・画像・音声・動画 |
| 参考：TypeSafe Jev    | 0.042ドル        | 64k（stateと最長の質問で32k） | テキストのみ             |

3モデルとも出力トークンは課金されません。Workers AIの課金単位はNeuronsで、[Workers AIの料金ページ](https://developers.cloudflare.com/workers-ai/platform/pricing/)では1日1万Neuronsまで無料、超えた分は1,000 Neuronsあたり0.011ドルです。

同じページの換算表では、入力100万トークンがClefで21,818 Neurons、Clef-omniで13,636 Neurons、Clef-flashで3,455 Neuronsにあたります。無料枠をトークンに直すと、1日あたりClefで約45万、Clef-omniで約73万、Clef-flashで約289万トークンです。1件500トークンの問い合わせなら、Clef-flashは無料枠だけで1日5,000件以上を判定できます。

無料のWorkers Freeプランでは、1日1万Neuronsを超えて使えません。本番で流すならWorkers Paidへの登録が前提です。

### Clef-flashのホスト版が24kトークンに縮んだ10月9日の改定と使い分け

10月9日の改定で、Clef-flashは入力100万トークンあたり0.09ドルから0.038ドルに下がりました。引き換えに、Workers AIでホストされる版の文脈長は64kから24kへ縮んでいます。発表記事は、24kを超える入力は全リクエストの0.24%だったと説明しています。Hugging Faceの重み自体は256kの文脈長のまま変わっていません。

10月1日の発表直後に書かれた解説記事には、改定前の0.09ドル・64kが残っています。数値を引用するときは日付を確かめてください。

同じ日にClefも速くなりました。配信基盤をSGLangへ移したためで、重みは変わっていません。発表記事の計測では、約800トークンの入力で中央値が262ミリ秒から152ミリ秒、約3,400トークンで616ミリ秒から305ミリ秒に縮んでいます。

使い分けの線は単純です。入力が24kトークンに収まり、テキストか画像の判定ならClef-flash。長い契約書や会話履歴をまるごと渡すならClef。音声・動画を判断材料にするならClef-omni。迷ったらClef-flashで正答率を測り、足りない項目だけClefに切り替えます。

### 画像4枚・音声300秒・動画60秒まで渡せる入力上限とトークン換算

メディアの上限は[Clef-omniのモデルページ](https://developers.cloudflare.com/workers-ai/models/clef-omni/)に載っています。画像は1リクエスト4枚まで（PNG・JPEG・WebP、1枚4MiB・1,600万画素以内）、音声は4本まで（1本8MiB・300秒以内）、動画は2本まで（1本16MiB・60秒以内、毎秒2フレームで抽出）です。

URLを渡して取得させることはできません。base64で埋め込んで送ります。Clef・Clef-flashのリクエストボディは全体で13MiBが上限です。

メディアもトークンに換算され、入力料金と文脈長の両方を消費します。画像は32×32ピクセルを1トークンとして数え、1枚あたり最大1,024トークンです。音声は1分あたり約780トークン、動画は最大解像度で1分あたり約15,400トークンになります。60秒の動画を2本送ると、それだけで約3万トークンです。質問と合わせて文脈長を超えるとリクエストは失敗し、収まる場合は`state`のテキストが切り詰められます。

## Workers AIのバインディングとREST APIでClefを呼び出す実装手順

呼び出し方は2通りです。Cloudflare Workersの中からAIバインディングで呼ぶ方法と、外部のサーバーからREST APIで呼ぶ方法があります。

### wrangler.jsoncのAI設定とenv.AI.runによる判定の実装例

Workersから使う場合は、[Workers AIのバインディング設定](https://developers.cloudflare.com/workers-ai/configuration/bindings/)に従い、`wrangler.jsonc`にAIバインディングを足します。

```
{
  "name": "ticket-triage",
  "main": "src/index.ts",
  "compatibility_date": "2026-10-01",
  "ai": { "binding": "AI" }
}
```

次の`src/index.ts`は、問い合わせ文を受け取り、担当チーム・当日対応の要否・深刻度をまとめて判定するWorkerです。担当チームの`confidence`が0.6未満なら人の振り分けに回します。

```
export interface Env { AI: Ai }

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const { text } = await request.json<{ text: string }>();
    // 応答の型は出力スキーマに合わせて自前で定義する
    const res = (await env.AI.run("@cf/cloudflare/clef-flash", {
      model: "clef-flash",
      state: text,
      questions: {
        team: {
          type: "choice",
          instructions: "この問い合わせを担当すべきチームはどれか",
          criteria: {
            billing: "請求・支払い・返金に関する問い合わせ",
            technical: "製品の不具合や設定に関する問い合わせ",
            sales: "見積り・契約・導入検討に関する問い合わせ",
          },
        },
        urgent: { type: "noul", instructions: "今日中の対応を求めているか" },
        severity: {
          type: "score",
          instructions: "業務への影響の大きさ",
          criteria: ["影響なし", "軽微", "重大", "致命的"],
        },
      },
    })) as any;

    const team = res.answers.team;
    const route = team.confidence < 0.6 ? "human" : team.choice;
    return Response.json({
      route,
      urgent: res.answers.urgent.noul,
      severity: res.answers.severity.score, // 0が最低段階の確率加重値
      model: res.model,
      usage: res.usage,
    });
  },
};
```

`model`の値はモデルIDと別に必須です。公式ページの入力スキーマでは、Clef系は`clef`か`clef-flash`、Clef-omniは`clef-omni`しか受け付けません。`score`の`criteria`は低い段階から順に並べた配列で、返る`score`は段階と段階の間の値になることがあります。Workersの料金や無料枠の全体像は[Cloudflare Workersの対応言語・無料枠・料金のまとめ](https://www.issoh.co.jp/tech/details/6760/)で確認できます。

### REST APIのcurlとconfidenceで人へ振り分けるPython実装

Workersの外から呼ぶ場合は、REST APIのエンドポイント`/client/v4/accounts/{アカウントID}/ai/run/@cf/cloudflare/clef`にPOSTします。認証は、[CloudflareのAPIトークン作成手順](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/)で発行したトークンを`Authorization: Bearer`ヘッダーに入れます。

```
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/cloudflare/clef \
  -X POST \
  -H "Authorization: Bearer $CLOUDFLARE_AUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"model": "clef", "state": "決済画面で全員がエラーになっています。1時間前からです。",
       "questions": {"urgent": {"type": "noul", "instructions": "緊急の対応が必要か"}}}'
```

REST APIの応答はCloudflare共通の形式で包まれ、判定結果は`result`の下に入ります。Workersのバインディングとの違いは、共通の形式で包まれずに`answers`が直接返る点です。Pythonで画像付きの判定を組むと次のようになります。

```
import base64, os
import requests

ACCOUNT_ID = os.environ["CLOUDFLARE_ACCOUNT_ID"]
URL = f"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/cloudflare/clef"
HEADERS = {"Authorization": f"Bearer {os.environ['CLOUDFLARE_AUTH_TOKEN']}"}

def check_receipt(path: str, memo: str) -> dict:
    with open(path, "rb") as f:
        b64 = base64.b64encode(f.read()).decode()
    payload = {
        "model": "clef",
        "state": memo,
        "images": [f"data:image/jpeg;base64,{b64}"],  # URLは不可・base64で埋め込む
        "questions": {
            "category": {
                "type": "choice",
                "instructions": "この領収書の経費区分はどれか",
                "criteria": {"travel": "交通費・宿泊費", "meal": "会議費・交際費", "supplies": "消耗品費"},
            },
            "readable": {"type": "noul", "instructions": "金額と日付が画像から読み取れるか"},
        },
    }
    r = requests.post(URL, headers=HEADERS, json=payload, timeout=30)
    r.raise_for_status()
    ans = r.json()["result"]["answers"]
    if ans["readable"]["noul"] < 0.5 or ans["category"]["confidence"] < 0.7:
        return {"route": "human", "answers": ans}   # 読めない・自信が低いものは経理担当へ
    return {"route": ans["category"]["choice"], "answers": ans}
```

金額や日付の照合そのものはClefにさせません。判断モデルは数を数えたり比べたりする処理が得意ではないため、Clefには区分の判定と読み取り可否の判定だけを任せ、金額のチェックはOCRの結果をコードで比べます。

### Jevのコードから移すときに変わるエンドポイントとmodel値の書き換え

発表記事はClefを「Jev APIと完全互換」としています。`state`と`questions`の書き方、`criteria`の形、応答の`answers`の項目名はそのまま使えます。書き換えるのは次の3点です。

1. 送り先を`api.typesafe.ai/v1/systemone`からWorkers AIのエンドポイントへ変える
2. `model`の値を`jev-1.13.0`から`clef`・`clef-flash`・`clef-omni`のいずれかへ変える
3. TypeSafeのAPIキーをCloudflareのAPIトークンに替え、REST APIでは`result`の下から答えを取り出す

閾値は移行後に測り直してください。同じ問い合わせでもモデルが違えば`confidence`の分布は変わるので、Jevで決めた0.6をそのまま流用すると、人に回る割合が想定とずれます。Jev側のSDKやconfidenceの計算式は[TypeSafe Jevの料金・API実装・採用条件](https://www.issoh.co.jp/tech/details/18238/)で解説しています。

自前のGPUで動かす場合も互換は保たれます。Clefのモデルカードには、SGLangで起動してJevと同じ`/v1/systemone`のパスで受ける例が載っています。

## Cloudflare公表ベンチマークの読み方とJevに負ける処理の見極め

性能の数値は、すべてCloudflareが自社で実行した結果です。第三者による再現はまだ出ていません。その前提で、勝ち負けの傾向を読み取ります。

### BANKING77・When2Call・BRIGHTの対Jev評価結果

| 評価           | 内容           | Clef  | Clef-flash | Jev   |
| ------------ | ------------ | ----- | ---------- | ----- |
| BANKING77    | 銀行問い合わせの意図分類 | 94.20 | 90.93      | 79.74 |
| CLINC150+OOS | 意図分類と範囲外の検出  | 97.43 | 66.77      | 89.27 |
| When2Call    | ツールを呼ぶべきかの判断 | 72.37 | 65.58      | 80.97 |
| BRIGHT       | 推論を要する検索の関連度 | 45.91 | 39.26      | 47.52 |
| GPQA Diamond | 専門知識の推論問題    | 48.0  | －          | 78.3  |

BANKING77はClefが94.2対79.7で上回る一方、When2CallとBRIGHTはJevが上回る結果です。GPQA Diamond以外は10月1日の発表記事、GPQA DiamondはHugging Faceのモデルカードの値です。意図の分類ではClefが大きく勝ち、推論が要る判断ではJevが勝つ、という分かれ方がはっきり出ています。

Clef-flashのCLINC150+OOSが66.77と低い点も見逃せません。この評価は「どの意図にも当てはまらない問い合わせ」を見分ける力を含みます。用意した選択肢の外にある問い合わせが多い業務でClef-flashを使うなら、「その他」の選択肢を必ず置き、そこに落ちた件を人に回す設計にします。

Clef-omniも万能ではありません。10月9日の発表記事にあるTypeSafeの業務評価では、カスタマーサービスで71.6対76.0、エージェントのトレース監視で65.8対71.6と、Jevを下回っています。

### 日本語精度の公表が無い状態で自社データの正答率と閾値を評価する手順

公式のモデルページ3本とHugging Faceのモデルカード3本のどれにも、対応言語や日本語の精度の記載はありません。公表されたベンチマークも英語のデータセットです。日本語の問い合わせを流す前に、次の順で評価します。

1. 人が正解を付けた過去の問い合わせを200〜300件そろえる（「その他」に当たる件も混ぜる）
2. Clef-flashとClefの両方に同じ質問を投げ、正答率を比べる
3. 正解と不正解に分けて`confidence`の分布を描き、不正解が集まる帯を確かめる
4. その帯より下を人へ回す閾値を決め、自動で処理される割合と月の費用を見積もる

Jevを使っている場合は手順2にJevも並べます。3モデルの結果を同じ表で比べれば、移行の判断に数字の根拠ができます。Clef-flashの無料枠は1日約289万トークンなので、この規模の評価なら費用はかかりません。

## Cloudflare Clefを採用する業務条件とJevや汎用LLMを選ぶ場面

料金・仕様・ベンチマークを踏まえ、採用と見送りの線を引きます。

### Workersで動くシステムや画像付き審査を大量に回す業務での採用条件

採用してよいのは、答えの候補が事前に決まっていて、同じ判断を大量に繰り返し、自信の低い分を人かLLMへ回す経路を作れる処理です。そのうえで、次のどれかに当てはまるならJevよりClefを先に試します。

- 判断材料に画像・音声・動画が含まれる（Jevはテキストのみ）
- システムがCloudflare Workersで動いており、外部APIを増やしたくない
- テキストの意図分類が主で、単価を抑えたい（Clef-flashは0.038ドル）
- 将来、重みを自社のGPUへ持ち込む可能性がある（Apache 2.0で配布）

データの扱いも判断材料になります。発表記事によると、Cloudflareは推論のリクエストと応答を読まず、保存せず、学習にも使いません。ただし、強化学習による追加学習を依頼する場合は例外です。追加学習は[CloudflareのRLファインチューニング申込ページ](https://www.cloudflare.com/resource/clef-rl-interest)から設計パートナーとして申し込む段階で、セルフサービスの提供は先になります。

LLMの構造化出力で同じ形の答えを得る方法との比較は[LLM構造化出力の仕組みと見送り条件](https://www.issoh.co.jp/tech/details/16322/)で、入出力の検査層にClefを組み込む全体設計は[AIガードレールの設計と選定基準](https://www.issoh.co.jp/tech/details/15939/)で整理しています。

### 判断理由の説明・推論の深さ・GPUの自前運用が要件なら見送る判断

次のどれかに当たるなら、Clefは採用しません。

- 判断ごとに理由を文章で残す必要がある（Clefは確率を返すだけ）
- 判断に多段の推論や専門知識が要る（GPQA Diamondで48.0対Jev 78.3）
- 日本語データで評価した結果、自動で処理できる割合が低い
- Workers AIを使えず、自前で動かすGPUも用意できない

最後の点は見落とされがちです。重みが公開されていても、モデルカードの動作確認はNVIDIA H200 1枚で、Clef-omniはbfloat16で約64GBのGPUメモリを使います。オンプレミスで回すなら、GPUサーバーの調達と運用の費用がAPI料金を上回らないかを先に試算してください。

融資や採用のように判定理由の説明責任がある業務では、Clefを一次の振り分けにとどめ、説明が要る案件はLLMか人の審査へ回します。判断モデルとLLMをどの層に置き、既存の業務システムとどうつなぐかから設計したい場合は、[生成AI開発・AI受託開発](https://www.issoh.co.jp/service/ai/development/)のページで対応範囲を確認できます。

## Cloudflare Clefの料金・日本語・ローカル実行についてよくある質問

検索されることの多い疑問に、2026年10月12日時点の公式情報で答えます。

### Cloudflare Clefは無料で使えますか？

Workers AIの無料枠の範囲なら使えます。1日1万Neuronsまで無料で、入力トークンに直すとClef-flashで約289万、Clefで約45万、Clef-omniで約73万トークンです。出力は課金されません。無料のWorkers Freeプランでは上限を超えて使えないため、本番の量を流すならWorkers Paidに登録し、超過分を1,000 Neuronsあたり0.011ドルで支払います。

### ClefとClef-flashとClef-omniはどう使い分けますか？

入力の長さと種類で選びます。24,576トークン以内のテキストか画像ならClef-flashが最も安く、発表記事の計測では中央値38.8ミリ秒と速いモデルです。それより長い入力や、意図分類で精度を上げたい項目はClef（65,536トークン）。音声や動画を判断材料にするならClef-omni（64,000トークン）です。まずClef-flashで正答率を測り、足りない質問だけ上位のモデルへ移すのが無駄のない進め方です。

### Cloudflare Clefは日本語の問い合わせを判定できますか？

公式のドキュメントにもHugging Faceのモデルカードにも、対応言語や日本語精度の記載はありません。公表されたベンチマークも英語のデータセットで、Clefとしての日本語の評価結果は出ていない状態です。正解付きの日本語データを200〜300件用意し、正答率と`confidence`の分布を測ってから、自動で処理する範囲を決めてください。

### ClefはTypeSafe Jevのコードをそのまま使えますか？

リクエストの`state`・`questions`と応答の`answers`の形は同じなので、組み立て部分はそのまま使えます。書き換えるのは、送り先のエンドポイント、`model`の値（`clef`など）、認証に使うトークンの3点です。REST APIでは答えが`result`の下に入ります。`confidence`の分布はモデルごとに違うため、閾値は移行後に測り直してください。

### Clefを自社のサーバーで動かせますか？

動かせます。重みはHugging FaceでApache 2.0として公開されており、商用で使えます。モデルカードの動作確認環境はtorch 2.11とtransformers 5.10.2、GPUはNVIDIA H200 1枚です。SGLangで起動し、Jevと同じ`/v1/systemone`のパスで受ける手順も載っています。Clef-omniのSGLang対応は準備中とされているので、音声・動画の判定を自前で回す場合は対応状況を確かめてください。

## 関連記事

- [TypeSafe Jevとは：文章を書かない判断専用AIの料金・API実装・採用条件](https://www.issoh.co.jp/tech/details/18238/)：Clefと互換のJevの仕様と、confidenceによる振り分けの考え方に。
- [Cloudflare Workersとは？対応言語・無料枠・使い方・料金を最新版で総まとめ](https://www.issoh.co.jp/tech/details/6760/)：Clefを呼ぶWorkersの基礎と料金体系の確認に。
- [Cloudflare Workersのエッジ実行を比較｜Lambda@Edge・Fastly・Akamaiとの違いとできること](https://www.issoh.co.jp/tech/details/6539/)：判定処理をエッジに置く構成を検討するときに。
- [LLM構造化出力とは？JSON Schemaで出力形式を保証する仕組みと実装・見送り条件を解説](https://www.issoh.co.jp/tech/details/16322/)：LLM側で型を守らせる方式との比較に。
- [AIガードレールとは？入力・出力を検査する実装層の設計と選定基準](https://www.issoh.co.jp/tech/details/15939/)：Clefを検査層に使う場合の全体設計に。

---

出典: [Cloudflare Clefとは：Jev互換の判断モデル3種の料金・Workers AI実装・選び方【2026年10月時点】](<https://www.issoh.co.jp/tech/details/18292/>)（株式会社一創）
