Chat Completions API
AiHummer-ը բացահայտում է մեկ OpenAI-համատեղելի HTTP վերջնակետ տեքստային
կանչերի համար՝ POST /v1/chat/completions։ Ցանկացած client կամ SDK, որ արդեն
խոսում է OpenAI Chat Completions ձևաչափով, կարող է խոսել AiHummer-ի հետ՝ փոխելով
base URL-ը և API բանալին — AiHummer-ին հատուկ ոչ մի կոդ չի պահանջվում։
Նույնականացում
Հարցումները նույնականացվում են անձնական API բանալիով որպես Bearer token։
AiHummer-ի բանալիները ունեն ah- նախածանց և թողարկվում են web admin UI-ից։
POST /v1/chat/completions HTTP/1.1
Host: your-aihummer.example
Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json
[!TIP] Base URL-ը ձեր gateway-ի հասցեն է։ Լռելյայն տեղադրման դեպքում gateway-ը լսում է
:8780-ի վրա, ուստի տեղային կանչը գնում էhttp://localhost:8780/v1/chat/completions։ Արտադրության մեջ դուք TLS-ը ավարտում եք gateway-ի դիմացի reverse proxy-ում։
Հիմնական հարցում
Ուղարկեք JSON մարմին messages-ով, ճիշտ ինչպես կուղարկեիք OpenAI-ին։ model
դաշտն ընտրում է ձեր instance-ում կարգաբերված մոդելը (կամ գործակալը)։
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
}'
Ոչ-հոսքային պատասխանը հետևում է ծանոթ Chat Completions ձևին՝
{
"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 }
}
Հոսքային պատասխաններ (SSE)
Սահմանեք "stream": true պատասխանը աստիճանաբար որպես Server-Sent Events
ստանալու համար։ Յուրաքանչյուր իրադարձություն տանում է chat.completion.chunk
delta, և հոսքն ավարտվում է վերջնական data: [DONE] տողով։
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." }
]
}'
Պատասխանը 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-համատեղելի մակերեսի միակ վերջնակետն է։ AiHummer-ը չի բացահայտում/v1/models-ը և չի բացահայտում/v1/embeddings-ը — embeddings-ը ներքին ենթահամակարգ է և HTTP-ով հասանելի չէ։ Մի՛ ապավինեք այդ երթուղիներին. դրանք վերադարձնում են 404։
Discovery և schema մակերեսներ
Թեև /v1/models ցանկ չկա, AiHummer-ը մատակարարում է մի քանի discovery մակերես,
որպեսզի մարդիկ և գործիքները կարողանան ուսումնասիրել API-ն՝
| Path | Ինչ է մատուցում |
|---|---|
GET /docs |
Մարդու համար ընթեռնելի փաստաթղթերի մուտքակետ |
GET /docs/api |
Ինտերակտիվ API Explorer |
GET /docs/openapi.json |
OpenAPI 3.x բնութագիր |
GET /openapi.json |
OpenAPI 3.x բնութագիր (root alias) |
GET /docs/llm.json |
Մեքենայաընթեռնելի API ամփոփում LLM գործիքավորման համար |
GET /llms.txt |
llms.txt ինդեքս LLM գործակալների համար |
# Fetch the OpenAPI spec
curl https://your-aihummer.example/openapi.json
Համակարգային վերջնակետեր
Երկու թեթև, չնույնականացված համակարգային վերջնակետ օգնում են կենսունակության և ժամացույցի ստուգումներին՝
| Մեթոդ և path | Նպատակ |
|---|---|
GET /v1/ping |
Վերադարձնում է կենսունակության պարզ պատասխան |
GET /v1/time |
Վերադարձնում է gateway-ի ընթացիկ սերվերի ժամանակը |
curl https://your-aihummer.example/v1/ping
curl https://your-aihummer.example/v1/time
Ուր գնալ հաջորդիվ
- Կառավարեք AiHummer-ը ձեր սեփական հավելվածներից և ավտոմատացումներից՝ Մուտքային և ինտեգրման triggers։
- Զուգակցում, SSO federation և արձանագրությունների մակերեսներ՝ Webhooks, SCIM և զուգակցում։
- Կարգավորեք, թե ինչ կարող է անել գործակալը՝ Գործիքների կատալոգ։