INTEGRITY Dokumentace

REST API

Pomocí REST API AI Search dotazujte své instance AI Search přes HTTP.

Ověřování

Všechny požadavky vyžadují token API s AI Search:Edit a AI Search:Run oprávnění.

  1. V Cloudflare dashboardu přejděte na My Profile > API Tokens.

    Přejděte na API Tokens ↗
  2. Vyberte Create Token.

  3. Vyberte Create Custom Token.

  4. Zadejte Název tokenu, například AI Search Manager.

  5. V části Oprávnění, přidejte dvě oprávnění:

    • Účet > AI Search:Edit
    • Účet > AI Search:Run
  6. Vyberte Pokračovat k souhrnu, pak vyberte Create Token.

  7. Zkopírujte a uložte hodnotu tokenu. Toto je váš API_TOKEN.

Zahrňte token do Authorization hlavička pro všechny požadavky:

Authorization: Bearer <API_TOKEN>

Vyhledávání a chat

AI Search poskytuje dvě rozhraní API pro dotazování instance. Obě používají s OpenAI kompatibilní messages formát.

Cesty API

Rozhraní AI Search API jsou dostupná na dvou základních cestách:

Cesta Popis
/accounts/{account_id}/ai-search/instances/{id}/ Pracuje s konkrétní instancí
/accounts/{account_id}/ai-search/namespaces/{namespace}/instances/{id}/ Pracuje s instancemi v rámci namespace

Následující operace jsou pro obě cesty stejné. API v rámci jmenného prostoru najdete v Referenční dokumentace API jmenného prostoru.

Prohledejte konkrétní instanci. Endpoint pro vyhledávání navíc přijímá query řetězcový parametr. Úplnou specifikaci najdete v Referenční dokumentace k API Search.

curl -X POST "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai-search/instances/<INSTANCE_NAME>/search" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "content": "What is Cloudflare?",
        "role": "user"
      }
    ]
  }'

Chat completions

Vygenerovat odpověď z konkrétní instance. Úplnou specifikaci najdete v Referenční dokumentace k API Chat Completions.

curl -X POST "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai-search/instances/<INSTANCE_NAME>/chat/completions" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "content": "What is Cloudflare?",
        "role": "user"
      }
    ]
  }'

Streamování

Nastavte stream na true a přijímat tak odpovědi jako Server-Sent Events (SSE). Načtené chunky se odesílají nejprve jako událost chunks událost, po které následuje streamovaná odpověď.

event: chunks
data: [{"id":"chunk-001","type":"text","score":0.85,"text":"...","item":{"key":"about-cloudflare.md","timestamp":1775925540000},"scoring_details":{"vector_score":0.85}}]

data: {"id":"id-1776072781845","created":1776072781,"model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":" document"}}]}

data: {"id":"id-1776072781845","created":1776072781,"model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":" you provided doesn"}}]}

data: {"id":"id-1776072781845","created":1776072781,"model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"'t contain"}}]}

data: {"id":"id-1776072781845","created":1776072781,"model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":" information"}}]}

data: [DONE]

Vyhledávání a chat napříč instancemi

API pro vyhledávání a chat completions jsou dostupná i na úrovni jmenného prostoru. Fungují stejně jako endpointy instance, ale místo toho předáváte instance_ids array a určete, které instance se mají dotazovat. Každý fragment v odpovědi obsahuje instance_id je pole, které určuje, ze které instance pochází. Úplnou specifikaci najdete v Referenční dokumentace API jmenného prostoru.

curl -X POST "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai-search/namespaces/<NAMESPACE>/search" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "What is Cloudflare?"
      }
    ],
    "ai_search_options": {
      "instance_ids": ["product-docs", "customer-abc123"]
    }
  }'