Collega AnythingLLM a CheapTokens: configurazione Generic OpenAI
Punta il provider Generic OpenAI di AnythingLLM su CheapTokens: Base URL, chiave, id completo del modello, più la finestra di contesto e Max Tokens da inserire.

In questa pagina
Puoi collegare AnythingLLM a CheapTokens con il suo provider Generic OpenAI: imposta la Base URL su https:/, incolla la tua API key, inserisci l'id completo del modello e poi digita la finestra di contesto reale del modello e Max Tokens. Gli ultimi due sono quelli che la gente salta, e decidono se un documento lungo ci sta e se le risposte vengono troncate.
La documentazione di AnythingLLM (pagina Generic OpenAI, consultata il 7 novembre 2026, con un banner v1.19.0) descrive questo provider come il modo per usare qualsiasi provider LLM compatibile con OpenAI. Avverte anche che è pensato per sviluppatori: impostazioni sbagliate possono farlo comportare in modo strano, e l'id del modello deve essere esattamente quello servito dall'endpoint. Quindi andiamo per precisione.
Compila le impostazioni del provider#
Apri le impostazioni LLM di AnythingLLM e scegli Generic OpenAI come provider. Poi compila i cinque campi. Le etichette possono variare un po' tra le versioni, quindi orientati sul significato.
Passo dopo passo
Cinque campi, in ordine
Base URL
Inserisci la radice dell'API, non l'endpoint completo: https:/. L'esempio della documentazione è una radice che termina con /v1, e AnythingLLM aggiunge / da solo. Se incolli il percorso completo, le richieste vanno all'indirizzo sbagliato.
API key
Incolla la tua chiave CheapTokens. Se non ne hai ancora una, creala prima nella dashboard. Trattala come una password: non metterla in uno screenshot o in una nota condivisa del workspace.
Chat model name
Usa l'id completo, per esempio deepseek- o zai-. I nomi brevi che vedi nelle tabelle dei prezzi non sono accettati dall'API. Non sei sicuro di quale id hai? Elenca i modelli con GET /v1/models.
Model context window
Il budget che AnythingLLM usa quando costruisce un prompt dalla tua domanda, dai chunk di documento recuperati e dalla cronologia della chat. Inserisci la finestra reale del modello: 380000 per DeepSeek-V4-Flash, 390000 per GLM-5.3-Flash.
Max Tokens
Il limite massimo alla lunghezza di una risposta. Il valore predefinito di AnythingLLM è 1024. Inserisci 32768 per DeepSeek-V4-Flash o 8192 per GLM-5.3-Flash.

Salva, apri un workspace e fai una domanda. Gli embeddings (la parte che trasforma i tuoi documenti in chunk ricercabili) sono un'impostazione separata in AnythingLLM, quindi il provider qui sopra cambia solo quale modello scrive le risposte.
Perché i due limiti contano#
Immagina di caricare un contratto di 60 pagine in un workspace e chiedere un riassunto delle clausole di risoluzione. Con i valori predefiniti, due cose vanno storte. La finestra di contesto che hai digitato può essere molto più piccola di quella reale del modello, quindi AnythingLLM taglia ciò che invia. E Max Tokens è a 1024, quindi un riassunto lungo si ferma a metà frase.
La soluzione è dire la verità ad AnythingLLM sul modello:
Scorri la tabella verso destra →
| Modello (id) | Finestra di contesto | Output per risposta |
|---|---|---|
DeepSeek-V4-Flash (deepseek-) |
380K | fino a 32.768 token |
GLM-5.3-Flash (zai-) |
390K | fino a 8.192 token |
Un'abitudine che vale la pena mantenere: Max Tokens è un tetto, non un obiettivo. Una domanda breve riceve comunque una risposta breve; paghi solo i token che il modello scrive davvero. Se vuoi capire cosa succede quando si raggiunge un limite, perché una risposta AI si ferma a metà frase illustra finish_reason e max_tokens, e cos'è una finestra di contesto copre il lato input.
La documentazione di AnythingLLM dice anche che impostare Max Tokens a 0 esclude il limite di output dalla richiesta. Un numero esplicito è più facile da ragionare, quindi ne digiterei uno.
Verifica la connessione fuori da AnythingLLM#
Se la finestra della chat mostra un errore, è utile sapere se il problema è la chiave e l'id del modello o qualcosa dentro AnythingLLM. Invia una richiesta direttamente all'API:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "deepseek-ai/DeepSeek-V4-Flash-0731", "messages": [{"role": "user", "content": "Say hi in five words."}], "max_tokens": 50}'L'API è compatibile con OpenAI Chat Completions, quindi una risposta funzionante ha il testo in choices[0]., un finish_reason e un blocco usage con i conteggi dei token per quella richiesta. Se ottieni questi, la chiave, la Base URL e l'id del modello vanno bene, e qualunque cosa tu veda in AnythingLLM deriva dalle impostazioni qui sopra. Maggiori dettagli sull'endpoint sono nella documentazione di CheapTokens.
Quanto costa una domanda ai tuoi documenti#
La chat sui documenti è pesante sull'input: ogni domanda porta con sé i chunk recuperati. Diciamo che recuperi sei chunk di circa 600 token ciascuno, aggiungi la domanda e un po' di cronologia, e arrivi vicino a 4.000 token di input, con una risposta di 400 token. Su DeepSeek-V4-Flash, una domanda così costa $0.0001. Ecco lo stesso carico di lavoro tra i modelli per 200 domande, con la colonna OpenRouter accanto:
| Modello | Input $/1M | Output $/1M | Per richiesta | 200 richieste | OpenRouter, 200 richieste |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.000096 | $0.0192 | $0.0334 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.0001 | $0.02 | $0.0672 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.00026 | $0.052 | $0.624 |
4000 token di input e 400 token di output per richiesta. I prezzi per 1M di token sono attuali e cambiano insieme alle nostre tariffe; la colonna OpenRouter mostra i prezzi di riferimento per lo stesso carico di lavoro.
In totale, contando input e output insieme, DeepSeek-V4-Flash risulta più economico di OpenRouter su questo carico di lavoro. Per i tuoi numeri, trascina gli slider: bastano i token per domanda e le domande al giorno.
Calcolatore di costi
Un giorno di domande ai tuoi documenti
Token di input per richiesta: 4000 · Token di output per richiesta: 400 · Richieste al giorno: 50
| Modello | Al giorno | Al mese |
|---|---|---|
| GLM-5.3-Flash$0.02$0.04 | $0.0048 | $0.144 |
| DeepSeek-V4-Flash$0.015$0.10 | $0.005 | $0.15 |
| MiniMax-M2.7$0.05$0.15 | $0.013 | $0.39 |
Il numero di chunk che invii è la leva più grande. Quanto costa una domanda RAG mostra come si muove il conto, e le tariffe attuali sono sulla pagina dei prezzi.
Se non funziona#
La maggior parte dei fallimenti è una di quattro cose. Abbina il sintomo alla causa:
Abbina le coppie
Abbina ogni sintomo alla sua causa
Tocca un elemento a sinistra, poi il suo abbinamento
- Il provider rifiuta la richiesta e si lamenta di max_tokensImposta GENERIC_OPEN_AI_MODEL_MAX_TOKEN_KEY su max_completion_tokens e riavvia AnythingLLM
- 401 UnauthorizedLa API key manca, è digitata male o è stata incollata con uno spazio
- 404 o "model not found"L'id del modello è il nome breve, non l'id completo dalla lista dei modelli
- Le risposte si fermano a metà fraseMax Tokens è ancora il valore predefinito 1024
L'opzione GENERIC_ viene dalla documentazione di AnythingLLM: cambia quale nome di campo porta il limite nella richiesta. Per i dettagli su 401 e 404, vedi API 401 o 404: chiave, base URL o id del modello sbagliati.
Usi un altro client di chat? I passaggi sono simili a Open WebUI, LibreChat e Cherry Studio: una base URL compatibile con OpenAI, una chiave, un id completo del modello.



