← Cloudflare Workers AI / workers-ai / features
JSON Mode
Pokud chceme, aby modely AI pro generování textu programově komunikovaly s databázemi, službami a externími systémy, typicky při volání nástrojů nebo tvorbě AI agentů, potřebujeme strukturovaný formát odpovědi místo přirozeného jazyka.
Workers AI podporuje JSON Mode, díky kterému mohou aplikace při komunikaci s AI modely žádat o strukturovanou odpověď.
Schéma
JSON Mode je kompatibilní s implementací OpenAI; chcete-li ho povolit, přidejte response_format vlastnost do objektu požadavku podle této konvence:
{
response_format: {
title: "JSON Mode",
type: "object",
properties: {
type: {
type: "string",
enum: ["json_object", "json_schema"],
},
json_schema: {},
}
}
}Kde json_schema musí být platný JSON Schema ↗ deklarace.
Příklad JSON Mode
Při použití JSON Format předejte schéma jako součást požadavku odeslaného LLM, podle příkladu níže.
{
"messages": [
{
"role": "system",
"content": "Extract data about a country."
},
{
"role": "user",
"content": "Tell me about India."
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"capital": {
"type": "string"
},
"languages": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"name",
"capital",
"languages"
]
}
}
}LLM se bude řídit schématem a vrátí odpověď, jako je ta níže:
{
"response": {
"name": "India",
"capital": "New Delhi",
"languages": [
"Hindi",
"English",
"Bengali",
"Telugu",
"Marathi",
"Tamil",
"Gujarati",
"Urdu",
"Kannada",
"Odia",
"Malayalam",
"Punjabi",
"Sanskrit"
]
}
}Jak vidíte, model dodržuje definici schématu JSON zadanou v požadavku a odpovídá ověřeným objektem JSON.
Podporované modely
Toto je seznam modelů, které nyní podporují JSON Mode:
- @cf/meta/llama-3.1-8b-instruct-fast
- @cf/meta/llama-3.1-70b-instruct
- @cf/meta/llama-3.3-70b-instruct-fp8-fast
- @cf/meta/llama-3-8b-instruct
- @cf/meta/llama-3.1-8b-instruct
- @cf/meta/llama-3.2-11b-vision-instruct
- @hf/nousresearch/hermes-2-pro-mistral-7b
- @hf/thebloke/deepseek-coder-6.7b-instruct-awq
- @cf/deepseek-ai/deepseek-r1-distill-qwen-32b
Tento seznam budeme průběžně rozšiřovat, abychom drželi krok s novými a požadovanými modely.
Mějte na paměti, že Workers AI nemůže zaručit, že model bude odpovídat přesně podle požadovaného JSON Schema. V závislosti na složitosti úlohy a vhodnosti JSON Schema nemusí být model v krajních případech schopen požadavek splnit. V takovém případě se vrátí chyba JSON Mode couldn't be met se vrátí a je nutné to zpracovat.
JSON Mode aktuálně nepodporuje streamování.