AiHummer
Oʻzbekcha
Kirish
v1.0.x
{ }Swagger

Chat Completions API

v1.0.x · yangilandi 2026-06-26

AiHummer matnli turn’lar uchun bitta OpenAI bilan mos HTTP endpoint’ini taqdim etadi: POST /v1/chat/completions. OpenAI Chat Completions formatida allaqachon gaplashadigan har qanday mijoz yoki SDK base URL va API kalitni oʻzgartirib AiHummer bilan gaplasha oladi — AiHummer’ga xos kod kerak emas.

Autentifikatsiya

Soʻrovlar shaxsiy API kaliti bilan Bearer token sifatida autentifikatsiya qilinadi. AiHummer kalitlari ah- bilan boshlanadi va veb admin UI’dan beriladi.

POST /v1/chat/completions HTTP/1.1
Host: your-aihummer.example
Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json

[!TIP] Base URL bu sizning gateway manzilingiz. Standart oʻrnatmada gateway :8780 portida tinglaydi, shuning uchun lokal chaqiruv http://localhost:8780/v1/chat/completions’ga boradi. Ishlab chiqarishda TLS’ni gateway oldidagi teskari proksida tugatasiz.

Oddiy soʻrov

OpenAI’ga qilganingiz kabi aynan messages bilan JSON tanasini yuboring. model maydoni sizning instansiyangizda sozlangan modelni (yoki agentni) tanlaydi.

curl https://your-aihummer.example/v1/chat/completions \
  -H "Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "default",
    "messages": [
      { "role": "system", "content": "You are a helpful assistant." },
      { "role": "user", "content": "Summarise our refund policy in two sentences." }
    ],
    "temperature": 0.3
  }'

Oqimsiz javob tanish Chat Completions shaklini kuzatadi:

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "created": 1750000000,
  "model": "default",
  "choices": [
    {
      "index": 0,
      "message": { "role": "assistant", "content": "Refunds are issued within 14 days..." },
      "finish_reason": "stop"
    }
  ],
  "usage": { "prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0 }
}

Oqimli javoblar (SSE)

Javobni Server-Sent Events sifatida bosqichma-bosqich qabul qilish uchun "stream": true oʻrnating. Har bir hodisa chat.completion.chunk delta’sini olib yuradi, va oqim yakuniy data: [DONE] qatori bilan tugaydi.

curl -N https://your-aihummer.example/v1/chat/completions \
  -H "Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "default",
    "stream": true,
    "messages": [
      { "role": "user", "content": "Write a one-line greeting." }
    ]
  }'

Javob text/event-stream:

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"role":"assistant"}}]}

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hello"}}]}

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"!"},"finish_reason":"stop"}]}

data: [DONE]

[!WARNING] /v1/chat/completions OpenAI bilan mos yuzadagi yagona endpoint. AiHummer /v1/models’ni taqdim etmaydi va /v1/embeddings’ni taqdim etmaydi — embedding’lar ichki quyitizim boʻlib, HTTP orqali yetib boʻlmaydi. Bu marshrutlarga tayanmang; ular 404 qaytaradi.

Aniqlash va sxema yuzalari

/v1/models roʻyxati boʻlmasa-da, AiHummer odamlar va asboblar API’ni oʻrganishi uchun bir nechta aniqlash yuzalarini yetkazib beradi:

Yoʻl Nima taqdim etadi
GET /docs Odam oʻqiy oladigan hujjatlar kirish nuqtasi
GET /docs/api Interaktiv API Explorer
GET /docs/openapi.json OpenAPI 3.x spetsifikatsiyasi
GET /openapi.json OpenAPI 3.x spetsifikatsiyasi (ildiz taxallusi)
GET /docs/llm.json LLM asboblari uchun mashina oʻqiy oladigan API xulosasi
GET /llms.txt LLM agentlari uchun llms.txt indeksi
# Fetch the OpenAPI spec
curl https://your-aihummer.example/openapi.json

Tizim endpoint’lari

Ikkita yengil, autentifikatsiyasiz tizim endpoint’i hayotiylik va soat tekshiruvlariga yordam beradi:

Metod va yoʻl Maqsad
GET /v1/ping Oddiy hayotiylik javobini qaytaradi
GET /v1/time Gateway’ning joriy server vaqtini qaytaradi
curl https://your-aihummer.example/v1/ping
curl https://your-aihummer.example/v1/time

Keyin qayerga