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.7
11}'

Параметры запроса

ПараметрТипОбязательныйОписание
modelstringДаID модели, которую нужно использовать
messagesarrayДаМассив объектов сообщений
temperaturenumberНетТемпература сэмплирования (0–2). По умолчанию: 1
max_tokensintegerНетМаксимальное число генерируемых токенов
top_pnumberНетПараметр nucleus sampling
streambooleanНетПередавать ли ответ потоком

Роли сообщений

Сообщения должны содержать role и content:

  • system — задаёт поведение и «характер» ассистента
  • user — сообщения конечного пользователя
  • assistant — предыдущие ответы модели

Потоковые ответы

Включите streaming, чтобы получать ответ постепенно:

1from openai import OpenAI
2 
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=True
12)
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

Учитывайте лимиты токенов каждой модели. Для длинных диалогов может понадобиться управление историей разговора.