Интеграция API Uncensored Local LLM
Подключите API Uncensored Local LLM, указав в совместимом с OpenAI клиенте наш эндпоинт. Вы получаете контекстное окно на 100k токенов, поддержку потоковой передачи и сырые выходные данные модели без управления локальной GPU-инфраструктурой.
- Базовый URL
- https://api.uncensoredlocalllm.com/v1
- Модель
- без цензуры
Базовый URL и аутентификация
Наш API полностью совместим с SDK OpenAI. Вам нужно лишь обновить base_url и указать ваш API-ключ. Зарегистрируйтесь на странице Получить API-ключ, чтобы получить ключ мгновенно. Для начала работы с пробным балансом не требуется номер телефона или кредитная карта. Базовый URL: https://api.uncensoredlocalllm.com/v1. Храните ключ в безопасности; вы можете сгенерировать новый в любое время, что мгновенно аннулирует старый. Это обеспечивает вам всегда один стабильный эндпоинт для ваших приложений без сложности управления локальным выводом.
Первый запрос
Выполните первый вызов API с помощью вашего предпочтительного HTTP-клиента. Эндпоинт поддерживает стандартный формат chat-completions. Ниже приведен пример cURL для базового запроса. Замените YOUR_API_KEY на ваш реальный ключ. Этот запрос отправляет промпт и ожидает текстовый ответ. Идентификатор модели: uncensored. Эта модель с открытыми весами настроена так, чтобы отвечать без отказов по контенту для законного использования взрослыми, предоставляя прямые выходные данные для вашего случая использования.
curl https://api.uncensoredlocalllm.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Ответ будет содержать сгенерированный текст в массиве choices. Если вы получите ошибку 401, ваш API-ключ недействителен или отсутствует. Убедитесь, что используете правильный базовый URL и что ключ не был аннулирован после перегенерации.
Интеграция с Python SDK
Используйте официальный Python SDK от OpenAI для быстрой интеграции. Установите base_url и api_key при инициализации клиента. Этот подход позволяет использовать знакомые методы, такие как chat.completions.create(). SDK автоматически обрабатывает сериализацию JSON и HTTP-запросы. Это идеально для бэкенд-сервисов или скриптов, обрабатывающих большие объемы текста. ID модели остается uncensored независимо от версии SDK.
from openai import OpenAI
client = OpenAI(base_url="https://api.uncensoredlocalllm.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)
Этот метод эффективен для пакетной обработки или когда вам нужно обрабатывать логику ответа в Python. Убедитесь, что в вашей среде установлен пакет openai. SDK поддерживает синхронные и асинхронные операции, подходящие для различных архитектурных потребностей.
Интеграция с Node SDK
Для сред JavaScript или TypeScript аналогичный опыт предоставляет SDK OpenAI для Node.js. Инициализируйте клиент, указав базовый URL и API-ключ. Это особенно полезно для веб-приложений или серверлесс-функций. SDK абстрагирует HTTP-детали, позволяя вам сосредоточиться на логике приложения. Вы можете вызвать эндпоинт завершений с той же структурой, что и в других совместимых с OpenAI сервисах.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.uncensoredlocalllm.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);
Используйте эту интеграцию для веб-интерфейсов в реальном времени или микросервисов Node.js. SDK поддерживает обещания и паттерны async/await, что упрощает обработку ошибок. Убедитесь, что вы корректно обрабатываете возможные сетевые ошибки, особенно в распределенных системах.
Потоковые ответы
Включите потоковую передачу, установив stream: true в запросе. Это позволяет получать частичные ответы по мере их генерации, улучшая воспринимаемую задержку для пользователей. API поддерживает Server-Sent Events (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)
Обработайте события потока в коде клиента. Каждый фрагмент содержит часть итогового ответа. Агрегируйте эти фрагменты, чтобы восстановить полное сообщение. Этот подход бесшовно работает с SDK OpenAI как для Python, так и для Node.js.
Лимиты запросов, ошибки и контекстное окно
API устанавливает лимит в 300 запросов в минуту на ключ. Максимальный размер тела запроса составляет 8 МБ. Вы получите ошибку 429, если превысите лимит запросов. Ошибка 402 указывает на недостаток предоплаченного баланса. Следите за своим использованием и пополняйте аккаунт через панель управления. Баланс не сгорает, оплату можно произвести криптовалютой (USDT или USDC).
Контекстное окно составляет 100 000 токенов, включая промпт и завершение. Это позволяет вести обширные беседы или обрабатывать большие документы. Если вы превысите лимит, API отклонит запрос. Идентификатор модели: uncensored, он поддерживает вызов функций для расширенных возможностей.
Характеристики API
Все реальные лимиты и возможности API в одном месте — сверьте их до пополнения.
| Параметр | Значение |
|---|---|
| Формат API | совместим с OpenAI: любой OpenAI SDK работает — замените base URL и ключ |
| ID модели | uncensored |
| Эндпоинты | POST /v1/chat/completions · GET /v1/models |
| Авторизация | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.uncensoredlocalllm.com/v1 |
| Вызов функций | да — tools, tool_choice; ответ содержит tool_calls, в том числе в потоке; результат — сообщением role: tool |
| Параметры | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Контекстное окно | 100 000 токенов (вход и ответ вместе) |
| Максимум ответа | до остатка окна в 100 000 токенов; max_tokens необязателен (отдельного лимита нет) |
| JSON-режим | response_format: {"type": "json_object"} |
| Потоковая передача | да — server-sent events, последний фрагмент содержит расход токенов |
| Размер запроса | до 8 МБ |
| Заголовки ответа | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Параллельные запросы | до 8 одновременно на ключ |
| Лимит запросов | 300 запросов в минуту на ключ |
| Бонус | +5% от $50, +10% от $100 |
| Пополнение | USDT (TRC20) или USDC (Base), любая целая сумма от $10 до $500 |
| Цена | $0,25 за 1 млн входных токенов · $1,00 за 1 млн выходных |
| Пробный баланс | $0,50 на 7 дней, без карты · Пробный ключ: 2 параллельных запроса, 60 в минуту; полные лимиты (8 и 300) после первого пополнения |
| Оплата | предоплаченный баланс по фактическому расходу; ошибки и отказы бесплатны |
| Срок действия | оплаченный баланс не сгорает, без подписки |
| Вход | Google или e-mail и пароль |
| Ключи | один активный ключ на аккаунт; новый заменяет старый |
| Контент | контент для взрослых разрешён; сексуальный контент с несовершеннолетними запрещён |
Коды ошибок
Ошибки приходят в JSON с постоянным type; неудачные и отклонённые запросы не оплачиваются.
| Код | Тип | Что значит |
|---|---|---|
400 | bad_request | неверный JSON, пустые сообщения, неверный параметр или превышено окно контекста |
401 | missing_key · invalid_key · key_revoked | нет ключа, ключ неверный или заменён новым |
402 | no_credit | баланс пуст — пополните, работа продолжится сразу |
403 | content_blocked | сексуальный контент с несовершеннолетними — отказ, без оплаты |
404 | not_found | неизвестный эндпоинт |
413 | request_too_large | тело запроса больше 8 МБ |
429 | rate_limited · concurrency | больше 300/мин или 8 параллельно — подождите и повторите |
503 | upstream_busy | модель занята — повторите через несколько секунд |
Вопросы и ответы
Какой размер контекстного окна?
API поддерживает контекстное окно на 100 000 токенов, включая входной промпт и выходное дополнение. Это позволяет вести долгие разговоры или обрабатывать большие документы в одном запросе.
Как обрабатывать потоковые ответы?
Установите <code>stream: true</code> в запросе, чтобы получать Server-Sent Events (SSE). SDK OpenAI для Python и Node.js автоматически обрабатывают потоковую передачу при включении этого флага. Затем вы можете обрабатывать каждый фрагмент по мере его поступления.
Что произойдет, если закончится баланс?
Вы получите ошибку <code>402</code>, указывающую на отсутствие доступного баланса. Вы можете пополнить аккаунт на сумму от $10 с помощью криптовалюты (USDT или USDC). Баланс не сгорает, а за крупные пополнения начисляются бонусы.
uncensoredlocalllm.com
Ваш ключ — в одной форме от вас
Создайте аккаунт, скопируйте ключ, измените базовый URL. Вот и вся настройка.