Qwen API: Поширені помилки та як їх уникнути
Розробники часто ламають свої чат-додатки, неправильно оцінюючи, як аблітеровані моделі обробляють контекст та обмеження виводу. Цей посібник роз’яснює конкретні технічні обмеження безцензурних LLM, щоб ваша інтеграція коректно обробляла відмови та використання токенів.
Останнє оновлення
Підсумок
- Аблітеровані моделі не відмовляють на основі типу контенту, але все одно дотримуються суворих обмежень на кількість токенів.
- Потокові відповіді вимагають спеціального парсингу для отримання даних про використання останнього токена.
- Поведінка виклику функцій відрізняється, коли модель налаштована на вивільнене виведення.
- Вартість токенів залежить від довжини контексту, тому моніторинг вхідних токенів є життєво необхідним.
1. Неправильне розуміння вікна контексту
Вікно контексту визначає загальний простір, доступний як для вашого вхідного промпту, так і для відповіді моделі. Багато розробників припускають, що ліміт стосується лише вхідних даних, але вікно включає обидва елементи. Наприклад, ліміт у 100,000 токенів означає, що ви повинні відняти очікуваний розмір виводу з доступного простору вводу. Якщо ви надішлете промпт на 90,000 токенів і запросите відповідь на 20,000 токенів, запит буде відхилено або обрізано.
Цей обмеження є критичним при обробці великих документів або довгих історій розмов. Ви повинні динамічно розраховувати залишок місця. Наш API накладає спільний ліміт у 100,000 токенів для запиту та завершення. Завжди залишайте принаймні 2,048 токенів для стандартного виводу, щоб уникнути помилок межі.
2. Ігнорування лімітів токенів у виводі
Кожен запит API має максимальну довжину виходу. Якщо ви не вкажете ліміт, модель за замовчуванням встановлює 2 048 токенів. Надсилання дуже довгого промпту без встановлення max_tokens може призвести до неочікуваного обрізання. Модель припиняє генерацію, коли досягає ліміту, залишаючи вашу відповідь неповною.
Ця поведінка є послідовною для більшості LLM, включаючи варіанти без цензури. Вам потрібно явно встановити max_tokens параметр для керування довжиною виводу. Наприклад, якщо вам потрісення обсягом 10,000 токенів, ви повинні встановити max_tokens=10000. Якщо цього не зробити, токени марнуються на короткі виводи, і знадобиться другий запит для продовження.
- Встановити
max_tokensявно для довгих відповідей. - Вивід за замовчуванням становить 2 048 токенів, якщо не визначено.
- Токени виводу враховуються у загальному контекстному вікні.
3. Плутанина між Abliterated та стандартним Qwen
Аблітеровані моделі модифіковані для усунення тригерів відмови, але вони залишаються базовими архітектурами Qwen. Вони не отримують нових можливостей чи знань. Головна різниця полягає в поведінці: аблітеровані моделі відповідають на суперечливі або дорослі теми без вагань. Стандартні моделі Qwen можуть відмовляти або давати загальні відповіді на такі теми.
Ця відмінність має значення для рольових ігор та творчого письма. Якщо вам потрібна модель, яка залучається до будь-якої теми, використовуйте варіант, що пройшов аблітерацію. Однак базові міркування та логіка залишаються незмінними. Ви не можете очікувати, що модель, що пройшла аблітерацію, буде розумнішою або швидшою. Вона просто не каже "ні". Перевірте картку моделі для отримання деталей конкретної версії.
4. Припущення, що стандартні параметри OpenAI працюють ідентично
OpenAI-сумісні API приймають стандартні параметри, такі як temperature та top_p. Однак вплив цих параметрів може відрізнятися між моделями. Температура 0.7 в одній моделі може давати інший рівень креативності в іншій. Необмежені моделі часто краще реагують на вищі температури для рольових ігор.
Експериментуйте з параметрами, щоб знайти правильний баланс. Використовуйте temperature для творчості та top_p для різноманітності. Наша API підтримує стандартні параметри. Налаштуйте їх відповідно до вашого випадку використання. Наприклад, використовуйте temperature=0.2 для фактичних відповідей та temperature=0.9 для творчого письма.
5. Ігнорування парсингу потокових відповідей
Потокові відповіді доставляють токени по мірі їх генерації. Це покращує користувацький досвід, але вимагає ретельного парсингу. Ви повинні обробити останній фрагмент, щоб отримати дані про використання токенів. Якщо ви обробляєте лише токени вмісту, ви втрачаєте метрики витрат.
Наш API надсилає дані про використання в останньому чанку потоку. Вам потрібно розпарсити цей чанк, щоб відстежувати споживання токенів. Ігноруйте дані про використання в проміжних чанках. Цей підхід забезпечує точну тарифікацію та моніторинг. Потокова передача є важливою для додатків реального часу.
6. Неправильне тлумачення поведінки 'Відмова'
Моделі з аблітерацією рідко відмовляють, але вони не імунні до обмежень. Вони можуть відмовити, якщо вхідні дані перевищують ліміт токенів або містять недійсний JSON. Вони також відмовляють у контенті сексуального характеру з участю неповнолітніх, оскільки це жорстке обмеження. Ця відмова базується на політиці контенту, а не на можливостях моделі.
Розуміння різниці між відмовою та помилкою. Відмова означає, що модель вирішила не відповідати. Помилка означає, що запит був некоректним. Перевірте код стану відповіді, щоб розрізнити їх. Наш API встановлює жорстке обмеження на сексуальний вміст із залученням неповнолітніх. Всі інші теми дозволені.
7. Неоптимізація для виклику функцій
Виклик функцій дозволяє моделі повертати структуровані дані. Це корисно для інтеграції API та видобутку даних. Однак, abliterated моделі можуть віддавати перевагу природній мові над суворим JSON. Це може призвести до некоректних відповідей JSON.
Для оптимізації виклику функцій використовуйте response_format={"type": "json_object"}. Це змушує модель виводити дійсний JSON. Ви також можете використовувати tool_choice для вказівки, яку функцію викликати. Ретельно протестуйте свої функції, щоб забезпечити надійність. Наш API підтримує повний функціонал виклику функцій.
8. Припущення про необмежені одночасні запити
API мають ліміти швидкості для забезпечення стабільності. Наш API дозволяє 300 запитів на хвилину на ключ. Він також дозволяє 8 одночасних запитів. Перевищення цих лімітів призводить до помилки 429. Ви повинні реалізувати логіку повторних спроб із експоненційним сповільненням.
Стежте за використанням, щоб уникнути досягнення лімітів. Використовуйте кілька API-ключів, якщо вам потрібна більша конкурентність. Кожен ключ має свої ліміти. Цей підхід ефективно масштабує ваш застосунок. Плануйте обсяг запитів з урахуванням цих обмежень.
9. Забули точно перевірити вартість токенів
Ціноутворення на токени базується на вхідних та вихідних токенах. Вхідні токени коштують $0.15 за 1M токенів. Вихідні токени коштують $0.50 за 1M токенів. Вихідні токони дорожчі. Довгі відповіді значно збільшують витрати.
Відстежуйте використання токенів, щоб керувати вашим бюджетом. Використовуйте дані про використання з останнього фрагмента потокового відображення. Передоплачений кредит нараховується на основі фактичного використання. Помилки безкоштовні. Ця модель ціноутворення є прозорою та справедливою. Регулярно моніторьте своє використання, щоб уникнути несподіваних платежів.
Поширені запитання
Яка різниця між моделями Qwen abliterated та стандартними?
Аблітеровані моделі модифіковані для усунення тригерів відмови, що дозволяє їм відповідати на будь-яку тему, включаючи дорослий контент, без вагань. Стандартні моделі можуть відмовляти на основі політики контенту. Базова архітектура та можливості залишаються незмінними.
Як обробляти потокові відповіді в інтеграції мого API?
Потокові відповіді доставляють токени по мірі їх генерації. Ви повинні парсувати останній фрагмент, щоб отримати дані про використання токенів. Проміжні фрагменти містять лише токени вмісту. Використовуйте ці дані для точного відстеження споживання токенів.
Які обмеження токенів для вхідних та вихідних даних?
Загальне контекстне вікно становить 100,000 токенів для запиту та завершення разом. Максимальний вивід на запит становить 16,000 токенів. Стандартний вивід становить 2,048 токенів, якщо не вказано інше. Вихідні токени враховуються в загальному ліміті.
Чи відхиляє модель abliterated будь-який контент?
Так, він накладає суворий ліміт на сексуальний контент із залученням неповнолітніх. Усі інші теми, включаючи дорослий контент, дозволені. Відмови також можуть виникати через ліміти токенів або неправильний формат вхідних даних.
Отримайте свій API-ключ зараз
Зареєструйтеся, скопіюйте ключ, оновіть свій базовий URL. Ось і все.