Risposta rapida
Come uso LLMwithCrypto in LangChain?
Installa langchain-openai e crea ChatOpenAI(model="deepseek-v4-pro", base_url="https://llmwithcrypto.com/api/v1", api_key=…). LLMwithCrypto parla il formato chat OpenAI, quindi invoke, lo streaming e bind_tools funzionano come con OpenAI, sui modelli che supportano i tool. LlamaIndex usa OpenAILike con lo stesso base URL. Documentato il 23 ottobre 2026.
Quale classe usare
| LangChain (Python) | ChatOpenAI da langchain-openai, con base_url |
|---|---|
| LangChain.js | ChatOpenAI da @langchain/openai, con configuration.baseURL |
| LlamaIndex | OpenAILike da llama-index-llms-openai-like, con api_base e is_chat_model=True |
| Id dei modelli | Sulla pagina dei modelli |
Come configuro ChatOpenAI?
Passa il base URL e la chiave quando crei il modello. Impostare max_tokens impedisce che ogni passo di una chain o di un agent scriva più di quanto vuoi pagare; il usage_metadata della risposta mostra i token di ogni chiamata.
import os
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="deepseek-v4-pro",
base_url="https://llmwithcrypto.com/api/v1",
api_key=os.environ["LLMWITHCRYPTO_API_KEY"],
max_tokens=300,
temperature=0.3,
)
reply = llm.invoke("Explain what a vector database is in two sentences.")
print(reply.content)
print(reply.usage_metadata)
Tool e agent funzionano?
Sì, sui modelli che supportano il tool calling. Lo streaming funziona su ogni modello; il tool calling e l'output JSON seguono ciò che supporta il singolo modello. bind_tools invia i tuoi tool nel formato OpenAI; testa il tuo schema sul modello che scegli prima di affidarti a lui. Gli agent LangGraph costruiti su ChatOpenAI funzionano allo stesso modo.
import os
from langchain_core.tools import tool
from langchain_openai import ChatOpenAI
@tool
def convert_currency(amount: float, rate: float) -> float:
"""Convert an amount with an exchange rate."""
return round(amount * rate, 2)
llm = ChatOpenAI(
model="gpt-oss-120b",
base_url="https://llmwithcrypto.com/api/v1",
api_key=os.environ["LLMWITHCRYPTO_API_KEY"],
)
llm_with_tools = llm.bind_tools([convert_currency])
msg = llm_with_tools.invoke("How much is 250 at a rate of 0.92?")
for call in msg.tool_calls:
print(call["name"], call["args"], "->", convert_currency.invoke(call["args"]))
E da JavaScript?
LangChain.js prende il base URL dentro configuration, che passa al client OpenAI sottostante.
import { ChatOpenAI } from '@langchain/openai';
const llm = new ChatOpenAI({
model: 'qwen3-235b-a22b-instruct-2507',
apiKey: process.env.LLMWITHCRYPTO_API_KEY,
configuration: { baseURL: 'https://llmwithcrypto.com/api/v1' },
maxTokens: 300,
});
const reply = await llm.invoke('Give me a three-step plan to learn SQL.');
console.log(reply.content);
Come lo uso in LlamaIndex?
Usa OpenAILike, che non confronta i nomi dei modelli con la lista di OpenAI. Imposta is_chat_model=True così invia messaggi chat, e fornisci la context window del modello così LlamaIndex può dimensionare i suoi prompt: DeepSeek V4.1 Flash legge fino a 1M token al 23 ottobre 2026, l'esempio imposta di proposito una finestra più piccola per tenere i prompt brevi.
import os
from llama_index.llms.openai_like import OpenAILike
llm = OpenAILike(
model="deepseek-v4.1-flash",
api_base="https://llmwithcrypto.com/api/v1",
api_key=os.environ["LLMWITHCRYPTO_API_KEY"],
is_chat_model=True,
context_window=131072,
max_tokens=300,
)
print(llm.complete("Name three uses of a knowledge graph."))
Come tengo sotto controllo i costi degli agent?
Un agent chiama il modello molte volte per attività: una per pianificare, una per ogni risultato di un tool, una per rispondere. Ogni chiamata rinvia tutta la conversazione, quindi l'input cresce a ogni passo.
- Limita ogni chiamata con
max_tokens, e l'intera esecuzione con un numero massimo di passi. - Usa un modello piccolo dove basta. Al 23 ottobre 2026, gpt-oss-20b costa $0.033 per milione di token di input contro $1.254 di DeepSeek V4 Pro: manda i passi semplici al piccolo e tieni il grande per la risposta finale.
- Riduci la cronologia nelle conversazioni lunghe, o riassumi i turni vecchi.
- Tieni d'occhio i crediti con
GET https://llmwithcrypto.com/api/v1/creditsprima delle esecuzioni grandi.
La dashboard elenca ogni chiamata con i suoi token e il suo costo, il che mostra subito quale passo di una chain è quello costoso.
Framework: domande frequenti
Posso mescolare modelli in una chain?
Sì: crea un ChatOpenAI per modello, per esempio uno economico per il routing e uno grande per la risposta finale. Tutti spendono gli stessi crediti.
Gli embedding funzionano?
No. L'API serve solo chat completion; usa il tuo modello di embedding esistente insieme a essa.
Quanto pago per l'esecuzione di un agent?
Ogni chiamata al modello dell'esecuzione, per token. Paghi per token dal tuo saldo: i token di input e di output vengono contati dal tokenizer del modello stesso e addebitati al prezzo di quel modello per 1M di token. Una chiamata che termina con un errore non costa nulla. I prezzi per modello sono sulla pagina dei prezzi.