Vai al contenuto

Guida rapida alla Chat API ​

Chat compatibile con OpenAI

Utilizza una chiave API per chat e parlato. Le richieste ritornano in modo sincrono; il catalogo in tempo reale elenca i nomi, gli ID e i prezzi dei modelli attuali.

1. Crea una chiave e aggiungi crediti ​

Registrati o accedi alla console. Apri Chiavi API → Crea chiave API, salva la chiave mostrata una volta, quindi apri Portafoglio → Aggiungi crediti. L'abbonamento è facoltativo. Le chiamate API richiedono un saldo del credito finanziato; la creazione di una chiave non aggiunge crediti.

Conserva la chiave sul tuo server. Vedi Autenticazione e limiti.

Test dei pagamenti in locale

I pagamenti di prova Stripe aggiungono solo crediti sandbox. Non finanziano chiamate di modelli reali. Per i test di integrazione locale, un amministratore può ricaricare il saldo API di un utente di prova nella console di amministrazione. I pagamenti in tempo reale finanziano il saldo API dopo la conferma del pagamento.

2. Esegui un esempio di chat e discorso ​

Salva il codice qui sotto come chat.py. Utilizza la libreria standard di Python 3, senza pacchetti da installare. Imposta GIRLLAB_API_KEY nel tuo ambiente, quindi esegui python chat.py.

bash
export GIRLLAB_API_KEY='sk-your-key'
python3 chat.py
powershell
$env:GIRLLAB_API_KEY = 'sk-your-key'
python chat.py
python
import base64
import json
import os
from pathlib import Path
from urllib.error import HTTPError
from urllib.request import Request, urlopen

BASE = os.environ.get("GIRLLAB_API_BASE", "https://api.coldstart.win").rstrip("/")
KEY = os.environ["GIRLLAB_API_KEY"]
MODEL = os.environ.get("GIRLLAB_CHAT_MODEL")
VOICE = os.environ.get("GIRLLAB_VOICE")

def api(path, body=None):
    request = Request(
        BASE + path,
        data=json.dumps(body).encode() if body is not None else None,
        headers={"Authorization": "Bearer " + KEY,
                 "Content-Type": "application/json"},
    )
    try:
        with urlopen(request, timeout=90) as response:
            return json.load(response)
    except HTTPError as error:
        raise SystemExit(f"HTTP {error.code}: {error.read().decode()}")

catalog = api("/v1/chat/catalog")
MODEL = MODEL or catalog["defaultModel"]
VOICE = VOICE or catalog["defaultVoice"]
model = next((m for m in catalog["models"] if m["id"] == MODEL), None)
voice = next((v for v in catalog["voices"] if v["id"] == VOICE), None)
if not model or not model["available"] or not voice or not voice["available"]:
    raise SystemExit("Choose an available model and voice from /v1/chat/catalog.")

reply = api("/v1/chat/completions", {
    "model": MODEL,
    "messages": [
        {"role": "system", "content": "You are a friendly assistant."},
        {"role": "user", "content": "Say hello in one short sentence."},
    ],
    "max_tokens": 64,
})
print(json.dumps(reply, ensure_ascii=False, indent=2))
# For another turn, append the assistant reply and the next user message to messages.
print(reply["choices"][0]["message"]["content"])

speech = api("/v1/chat/speech", {"text": "Hello.", "voice": VOICE})
header, encoded = speech["audio"].split(",", 1)
file = Path("speech.mp3")
file.write_bytes(base64.b64decode(encoded))
print("Saved", file, "— speech billing:", json.dumps(speech["billing"]))

L'esempio effettua una chiamata di chat di testo a pagamento e una chiamata vocale a pagamento. Stampa la risposta alla chat, l'utilizzo del token e i crediti vocali e salva un file MP3. Controlla la cronologia di utilizzo per i crediti chat effettivi. L'URL di base dell'API è https://api.coldstart.win; imposta GIRLLAB_API_BASE solo per un'altra distribuzione.

3. Prova un altro modello ​

Cambia GIRLLAB_CHAT_MODEL in chat-creative o chat-fast. Modifica GIRLLAB_VOICE in modo indipendente:

La tabella seguente mostra i nomi dei modelli pubblici correnti, gli ID modello e gli ID vocali.

Catalogo dei modelli in tempo reale · prezzi di credito

Caricamento catalogo modelli...

GET /v1/chat/catalog elenca i modelli disponibili, tutti gli ID vocali e i prezzi correnti. Utilizza gli ID modello dal catalogo live, anziché gli ID upstream del fornitore. TTS seleziona il proprio modello tramite voice; non accetta un parametro di chat model.

Chat di testo: Chat compatibile con OpenAI. ID vocali e vocali: Voce e catalogo.

Puoi anche provare la Chat nella console. Il riferimento API interattiva elenca i campi di richiesta.

© 2026 GirlLab. Tutti i diritti riservati.