Быстрый старт API, совместимого с OpenAI
Вставьте существующий код, совместимый с OpenAI, в наш uncensored LLM API без переписывания логики. Это руководство охватывает основные шаги настройки для разработчиков, которым нужна прямая, нефильтрованная замена стандартным эндпоинтам моделей.
Предварительные требования и настройка окружения
Вам нужен API ключ и правильный базовый URL для подключения клиента. Зарегистрируйтесь через Google или email на странице Get API key, чтобы немедленно получить учетные данные. Пробный период дает вам $0.50 на семь дней, и вы можете пополнить баланс с помощью USDT или USDC через криптовалюту. Храните ключ в безопасности и убедитесь, что он соответствует настройкам вашего аккаунта.
Убедитесь, что ваша среда поддерживает стандартные HTTP-запросы. Наш сервис работает на одной uncensored модели, поэтому вам не нужно управлять несколькими конечными точками моделей. Установите базовый URL на HTTPS://api.openaiapicompatibility.com/v1 перед выполнением любых вызовов. Это гарантирует правильную маршрутизацию всех запросов к нашим настроенным серверам вывода.
Установка официального SDK OpenAI
Используйте официальные SDK для сохранения совместимости с существующими рабочими процессами OpenAI. Библиотеки Python и Node работают напрямую с нашей конечной точкой, поскольку мы следуем стандартной схеме API. Установите пакет в каталог вашего проекта с помощью предпочитаемого менеджера пакетов. Этот подход избавляет от необходимости писать пользовательский код HTTP-клиента.
Мы поддерживаем стандартные параметры, такие как temperature, top_p и последовательности stop. SDK автоматически выполняет сериализацию JSON и заголовки запросов. Вы можете изменить базовый URL в конфигурации клиента, чтобы указать на наши серверы. Это позволяет переключаться между поставщиками без изменения логики приложения.
Настройка базового URL и API-ключа
Укажите базовый URL и ключ API в объекте конфигурации клиента. Базовый URL — HTTPS://api.openaiapicompatibility.com/v1. Передайте ключ API в заголовке Authorization как Bearer-токен. Эта конфигурация гарантирует аутентификацию и маршрутизацию запросов к нужному сервису.
curl https://api.openaiapicompatibility.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list all python packages for data science"}]
}'Проверьте подключение, вызвав конечную точку GET /v1/models. Она возвращает список доступных моделей, включая идентификатор uncensored модели. Используйте этот шаг, чтобы подтвердить правильность сетевого доступа и учетных данных перед отправкой сложных запросов.
Выполнение первого запроса на создание чата
Отправьте POST-запрос на /v1/chat/completions с сообщениями промпта. Укажите модель как uncensored для доступа к нефильтрованному механизму вывода. Включите системную подсказку для задания поведения и добавьте сообщения пользователя для генерации нужного контента.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaiapicompatibility.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)Ответ содержит сгенерированный текст и статистику использования токенов. Вы можете настроить параметры, такие как temperature, чтобы контролировать креативность. Модель не отказывается от законных взрослых или спорных тем, что делает ее подходящей для различных сценариев использования. Проверьте объект ответа на наличие поля content для доступа к выводу.
Потоковые ответы с SSE
Включите потоковую передачу, установив параметр stream в true в запросе. Это отправляет частичные ответы в виде событий, отправляемых сервером (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)Каждый чанк содержит дельту ответа. Накопите эти дельты, чтобы восстановить полный текст. Последний чанк включает общее использование токенов для запроса. Этот метод работает с любым стандартным клиентом или библиотекой SSE. Он снижает воспринимаемую задержку при генерации длинного текста.
Обработка режима JSON и вызова функций
Используйте режим JSON, установив response_format в json_object. Это заставляет модель выводить действительный JSON вместо свободного текста. Это полезно для извлечения структурированных данных или ответов API. Сочетайте это с вызовом функций для сценариев использования инструментов.
Определите свои инструменты в массиве tools. Укажите имя функции, описание и параметры. Модель вернет детали вызова функции в ответе. Затем вы можете выполнить функцию и отправить результат обратно модели. Это позволяет создавать сложные многоэтапные рабочие процессы с uncensored моделью.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaiapicompatibility.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);FAQ
Поддерживает ли этот API совместимость с API OpenAI для существующих клиентов?
Да, наш сервис полностью совместим со схемой API OpenAI. Вы можете использовать официальные SDK OpenAI, изменив базовый URL и API-ключ. Это позволяет заменить модель на нашу uncensored без переписывания кода.
Каковы ограничения токенов и размер контекстного окна?
Окно контекста составляет 100 000 токенов для промпта и завершения вместе. Максимальный объем вывода на запрос — 16 000 токенов или 2 048, если вы не установите max_tokens. Запросы, превышающие эти лимиты, вернут ошибку.
Как обрабатывать ограничения частоты запросов и ошибки?
Вы ограничены 300 запросами в минуту и 8 одновременными запросами на ключ. Ошибка 401 указывает на недействительный или отсутствующий API-ключ. Ошибка 402 означает, что у вас недостаточно средств, а ошибка 429 сигнализирует о превышении лимита частоты запросов.
Получите ключ при регистрации
Зарегистрируйтесь, скопируйте ключ, обновите базовый URL. Это всё.