Последнее обновление
Руководство по интеграции API Character AI
Миграция с Character AI на решение с самостоятельным хостингом или на основе API дает вам полный контроль над контекстом, стилем и цензурой. Это руководство проведет вас через интеграцию нецензурной LLM, которая имитирует знакомый интерфейс чата, но предлагает более глубокую настройку и отсутствие ежемесячных абонентских платежей.
Почему стоит заменить Character AI на API?
Character AI удобен, но он привязывает ваших персонажей к своей экосистеме. Вы не можете сохранить полное контекстное окно, настроить параметры модели или гарантировать конфиденциальность ваших данных. Решение на базе API, такое как uncutly AI дает вам прямой доступ к нецензурируемой LLM. Вы управляете промптами, температурой и последовательностями остановки. Это означает, что ваши персонажи ведут себя именно так, как вы хотите.
Проприетарные платформы часто отклоняют контент, который является совершенно законным. Они могут обрывать историю из-за чувствительного ключевого слова. С uncensored API для чат-ботов вы решаете, что разрешено. Вы получаете единую, надежную конечную точку для генерации текста. Эта надежность критически важна, когда вы создаете продукт, зависящий от согласованного поведения персонажей. Вы не в зависимости от произвольной команды модерации платформы.
Шаг 1: Получите ваш API-ключ
Начните с создания аккаунта в панели провайдера. Вы можете войти через Google или использовать простую почту и пароль. Номер телефона не требуется. После регистрации перейдите в раздел API-ключа. Система генерирует уникальный ключ мгновенно. Скопируйте этот ключ и сохраните его в переменных окружения.
Каждый запрос к API должен включать этот ключ в заголовке. Если ключ отсутствует или недействителен, сервер возвращает ошибку 401. Вы получаете небольшой пробный кредит для тестирования интеграции перед тем, как тратить деньги. Этот пробный кредит действует семь дней. Это хороший способ проверить, работает ли ваша настройка правильно.
Шаг 2: Настройте базовый URL
Большинство современных клиентов LLM ожидают интерфейс, совместимый с OpenAI. Вам нужно указать правильный базовый URL для вашего SDK. Для этого сервиса конечная точка имеет вид https://api.uncutlyai.com/v1. Эта структура URL зеркально отражает стандартный API OpenAI. Это означает, что вы можете использовать существующие библиотеки без значительных изменений в коде.
Обновите объект конфигурации, чтобы включить этот базовый URL. Также установите API-ключ в заголовке авторизации. Идентификатор модели, который вы будете использовать, просто "uncensored". Эта модель настроена на меньшее количество отказов и большую творческую свободу. Она хорошо обрабатывает длинные контексты до 100,000 токенов. Эта длина позволяет хранить глубокие истории персонажей.
Шаг 3: Отправьте первый запрос на завершение диалога
Сформируйте запрос на /v1/chat/completions эндпоинт. Тело должно содержать список сообщений. Каждое сообщение имеет роль, такую как "system", "user" или "assistant". Системное сообщение определяет личность персонажа. Сообщения пользователя управляют разговором.
Вот как вы структурируете запрос:
curl https://api.uncutlyai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Show me the API endpoint for text generation"}]
}'Отправьте этот запрос, чтобы увидеть, как модель отвечает. Сервер обрабатывает токены и возвращает текстовое завершение. Вы можете установить такие параметры, как temperature для управления креативностью. Высокие значения делают персонажа более непредсказуемым. Низкие значения делают его более последовательным. Эта гибкость позволяет точно настраивать голос.
Шаг 4: Обработка потоковых ответов
Чат-приложения ощущаются медлительными, если весь ответ ждет до конца. Стриминг решает эту проблему. Установите stream параметр в true. Сервер отправляет обратно серию событий Server-Sent Events (SSE). Каждое событие содержит небольшой чанк текста.
Ваш клиентский код должен обрабатывать эти фрагменты и отображать их в реальном времени. Это создает иллюзию набора текста человеком. Это значительно улучшает пользовательский опыт. Последний фрагмент часто содержит статистику использования токенов. Вы можете использовать эти данные для точного отслеживания расходов.
from openai import OpenAI
client = OpenAI(base_url="https://api.uncutlyai.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)Убедитесь, что ваш обработчик потоковой передачи перехватывает любые сетевые ошибки. Прерванный поток может оставить интерфейс в состоянии загрузки. Всегда закрывайте соединение, когда поток завершается или терпит неудачу.
Шаг 5: Управление токенами и расходами
Понимание стоимости токенов необходимо для планирования бюджета. Вы платите за миллион токенов. Входные токены стоят $0.15 за миллион. Выходные токены стоят $0.50 за миллион. Вы платите только за обработанные токены. Ошибки не оплачиваются. Отказы также не оплачиваются.
Эта предоплаченная модель прозрачна. Вы пополняете баланс криптовалютой. Минимальная сумма пополнения — $20. Вы можете добавлять по $500 за раз. Никаких ежемесячных подписок. Ваши кредиты никогда не истекают. Эта предсказуемость помогает планировать расходы на разработку. Вы точно знаете, сколько будет стоить каждый диалог.
Шаг 6: Реализация вызова функций
Сложные персонажи часто взаимодействуют с внешними инструментами. Вызов функций позволяет модели возвращать структурированные данные. Вы определяете схему для функции. Модель решает, когда её вызвать, на основе разговора.
Например, персонажу может потребоваться проверить погоду. Вы отправляете определение функции в запросе. Модель отвечает объектом JSON, содержащим имя функции и аргументы. Ваш код выполняет функцию и отправляет результат обратно модели.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.uncutlyai.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);Этот цикл продолжается до тех пор, пока модель не сгенерирует окончательный текстовый ответ. Это позволяет создавать динамичные, интерактивные истории. Вы не ограничены статическими текстовыми выводами. Модель может запускать события в вашем приложении.
Шаг 7: Обработка ошибок и лимиты
У API есть ограничения. Вы можете отправлять 300 запросов в минуту. Одновременно может быть активно только восемь запросов. Тело запроса должно быть меньше 8 МБ. Если вы превысите эти лимиты, вы получите ошибку 429. Реализуйте экспоненциальное замедление в логике повторных попыток.
Обрабатывайте сетевые ошибки корректно. Если сервер возвращает ошибку 500, подождите и повторите попытку. Никогда не предполагайте, что модель всегда будет успешной. Логируйте эти ошибки, чтобы выявлять закономерности. Частые таймауты могут указывать на необходимость настройки времени ожидания.
Шаг 8: Масштабирование вашей интеграции
По мере роста вашей пользовательской базы будет расти и использование API. Тщательно отслеживайте потребление токенов. Используйте данные об использовании из стриминговых ответов для отслеживания расходов. Если вы заметите высокие расходы, рассмотрите возможность оптимизации ваших промптов. Более короткие системные промпты могут уменьшить количество входных токенов.
Рассмотрим кэширование частых ответов. Если несколько пользователей задают один и тот же вопрос, обслуживайте кэшированный результат. Это снижает количество вызовов API и экономит деньги. Вы также можете реализовать ограничение частоты запросов на своем собственном сервере. Это предотвратит потребление всех ваших кредитов одним пользователем. Хорошо масштабируемая интеграция остается быстрой и надежной.
Частые вопросы
Нецензурированная модель ИИ действительно свободна от отказов?
Модель настроена на ответы без отказов по контенту для законного использования взрослыми. Она не блокирует спорные или творческие темы. Однако есть жёсткое ограничение: сексуальный контент с участием несовершеннолетних всегда блокируется. Это единственный контент, который будет последовательно фильтроваться.
Могу ли я использовать официальный SDK OpenAI с этим API?
Да. API полностью совместим с OpenAI. Вы можете использовать официальные SDK, изменив базовый URL на HTTPS://api.uncutlyai.com/v1 и предоставив API-ключ. Все стандартные параметры, такие как temperature и top_p, работают как и ожидалось.
Как оплатить кредиты API?
Вы можете пополнить счет криптовалией. Мы принимаем USDT (TRC20) и USDC (Base). Вы можете добавить любую целую сумму от $20 до $500. Кредиты не имеют срока действия. Нет ежемесячных комиссий или подписок.
Каков размер контекстного окна?
Модель поддерживает контекстное окно объёмом 100 000 токенов. Это включает как промпт, так и завершение. Вы можете сгенерировать до 16 000 токенов в одном запросе. Если вы не установите max_tokens, вывод по умолчанию составит 2 048 токенов.
Получите API-ключ
Зарегистрируйтесь, скопируйте ключ, обновите базовый URL. Вот столько нужно.