Базова URL-адреса та аутентифікація
Аутентифікація вимагає один API-ключ, переданий в Authorization header.
Кожен запит має спрямовуватися на базовий URL https://api.dolphinaisincensura.com/v1 та включіть ключ як Bearer YOUR_API_KEY.
Ця конфігурація працює з будь-яким SDK, сумісним з OpenAI, просто оновивши base_url конфігурація.
Помилки, такі як 401, вказують на недійсний або відсутній ключ, тоді як 402 сигналізує про недостатність кредитів передоплати.
curl https://api.dolphinaisincensura.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list the python imports for requests and json"}]
}'
Надсилання запиту на завершення чату
Надішліть POST-запит на /v1/chat/completions з model field встановлено на uncensored.
Включіть messages масив, що містить історію ваших запитів для підтримки контексту розмови.
API повертає текстову відповідь безпосередньо в content field першого варіанту.
Цей підхід з однією моделлю усуває комісії проксі та гарантує передбачуване ціноутворення на рівні $0.15 за 1M вхідних токенів.
from openai import OpenAI
client = OpenAI(base_url="https://api.dolphinaisincensura.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 у тілі запиту.
Сервер відповідає подіями, що надсилаються сервером (SSE), які доставляють токени поступово.
Парсуйте кожен чанк 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
Використовуйте tools параметр для визначення схем функцій для витягування структурованих даних.
Встановити response_format до {"type": "json_object"} щоб забезпечити суворий вивід у форматі JSON для надійного парсингу.
Вказати temperature та top_p для контролю креативності проти детермінованості у ваших результатах.
Ці функції дозволяють створювати автономних агентів, які взаємодіють із зовнішніми API або базами даних.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.dolphinaisincensura.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);
Розуміння обмежень на токени та контексту
Вікно контексту підтримує 100,000 токенів як для запиту, так і для відповіді разом.
Максимальний обсяг виводу за запит становить 16 000 токенів або 2048, якщо max_tokens не встановлено.
Ліміти дозволяють 300 запитів на хвилину та 8 паралельних запитів на API-ключ.
Запити, що перевищують ліміт розміру тіла в 8 МБ або досягають лімітів паралелізму, повертають помилки 429.
Помилкові відповіді та відмови не споживають ваш передоплачений кредит.
Ліміти частоти та конкурентність
Кожний API-ключ обмежено 300 запитами на хвилину та 8 одночасними активними з'єднаннями.
Статус 429 вказує на те, що ви перевищили ліміти паралелізму або швидкості.
Ви можете згенерувати новий ключ для заміни існуючого, але на акаунт дозволено лише один активний ключ.
Відстежуйте своє використання через заголовки відповіді, щоб не перевищувати ліміт тіла запиту в 8 МБ.