Source: https://ailoot.ai/docs/vi/api/chat-completions/
Canonical: https://ailoot.ai/docs/vi/api/chat-completions/
Language: vi

[API](https://ailoot.ai/docs/vi/) 

# Chat Completions

[Markdown](https://ailoot.ai/docs/vi/api/chat-completions/index.md)

Phản hồi của mô hình cho cuộc hội thoại theo định dạng OpenAI. Đây là định dạng phổ biến nhất, được hầu hết ứng dụng máy khách hỗ trợ.

POST`https://api.ailoot.ai/v1/chat/completions`

Chat Completions

```bash
curl https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "messages": [
      {"role": "user", "content": "Giải thích API là gì trong hai câu."}
    ]
  }' 
```

```python
from openai import OpenAI
import os

client = OpenAI(max_retries=0, 
    base_url="https://api.ailoot.ai/v1",
    api_key=os.environ["AILOOT_API_KEY"],
)

resp = client.chat.completions.create(
    model="claude-sonnet-5-5",
    messages=[{"role": "user", "content": "Giải thích API là gì trong hai câu."}],
)
print(resp.choices[0].message.content)
```

```js
import OpenAI from "openai";

const client = new OpenAI({ maxRetries: 0,
  baseURL: "https://api.ailoot.ai/v1",
  apiKey: process.env.AILOOT_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "claude-sonnet-5-5",
  messages: [{ role: "user", content: "Giải thích API là gì trong hai câu." }],
});
console.log(resp.choices[0].message.content);
```

200 OK

```json
{
  "id": "chatcmpl-8f2c…",
  "object": "chat.completion",
  "created": 1790812800,
  "model": "claude-sonnet-5-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "API là quy ước về cách một chương trình yêu cầu chương trình khác thực hiện một việc…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}
```

## Xác thực

| Tham số | Kiểu | Bắt buộc | Mô tả |
| --- | --- | --- | --- |
| `Authorization` | header | bắt buộc | Khóa có dạng `Bearer sk-…`. Cũng có thể dùng các header `x-api-key` hoặc `x-goog-api-key`. |

## Phần thân yêu cầu

| Tham số | Kiểu | Bắt buộc | Mô tả |
| --- | --- | --- | --- |
| `model` | string | bắt buộc | ID mô hình trong [danh mục](https://ailoot.ai/models/vi/), ví dụ `claude-sonnet-5-5`. Mô hình phải hỗ trợ định dạng OpenAI Chat. |
| `messages` | array | bắt buộc | Lịch sử hội thoại: các đối tượng có `role` (`system`, `developer`, `user`, `assistant`, `tool`) và `content` — chuỗi hoặc mảng các phần (văn bản, `image_url`). |
| `stream` | boolean | không bắt buộc | Phản hồi theo định dạng Server-Sent Events. Mặc định là `false`. Văn bản tính phí được gửi thành một khối sau khi tính chi phí, thay vì từng từ. |
| `stream_options` | object | không bắt buộc | `{"include_usage": true}` — gửi `usage` cuối cùng làm sự kiện cuối của luồng. |
| `max_tokens` | integer | không bắt buộc | Số token tối đa của phản hồi. Tên mới là `max_completion_tokens`. Nếu không chỉ định giới hạn, Ailoot đặt 4096 (hoặc thấp hơn nếu giới hạn phản hồi của mô hình thấp hơn; Grok có giới hạn riêng). Với phản hồi dài, hãy chỉ định giới hạn rõ ràng; nếu không, phản hồi sẽ dừng ở 4096 token với `finish_reason: "length"`. Giới hạn được tính vào khoản tiền giữ trước: giới hạn càng lớn thì số dư khả dụng cần có càng nhiều. |
| `temperature` | number | không bắt buộc | Mức độ ngẫu nhiên của phản hồi, thường từ 0 đến 2. Các mô hình suy luận có thể bỏ qua tham số này. |
| `top_p` | number | không bắt buộc | Phương án thay thế cho temperature: tỷ lệ tổng xác suất dùng để chọn token. |
| `stop` | string \| array | không bắt buộc | Các chuỗi khiến quá trình tạo nội dung dừng lại. |
| `tools` | array | không bắt buộc | Mô tả các hàm mà mô hình có thể gọi. Định dạng giống OpenAI: `{"type": "function", "function": {...}}`. |
| `tool_choice` | string \| object | không bắt buộc | `auto`, `none`, `required` hoặc một hàm cụ thể. |
| `response_format` | object | không bắt buộc | `{"type": "json_object"}` hoặc `{"type": "json_schema", ...}` để nhận phản hồi có cấu trúc — nếu mô hình hỗ trợ. |
| `reasoning_effort` | string | không bắt buộc | Mức độ suy luận của các mô hình suy luận: `low`, `medium`, `high`. |

Các tham số OpenAI khác được chuyển nguyên trạng; nhà phát triển mô hình quyết định mô hình cụ thể có hỗ trợ chúng hay không.

## Phản hồi

| Tham số | Kiểu | Bắt buộc | Mô tả |
| --- | --- | --- | --- |
| `choices[].message` | object |  | Phản hồi của mô hình: `content`, khi gọi công cụ — `tool_calls`. |
| `choices[].finish_reason` | string |  | `stop` — phản hồi đã hoàn tất; `length` — đã chạm giới hạn `max_tokens` (phản hồi này vẫn được coi là hoàn chỉnh và tính phí theo mức sử dụng thực tế); `tool_calls` — mô hình gọi công cụ. |
| `usage` | object |  | `prompt_tokens`, `completion_tokens`, `total_tokens` — dùng để tính số tiền khấu trừ. |

Còn câu hỏi? Hãy gửi Request ID và mô tả — chúng tôi sẽ giúp tìm hiểu.[Liên hệ hỗ trợ](mailto:support@ailoot.ai)

## Ailoot · Công ty và danh mục dự án của công ty





Ailoot dựa trên kinh nghiệm vận hành tích lũy, cơ sở khách hàng lớn, dịch vụ ổn định và việc kiểm soát KPI liên tục.





Công ty và danh mục dự án của công ty: hàng triệu khách hàng; doanh số hàng tỷ mỗi tháng.





Ailoot áp dụng kinh nghiệm vận hành này để cung cấp quyền truy cập API vào các tính năng AI trong sản phẩm của khách hàng, tác tử, ứng dụng và quy trình tự động hóa.
