Chat Completions
Создавайте диалоговые ответы с помощью различных моделей ИИ через единый API.
Создать ответ чата
POST https://aiberm.com/v1/chat/completions
1curl https://aiberm.com/v1/chat/completions \2-H "Content-Type: application/json" \3-H "Authorization: Bearer YOUR_API_KEY" \4-d '{5 "model": "gpt-4",6 "messages": [7 {"role": "system", "content": "You are a helpful assistant."},8 {"role": "user", "content": "What is the capital of France?"}9 ],10 "temperature": 0.711}'Параметры запроса
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
model | string | Да | ID модели, которую нужно использовать |
messages | array | Да | Массив объектов сообщений |
temperature | number | Нет | Температура сэмплирования (0–2). По умолчанию: 1 |
max_tokens | integer | Нет | Максимальное число генерируемых токенов |
top_p | number | Нет | Параметр nucleus sampling |
stream | boolean | Нет | Передавать ли ответ потоком |
Роли сообщений
Сообщения должны содержать role и content:
- system — задаёт поведение и «характер» ассистента
- user — сообщения конечного пользователя
- assistant — предыдущие ответы модели
Потоковые ответы
Включите streaming, чтобы получать ответ постепенно:
1from openai import OpenAI2 3client = OpenAI(4 api_key="YOUR_API_KEY",5 base_url="https://aiberm.com/v1"6)7 8stream = client.chat.completions.create(9 model="gpt-4",10 messages=[{"role": "user", "content": "Tell me a story"}],11 stream=True12)13 14for chunk in stream:15 if chunk.choices[0].delta.content:16 print(chunk.choices[0].delta.content, end="")Рекомендации
Оптимизируйте запросы
- Задавайте
max_tokens, чтобы ограничить затраты - Подбирайте
temperature(ниже — для фактов, выше — для креатива) - Добавляйте системные сообщения, чтобы направлять поведение
- Используйте поток ответов для лучшего UX
Warning
Учитывайте лимиты токенов каждой модели. Для длинных диалогов может понадобиться управление историей разговора.