Chat tương thích OpenAI — nền tảng Gommo (preview)
Sắp có trên nền tảng Gommo
POST /v1/chat/completions là shim gateway self-host, không phải Gommo public API. Production hôm nay dùng POST https://api.gommo.net/api/v2/chat — xem Chat reference. Routing OpenAI-compatible sẽ ship trên Gommo.
Gommo Developer expose POST /v1/chat/completions — map Gommo chat sang OpenAI Chat Completions API để LangChain, OpenAI SDK hoặc agents cắm vào mà không cần payload riêng Gommo.
Auth
Cùng user token với mọi Gommo API:
Authorization: Bearer <user_access_token>Lấy token qua login public:
$domain = $env:GOMMO_API_DOMAIN; if (-not $domain) { throw 'Set GOMMO_API_DOMAIN to the user registration domain (dealer)' }
$body = "[email protected]&password=YOUR_PASSWORD&domain=$domain"
$login = Invoke-RestMethod -Method POST `
-Uri "https://api.gommo.net/api/apps/go-mmo/auth/login" `
-ContentType "application/x-www-form-urlencoded" -Body $body
$env:TOKEN = $login.access_tokenHoặc dán token từ /app/token/.
Request
curl -X POST http://localhost:3001/v1/chat/completions \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.5::cheap",
"messages": [
{ "role": "user", "content": "Hello!" }
]
}'| Field | Ghi chú |
|---|---|
messages | Bắt buộc. Hỗ trợ role system / user / assistant |
model | Tùy chọn. Format model::server (Gommo) hoặc bỏ qua dùng default GOMMO_CHAT_MODEL |
stream | true → SSE dạng OpenAI chunk |
Message system được ghép trước user query cho tương thích upstream.
Response (non-stream)
Dạng OpenAI chuẩn:
{
"id": "chatcmpl-…",
"object": "chat.completion",
"choices": [{
"message": { "role": "assistant", "content": "…" },
"finish_reason": "stop"
}],
"usage": { "prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0 }
}Gommo không báo token usage — các field là 0.
Streaming
curl -N -X POST http://localhost:3001/v1/chat/completions \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.5::cheap","stream":true,"messages":[{"role":"user","content":"Hi"}]}'Trả text/event-stream với object chat.completion.chunk và data: [DONE] cuối.
Danh sách model
curl http://localhost:3001/v1/models \
-H "Authorization: Bearer $TOKEN"Trả default chat model từ env (GOMMO_CHAT_MODEL).
Self-host (chỉ operator)
OpenAI /vi/v1/chat/completions và JSON chat wrapper chỉ khi self-host repo — Deploy → Self-host nâng cao. Production: dùng form API Gommo ở trên.
