Generatore di richieste cURL compatibili con OpenAI
Genera comandi cURL per endpoint API compatibili con OpenAI. Configura l'URL di base, l'endpoint, il modello, il prompt, la temperatura e altri parametri per le richieste di chat, completamento ed embedding.
Input
Output
Leggimi
Che cos'è un'API compatibile con OpenAI?
Molti provider di LLM e server di inferenza self-hosted — OpenAI stessa, Azure OpenAI, Groq, OpenRouter, Together AI, Mistral, DeepSeek, vLLM, il server di llama.cpp, LM Studio e la modalità compatibile con OpenAI di Ollama — espongono tutti la stessa interfaccia REST resa popolare da OpenAI: richieste JSON verso endpoint come /v1/chat/completions, autenticate con un token Bearer nell'header Authorization. Questo consente di sostituire i provider senza riscrivere il codice di integrazione.
Scrivere manualmente un comando cURL corretto per questi endpoint significa impostare esattamente l'URL, gli header e il corpo JSON corretti, soprattutto quando si regolano parametri di campionamento come temperatura e penalità o si passa da richieste di chat, completions legacy ed embeddings.
Descrizione dello strumento
Questo strumento genera comandi cURL pronti all'uso per qualsiasi API compatibile con OpenAI. Imposta l'URL di base, l'endpoint, il modello e i parametri, e ottieni istantaneamente un comando cURL formattato correttamente, pronto per essere incollato nel terminale o negli script.
Esempi
Completamento della chat:
curl -X POST "https://api.openai.com/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{ "role": "system", "content": "Sei un assistente utile per la programmazione." },
{ "role": "user", "content": "Scrivi una funzione Python per invertire una stringa" }
],
"temperature": 0.3,
"stream": false
}'Server self-hosted (vLLM, llama.cpp, LM Studio, ...):
curl -X POST "http://localhost:8000/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "llama-3-8b-instruct",
"messages": [
{ "role": "user", "content": "Riassumi la trama dell'Amleto in due frasi" }
],
"stream": true
}'Embeddings:
curl -X POST "https://api.openai.com/v1/embeddings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "text-embedding-3-small",
"input": "La volpe marrone veloce salta sopra il cane pigro"
}'Funzionalità
- Supporta i tre endpoint compatibili con OpenAI più comuni:
/chat/completions,/completionsed/embeddings - Funziona con qualsiasi URL di base compatibile, quindi è adatto a OpenAI, Azure, Groq, OpenRouter, Together AI e ai server self-hosted
- Parametri di campionamento configurabili: temperatura, top-p, penalità di frequenza, penalità di presenza, numero massimo di token, numero di completions, sequenze di arresto e seed
- Formato di risposta opzionale come oggetto JSON per i completamenti della chat
- Non viene inviato nulla altrove: il comando cURL viene creato interamente nel browser e nessuna chiave API lascia mai il dispositivo
Spiegazione delle opzioni
| Opzione | Descrizione | Predefinito | Intervallo |
|---|---|---|---|
| URL di base | La radice dell'API, senza il percorso dell'endpoint. | https://api.openai.com/v1 |
Qualsiasi URL |
| Endpoint | L'endpoint API di destinazione. | /chat/completions |
chat, completions, embeddings |
| Temperatura | Controlla la casualità dell'output. Valori più bassi producono testi più focalizzati, mentre valori più alti aumentano la creatività. | 1 | 0-2 |
| Top P | Soglia del campionamento nucleus. Il modello considera i token la cui probabilità cumulativa raggiunge questo valore. | 1 | 0-1 |
| Penalità di frequenza | Penalizza i token in base alla frequenza con cui sono già comparsi, riducendo le ripetizioni letterali. | 0 | -2-2 |
| Penalità di presenza | Penalizza i token già comparsi, incoraggiando il modello a introdurre nuovi argomenti. | 0 | -2-2 |
| Token massimi | Numero massimo di token da generare nella risposta. Lascia vuoto per ometterlo e usare il valore predefinito del provider. | - | Qualsiasi numero intero |
| Completions (n) | Numero di opzioni di chat/completion da generare per l'input. | 1 | Qualsiasi numero intero |
| Seed | Seed fisso per ottenere, nei limiti del possibile, un output riproducibile. Lascia vuoto per risultati casuali. | - | Qualsiasi numero intero |
| Sequenze di arresto | Elenco separato da virgole delle sequenze in corrispondenza delle quali l'API interrompe la generazione di altri token. | - | Qualsiasi testo |
| Formato della risposta | Imposta su oggetto JSON per obbligare il modello a restituire un output JSON valido (solo per l'endpoint chat). | Nessuno | Nessuno / oggetto JSON |
| Stream | Quando è abilitato, la risposta viene trasmessa come eventi inviati dal server. Disabilitalo per ricevere l'intera risposta in una volta sola. | Disattivato | Attivato / Disattivato |