Установите стандартный SDK OpenAI
Начните с установки официального SDK для выбранного вами языка. Эта библиотека автоматически обрабатывает аутентификацию и форматирование запросов. Она работает с нашим API LLM без цензуры без каких-либо изменений.
- Python:
pip install openai - Node.js:
npm install openai
Версия SDK должна быть достаточно новой, чтобы поддерживать base_url параметр. Это обеспечивает совместимость со структурой нашего API, совместимого с OpenAI.
Установите базовый URL и API-ключ
Настройте клиент так, чтобы он указывал на наши серверы. Используйте базовый URL https://api.unrestrictedaibot.com/v1 и ваш уникальный API-ключ. Эта настройка позволяет использовать тот же код, который вы уже используете для других сервисов.
Аутентификация передается через Authorization header. SDK автоматически внедряет этот заголовок, когда вы предоставляете ключ.
curl https://api.unrestrictedaibot.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Find all null values in this JSON response"}]
}'
Отправьте свое первое завершение чата
Отправить запрос на /v1/chat/completions с идентификатором модели uncensored. Отправьте сообщение пользователя и получите текстовый ответ. Эта модель не отказывается от законных тем для взрослых или спорного контента.
Установите max_tokens параметр для управления длиной вывода. По умолчанию установлено 2 048 токенов, если вы не укажете это поле. Наш контекстное окно поддерживает до 100 000 токенов в общей сложности.
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedaibot.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)
Включите потоковую передачу ответов
Используйте Server-Sent Events (SSE) для доставки токенов в реальном времени. Установите stream=true в вашем запросе. SDK выдает токены по мере их генерации. Это снижает воспринимаемую задержку для длинных ответов.
Обработайте чанки потока в своем коде. Последний чанк содержит общее использование токенов. Это полезно для прозрачности биллинга и мониторинга потребления.
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)
Используйте режим JSON и вызов функций
Запрос структурированного вывода путем установки response_format для {"type": "json_object"}. Модель возвращает валидный JSON, который можно сразу распарсить. Это идеально подходит для создания агентов или конвейеров обработки данных.
Определите инструменты в запросе для вызова функций. Модель может вызывать функции на основе запроса пользователя. Используйте tool_choice для управления вызовом функций. Это добавляет мощности вашим приложениям без дополнительной инфраструктуры.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedaibot.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);
Проверьте использование токенов и лимиты
Отслеживайте использование через заголовки ответа API или последний фрагмент потока. Вы платите за каждый использованный токен. Ошибки и отказы бесплатны. Эта прозрачная модель ценообразования применяется ко всем запросам.
Соблюдайте лимиты частоты запросов: 300 запросов в минуту и 8 одновременных запросов на ключ. Если вы превысите эти лимиты, получите ошибку 429. Планируйте одновременные запросы соответствующим образом.