Базовый URL и аутентификация
Используйте предоставленный базовый URL и действительный API-ключ для подключения клиента. Конечная точка — https://api.qwencodeapikey.com/v1. Вы должны включить свой ключ в Authorization header каждого запроса. Это гарантирует, что сервис правильно идентифицирует ваш аккаунт предоплаченного кредита.
curl https://api.qwencodeapikey.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Check my api key validity status"}]
}'
Вы можете сгенерировать ключ через Google или электронную почту на странице регистрации. Ключ появляется сразу. Храните его в безопасности, так как он контролирует ваши расходы.
Эндпоинт Chat Completions
Отправляйте сообщения в /v1/chat/completions эндпоинт для получения текстовых ответов. Это стандартный интерфейс для большинства SDK OpenAI. Вы определяете model как uncensored и предоставьте список сообщений в messages массив. API обрабатывает ваш ввод и возвращает сгенерированное завершение.
from openai import OpenAI
client = OpenAI(base_url="https://api.qwencodeapikey.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)
Убедитесь, что библиотека вашего клиента указывает на правильный базовый URL. Идентификатор модели uncensored запускает модель с открытыми весами, настроенную на меньшее количество отказов. Она обрабатывает реплики в разговоре так же, как и любой другой чат API.
Эндпоинт Модели
Запрос GET /v1/models проверить доступные модели и их детали. Эта конечная точка возвращает список моделей, доступных для вашего ключа. Это помогает подтвердить uncensored модель активна и готова к запросам. Используйте это для отладки конфигураций клиента перед отправкой полных полезной нагрузки.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.qwencodeapikey.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);
Проверьте структуру ответа, чтобы убедиться, что ваш SDK корректно парсит список моделей. Этот эндпоинт не расходует кредиты, что делает его безопасным для проверок при инициализации.
Параметры запроса и потоковая передача
Поддержка стандартных параметров, таких как temperature, top_p, stop, и seed. Включите потоковую передачу, установив 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)
Установить max_tokens для контроля длины вывода. Значение по умолчанию составляет 2 048 токенов. Вы можете увеличить это значение до 16 000 токенов в одном запросе. Настройте параметры, чтобы сбалансировать креативность и точность в ваших ответах.
Лимиты запросов и ограничения
Каждый ключ позволяет выполнять 300 запросов в минуту и 8 одновременных запросов. Максимальный размер тела запроса составляет 8 МБ. Эти ограничения предотвращают злоупотребления и обеспечивают стабильную производительность. При превышении лимита вы получаете ошибку 429. Настройте логику клиента для обработки повторных попыток с экспоненциальной задержкой.
Окно контекста поддерживает до 100 000 токенов суммарно. Это включает токены промпта и завершения. Большие контексты требуют тщательного управления токенами, чтобы оставаться в пределах лимитов.
Режим JSON и вызов функций
Использовать response_format: {"type": "json_object"} для структурированного вывода. Это гарантирует, что модель вернет корректный JSON, полезный для программной интеграции. Вызов функций работает через tools параметр. Определите инструменты в стандартном формате OpenAI. Модель будет вызывать функции по мере необходимости.
Ошибки и отказы не потребляют кредит. Это применяется даже в случае отказа модели от запроса из-за жесткого ограничения контента. Вы платите только за фактическое использование токенов. Кредит никогда не истекает, поэтому вы можете пополнять его в удобное время.
Обработка ошибок и использование
Обрабатывайте ошибки HTTP корректно. Ошибка 401 указывает на недействительный или истекший ключ API. Ошибка 402 означает, что предоплаченный кредит исчерпан. Ошибка 429 сигнализирует о превышении лимита. Проверьте тело ответа на наличие подробных сообщений об ошибках.
Использование отслеживается по ключу. Один активный ключ на аккаунт упрощает биллинг. Если вы допустите ошибку, например, двойной заряд, используйте страницу поддержки. Кредит не возвращается, но остается действительным. Ошибки бесплатны, поэтому неудачные запросы не истощают ваш баланс.
Сводка и лучшие практики
Начните с базового URL и действительного ключа. Используйте uncensored идентификатор модели для меньшего количества отказов. Потоковая передача ответов для улучшения пользовательского опыта. Мониторинг лимитов частоты запросов для предотвращения прерываний. Использование режима JSON для структурированных данных. Обработка ошибок для поддержания надежности. Кредиты предоплачены и не истекают. Пополняйте криптой при необходимости. Этот API бесшовно вписывается в существующие кодовые базы OpenAI. Новые SDK не требуются. Просто измените базовый URL и ключ.