weightsapi.ВИСНОВОККонсоль
Навігація
Маршрутизація за складністю завдання

Маршрутизація за складністю завдання

Явна евристика спрямовує короткі завдання та складний аналіз.

Вимоги#

Python 3.11 або новіше. Без додаткових пакетів. Встановіть WEIGHTSAPI_API_KEY на ваш власний ключ. Доступ до ШІ вимагає входу, одного підтвердженого поповнення на суму не менше 100 доларів США, авторизованого ключа API та достатнього доступного кредиту для запиту. Кожне наступне поповнення також має мінімум 100 доларів США; менші залишки залишаються придатними, якщо вони покривають запит. Кредит вимагає перевірки транзакції. Перевірте статус сервісу щодо доступності моделей перед надсиланням трафіку.

Запуск рецепта#

import os, json, urllib.request
BASE = os.environ.get("WEIGHTSAPI_BASE_URL", "https://weightsapi.com/v1")
KEY = os.environ["WEIGHTSAPI_API_KEY"]
def chat(messages, model="Qwen/Qwen3-32B", **options):
    payload = dict(model=model, messages=messages, max_tokens=512, **options)
    req = urllib.request.Request(BASE+"/chat/completions", json.dumps(payload).encode(),
        {"Authorization": "Bearer "+KEY, "Content-Type": "application/json"})
    with urllib.request.urlopen(req, timeout=120) as response:
        return json.load(response)
question = input("Question: ")
complex_task = len(question) > 300 or any(w in question.lower() for w in ("prove", "derive", "analyze", "debug"))
model = "deepseek-ai/DeepSeek-R1-0528" if complex_task else "meta-llama/Llama-3.1-8B-Instruct"
response = chat([{"role":"user","content":question}], model=model)
print("Selected:", model)
print(response["choices"][0]["message"]["content"])
print("Usage:", response.get("usage"))

Перед використанням у виробництві#

Це правило маршрутизації є прозорою евристикою, а не валідованим класифікатором складності. Оцініть його на своєму навантаженні, перш ніж покладатися на економію коштів.