weightsapi.INFERÊNCIAConsole
Navegação
Um chatbot em vinte linhas

Um chatbot em vinte linhas

Uma conversa no terminal usando apenas a biblioteca padrão do Python.

Requisitos#

Python 3.11 ou mais recente. Sem pacotes adicionais. Defina WEIGHTSAPI_API_KEY com sua própria chave. O acesso à IA requer login, uma recarga confirmada de pelo menos USD 100, uma chave de API autorizada e crédito suficiente disponível para a solicitação. Cada recarga posterior também tem um mínimo de USD 100; saldos restantes menores permanecem utilizáveis quando cobrem a solicitação. O crédito requer verificação da transação. Verifique o status do serviço para disponibilidade de modelos antes de enviar tráfego.

Execute a receita#

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)
messages = [{"role": "system", "content": "Be concise and useful."}]
while True:
    text = input("You: ").strip()
    if text in ("exit", "quit"): break
    messages.append({"role": "user", "content": text})
    result = chat(messages)
    answer = result["choices"][0]["message"]
    messages.append(answer)
    print("Assistant:", answer["content"])

Antes da produção#

Limite a concorrência e as novas tentativas, valide as saídas e trate os erros antes de expor o fluxo de trabalho aos usuários.