> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Швидкий старт OpenAI-compatible API: надсилайте запити Chat Completions через CometAPI

> Використовуйте CometAPI як base URL, сумісний з OpenAI API, для запитів Chat Completions за допомогою curl, Python, Node.js та OpenAI SDK.

Ця сторінка — короткий посібник із CometAPI OpenAI-compatible API. Вона допоможе вам повторно використовувати форму запиту Chat Completions, OpenAI SDK і base URL CometAPI. Це не посібник із налаштування облікового запису OpenAI і не сторінка лише про моделі OpenAI.

## Що ви створите

Ви надішлете один текстовий запит до OpenAI-compatible маршруту CometAPI `POST /v1/chat/completions`, виведете повідомлення асистента та збережете форму запиту готовою для застосунків, які вже використовують OpenAI SDK.

## Коли використовувати цю сторінку

Використовуйте цей короткий посібник, якщо вашому проєкту підходить один із цих варіантів:

* Ви вже використовуєте OpenAI SDK або форми запитів Chat Completions.
* Ви хочете змінити base URL на CometAPI.
* Ви хочете викликати model ID CometAPI через маршрут, сумісний з OpenAI API.

## Передумови

* API key CometAPI, збережений у `COMETAPI_KEY`
* Текстовий model ID зі сторінки [Models page](/uk/overview/models)
* `curl`, Python 3.10+ або Node.js 18+

## API key, base URL, автентифікація

Використовуйте base URL CometAPI із клієнтами, сумісними з OpenAI:

```text theme={null}
https://api.cometapi.com/v1
```

Автентифікуйте прямі HTTP-запити за допомогою Bearer token:

```text theme={null}
Authorization: Bearer $COMETAPI_KEY
```

## Приклади коду

Скористайтеся вкладками нижче, щоб надіслати той самий запит Chat Completions за допомогою cURL, Python і Node.js.

<CodeGroup>
  ```bash cURL theme={null}
  curl https://api.cometapi.com/v1/chat/completions \
    -H "Authorization: Bearer $COMETAPI_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "your-model-id",
      "messages": [
        {
          "role": "user",
          "content": "Write one sentence about CometAPI."
        }
      ]
    }'
  ```

  ```python Python theme={null}
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["COMETAPI_KEY"],
      base_url="https://api.cometapi.com/v1",
  )

  completion = client.chat.completions.create(
      model="your-model-id",
      messages=[
          {
              "role": "user",
              "content": "Write one sentence about CometAPI.",
          }
      ],
  )

  print(completion.choices[0].message.content)
  ```

  ```javascript Node.js theme={null}
  import OpenAI from "openai";

  const client = new OpenAI({
    apiKey: process.env.COMETAPI_KEY,
    baseURL: "https://api.cometapi.com/v1",
  });

  const completion = await client.chat.completions.create({
    model: "your-model-id",
    messages: [
      {
        role: "user",
        content: "Write one sentence about CometAPI.",
      },
    ],
  });

  console.log(completion.choices[0].message.content);
  ```
</CodeGroup>

## Пояснення потоку

OpenAI-compatible означає, що ваш застосунок зберігає endpoint Chat Completions, тіло запиту та назви методів SDK, змінюючи лише base URL і model ID на значення CometAPI.

Маршрут за замовчуванням є синхронним. API повертає завершений об’єкт відповіді в межах однієї HTTP-відповіді, а ваш застосунок читає `choices[0].message.content`.

Для поступового виведення встановіть `stream` у `true`. Відповідь стане Server-Sent Events і завершиться `data: [DONE]`. Використовуйте streaming для чат-інтерфейсів і довгих відповідей. Зберігайте синхронну форму для фонових завдань і простих тестів.

## Поширені параметри

| Parameter               | Use                                                                                           |
| ----------------------- | --------------------------------------------------------------------------------------------- |
| `model`                 | model ID CometAPI для моделі з підтримкою тексту.                                             |
| `messages`              | Масив розмови. Для мінімального запиту почніть з одного повідомлення `user`.                  |
| `temperature`           | Керує випадковістю. Нижчі значення роблять вивід більш детермінованим.                        |
| `max_completion_tokens` | Обмежує згенерований вивід для сімейств моделей, які використовують бюджети completion-token. |
| `stream`                | Передає інкрементальні фрагменти відповіді, якщо встановлено `true`.                          |
| `response_format`       | Запитує JSON-вивід, якщо вибрана модель це підтримує.                                         |

## Усунення несправностей і FAQ

<AccordionGroup>
  <Accordion title="Це OpenAI API?">
    Ні. Це OpenAI-сумісний API route від CometAPI. Ви використовуєте API key CometAPI, base URL CometAPI та model ID CometAPI.
  </Accordion>

  <Accordion title="Запит повертає 401">
    Підтвердьте, що `COMETAPI_KEY` встановлено в тій самій оболонці або runtime, з якої надсилається запит. Не вставляйте справжній ключ у вихідні файли.
  </Accordion>

  <Accordion title="Модель не знайдено">
    Використовуйте model ID CometAPI, який підтримує текстові або chat-запити. Перед повторною спробою перевірте сторінку Models.
  </Accordion>

  <Accordion title="SDK досі викликає OpenAI">
    Підтвердьте, що клієнт встановлює `base_url` у Python або `baseURL` у Node.js на `https://api.cometapi.com/v1`.
  </Accordion>
</AccordionGroup>

## Наступні кроки

* Прочитайте [довідник API Chat Completions](/api/text/chat).
* Налаштуйте клієнти SDK у [Використання CometAPI з OpenAI SDKs](/uk/guides/use-cometapi-with-openai-sdk).
* Перегляньте список доступних моделей у [Список доступних моделей CometAPI](/uk/guides/how-to-list-available-models).
* Додайте обробку повторних спроб і rate-limit за допомогою [Коди помилок і стратегія повторних спроб](/uk/guides/error-codes-and-retry-strategy).
