Базова URL-адреса та аутентифікація
Базовий URL для всіх запитів є https://api.veniceaiapipricing.com/v1. Ви автентифікуєтесь, передаючи свій API-ключ у Authorization header як Bearer-токен. Ця конфігурація працює з будь-яким стандартним SDK OpenAI. Замініть YOUR_API_KEY за допомогою ключа, згенерованого на панелі керування вашого облікового запису.
- Точка доступу:
POST /v1/chat/completions - Заголовок:
Authorization: Bearer YOUR_API_KEY
curl https://api.veniceaiapipricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Return server status code 200"}]
}'
Ендпоінт /v1/chat/completions
Надішліть історію розмови до /v1/chat/completions за допомогою uncensored model ID. API приймає стандартні об’єкти повідомлень із role та content поля. Вхідні токени коштують $0.15 за мільйон, а вихідні токени коштують $0.50 за мільйон. Помилки та відмови не споживають кредит.
Цей ендпоінт підтримує генерацію лише тексту. Він не обробляє зображення, аудіо чи вбудовування. Ви можете отримувати відповіді потоком або отримувати повний текст у вигляді одного об'єкта JSON.
from openai import OpenAI
client = OpenAI(base_url="https://api.veniceaiapipricing.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
Потокові відповіді (SSE)
Увімкніть потокову передачу, встановивши stream: true у тілі вашого запиту. API повертає події, надіслані сервером (SSE), для кожного згенерованого токена. Останній фрагмент містить статистику загального використання токенів. Цей метод зменшує сприйняту затримку для довгих відповідей.
Обробка потоків є важливою для додатків реального часу. Ви можете обробляти токени по мірі їх надходження, а не чекати повного завершення.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
Function Calling та режим JSON
API підтримує структуровані виводи та визначення інструментів. Використовуйте response_format: {"type": "json_object"} щоб забезпечити вивід у форматі JSON. Ви також можете передати tools для виклику функцій, дозволяючи моделі повертати структуровані дані для логіки вашого додатка.
Ця функція корисна для витягування даних або запуску дій. Модель повертає виклики інструментів у стандартизованому форматі. Ви можете виконати свої функції та повернути результати назад у розмову.
Параметри: Temperature, Top P, Seeds
Контролюйте творчість за допомогою temperature та top_p. The seed параметр забезпечує детерміновані результати для тестування. Ці параметри відповідають стандартним конвенціям OpenAI. Їх зміна впливає на випадковість згенерованого тексту.
Встановити temperature to 0.7 for balanced creativity. Use seed для відтворюваних результатів. API коректно ігнорує непідтримувані параметри.
Ліміти частоти та обмеження
Вам доступно не більше 300 запитів на хвилину на кожен ключ. Одночасно може виконуватися не більше 8 запитів на ключ. Розмір тіла запиту обмежено 8 МБ. Контекстне вікно становить 100 000 токенів для вхідних і вихідних даних разом. Максимальний обсяг вихідних даних на запит — 16 000 токенів.
Перевищення цих лімітів повертає помилку 429. Переконайтеся, що ваш клієнт правильно обробляє повторні спроби. Ключ API унікальний для кожного облікового запису; генерація нового ключа замінює старий.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.veniceaiapipricing.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);