Аутентификация и базовый URL
Начните с замены базового URL и API-ключа в конфигурации вашего клиента. Наш сервис использует единый базовый URL для всех запросов, что обеспечивает совместимость с существующими SDK OpenAI. Вам не нужно управлять несколькими конечными точками для разных функций. Сгенерируйте ключ через панель управления, используя Google или email. Храните этот ключ в безопасности, так как он предоставляет прямой доступ к вашим предоплаченным кредитам.
Ключ API отправляется в Authorization header. Если вы потеряете ключ, сгенерируйте новый в панели управления, который заменит старый активный ключ. Для восстановления аккаунта не требуется номер телефона, что соответствует нашему подходу, ориентированному на конфиденциальность. Используйте базовый URL ниже для всех последующих запросов.
Базовый URL: https://api.norestrictedai.com/v1
POST /v1/chat/completions
Передайте свой промпт в POST /v1/chat/completions эндпоинт для получения текстового ответа. Это единственный эндпоинт, который вам нужен для генерации текста. Идентификатор модели — uncensored. Это модель с открытым весом, настроенная на ответы без отказов по контенту для законного использования для взрослых. Это не GPT или Claude. Вы можете использовать потоковую передачу ответов или запрашивать их в режиме JSON. Система поддерживает вызов функций и стандартные параметры, такие как temperature и top_p.
Запросы обрабатываются как текст-вход, текст-выход. Нет возможностей эмбеддинга или генерации изображений. Если вам нужны эти функции, посмотрите в другом месте. Наш фокус чисто на прямой генерации текста с прозрачной ценой за токен. Ошибки и отказы (за исключением жесткого ограничения на контент с несовершеннолетними) не расходуют ваш кредит.
Интеграция Python SDK
Используйте официальную библиотеку OpenAI для Python для взаимодействия с нашим API. Укажите базовый URL и API-ключ в экземпляре клиента. Этот подход позволяет сохранить существующую структуру кода при смене провайдера. Библиотека автоматически обрабатывает сериализацию JSON и HTTP-запросы. Вы можете использовать то же имя модели, что и для других сервисов, но помните, что наш идентификатор модели — uncensored.
Этот метод идеален для фоновых служб и скриптов. Библиотека поддерживает как синхронные, так и асинхронные операции. Вы можете регулировать значения temperature и top_p для управления креативностью. Объект ответа содержит сгенерированный текст и статистику использования токенов.
Интеграция Node SDK
Интегрируйте наш API в ваши приложения на Node.js с помощью стандартного SDK OpenAI. Настройте клиент, указав базовый URL и API-ключ. Эта настройка бесшовно работает с маршрутами Express или серверными функциями. SDK управляет жизненным циклом запроса, включая повторные попытки и обработку ошибок. Вы можете передавать сообщения в виде массива объектов с ролями и содержимым.
Эта интеграция идеально подходит для веб-приложений и микросервисов. Объект ответа включает сгенерированный контент и данные об использовании. Вы можете включить потоковую передачу, чтобы отправлять токены клиенту по мере их генерации. Это снижает воспринимаемую задержку для конечных пользователей. SDK поддерживает все стандартные параметры, определенные в спецификации API.
Потоковые ответы (SSE)
Включите потоковую передачу, установив stream параметр на true. API возвращает поток Server-Sent Events (SSE). Каждый чанк содержит частичный ответ. Последний чанк включает общее количество использованных токенов. Эта функция значительно сокращает время до первого токена. Она необходима для интерфейсов чатов и приложений реального времени.
Поток продолжается до тех пор, пока модель не завершит ответ или не произойдет ошибка. Вы можете отменить поток в любое время. Сервер прекращает обработку запроса, когда клиент отключается. Это экономит вычислительные ресурсы. Используйте режим потоковой передачи для обеспечения плавного пользовательского опыта. Использование токенов в последнем фрагменте позволяет вам точно отслеживать расходы.
Лимиты запросов и ошибки
Наш API устанавливает строгие лимиты частоты запросов для обеспечения стабильности. Вам разрешено 300 запросов в минуту на ключ. Вы можете выполнять 8 одновременных запросов одновременно. Максимальный размер тела запроса составляет 8 МБ. При превышении этих лимитов вы получаете ошибку 429. Ошибки, такие как недействительный ключ, возвращают 401. Недостаточный баланс возвращает 402. Эти ошибки не расходуют ваш кредит.
Окно контекста составляет 100 000 токенов для промпта и завершения вместе. Максимальный объем вывода — 16 000 токенов на запрос. Если вы не установите max_tokens, лимит составляет 2 048. Кредиты предоплачиваемые и не сгорают. Ошибки бесплатны. Если вас дважды списали средства, обратитесь в поддержку. Система не сохраняет промпты для обучения. Конфиденциальность сохраняется. Используйте блоки кода ниже для реализации этих функций.
cURL
curl https://api.norestrictedai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Set database index to primary key"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.norestrictedai.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.norestrictedai.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);Потоковая передача
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)