Autenticazione
L’API Venice utilizza API key per l’autenticazione. Crea e gestisci le tue API key nelle tue impostazioni API. Tutte le richieste API richiedono l’autenticazione HTTP Bearer:La tua API key è un segreto. Non condividerla né esporla in alcun codice lato client.
Compatibilità con OpenAI
L’API di Venice implementa la specifica dell’API OpenAI, garantendo la compatibilità con client e strumenti OpenAI esistenti. Questo ti permette di integrarti con Venice usando la familiare interfaccia OpenAI accedendo al contempo alle funzionalità uniche e ai modelli senza restrizioni di Venice.Setup
Configura il tuo client per usare il base URL di Venice (https://api.venice.ai/api/v1) e fai la tua prima richiesta:
Funzionalità specifiche di Venice
System prompt
Venice fornisce system prompt predefiniti progettati per garantire risposte naturali e senza restrizioni del modello. Hai due opzioni per gestire i system prompt:- Comportamento predefinito: i tuoi system prompt vengono aggiunti a quelli di default di Venice
- Comportamento personalizzato: disabilita completamente i system prompt di Venice
Disabilitare i system prompt di Venice
Usa l’opzionevenice_parameters per rimuovere i system prompt predefiniti di Venice:
Venice Parameters
L’oggettovenice_parameters ti permette di accedere a funzionalità specifiche di Venice non disponibili nell’API OpenAI standard:
| Parametro | Tipo | Descrizione | Default |
|---|---|---|---|
character_slug | string | Lo slug del personaggio di un Venice character pubblico (visibile come “Public ID” nella pagina del personaggio pubblicato) | - |
strip_thinking_response | boolean | Rimuove i blocchi <think></think> dalla risposta (per modelli che usano il formato legacy con tag <think>). Consulta Modelli di ragionamento. | false |
disable_thinking | boolean | Sui modelli di ragionamento supportati, disabilita il thinking e rimuove i blocchi <think></think> dalla risposta | false |
enable_web_search | string | Abilita la web search per questa richiesta (off, on, auto - auto la abilita a discrezione del modello)Si applicano prezzi aggiuntivi in base all’utilizzo, consulta pricing. | off |
enable_web_scraping | boolean | Abilita lo scraping web di fino a 5 URL rilevati nel messaggio dell’utente. Il contenuto scrapato arricchisce le risposte e bypassa la web search. Solo gli URL effettivamente scrapati vengono fatturati. Si applicano prezzi aggiuntivi in base all’utilizzo, consulta pricing. | false |
enable_x_search | boolean | Abilita la ricerca nativa di xAI (web + X/Twitter) per i modelli Grok supportati (es. grok-4-20-beta). Fornisce risultati di ricerca di qualità superiore usando l’infrastruttura di ricerca di xAI. Quando abilitato, la web search standard di Venice viene bypassata.Si applicano prezzi aggiuntivi in base all’utilizzo, consulta pricing. | false |
enable_web_citations | boolean | Quando la web search è abilitata, richiede che l’LLM citi le fonti usando il formato [REF]0[/REF] | false |
include_search_results_in_stream | boolean | Sperimentale: include i risultati di ricerca nello stream come primo chunk emesso | false |
return_search_results_as_documents | boolean | Espone i risultati di ricerca in una tool call compatibile con OpenAI chiamata venice_web_search_documents per l’integrazione con LangChain | false |
include_venice_system_prompt | boolean | Indica se includere i system prompt predefiniti di Venice insieme ai system prompt specificati | true |
Questi parametri possono anche essere specificati come suffissi del modello aggiunti al nome del modello (es.
zai-org-glm-5:enable_web_search=auto). Consulta Model Feature Suffixes per i dettagli.Prompt caching
Venice supporta il prompt caching su modelli selezionati per ridurre latenza e costi per contenuti ripetuti. Per i modelli supportati, Venice memorizza automaticamente in cache i system prompt — non sono necessarie modifiche al codice. Puoi anche contrassegnare manualmente il contenuto per il caching usando la proprietàcache_control sul contenuto del messaggio.
| Parametro | Tipo | Descrizione |
|---|---|---|
prompt_cache_key | string | Suggerimento di routing opzionale per migliorare i tassi di cache hit. Quando fornito, Venice instrada le richieste alla stessa infrastruttura backend, aumentando la probabilità di cache hit nelle conversazioni multi-turn. |
Riferimento degli header di risposta
Tutte le risposte dell’API Venice includono header HTTP che forniscono metadati sulla richiesta, rate limit, informazioni sul modello e saldo dell’account. Oltre ai codici di errore restituiti dalle risposte API, puoi ispezionare questi header per ottenere l’ID univoco di una particolare richiesta API, monitorare il rate limiting e tracciare il saldo del tuo account. Venice consiglia di registrare gli ID delle richieste (headerCF-RAY) nei deployment in produzione per un troubleshooting più efficiente con il nostro team di supporto, in caso di necessità.
La tabella seguente fornisce un riferimento completo di tutti gli header che puoi incontrare:
| Header | Tipo | Scopo | Quando viene restituito |
|---|---|---|---|
| Header HTTP standard | |||
Content-Type | string | Tipo MIME del corpo della risposta (application/json, text/csv, image/png, ecc.) | Sempre |
Content-Encoding | string | Encoding usato per comprimere il corpo della risposta (gzip, br) | Quando il client invia l’header Accept-Encoding |
Content-Disposition | string | Come deve essere visualizzato il contenuto (es. attachment; filename=export.csv) | Quando si scaricano file o export |
Date | string | Timestamp RFC 7231 formattato quando la risposta è stata generata | Sempre |
| Identificazione della richiesta | |||
CF-RAY | string | Identificatore univoco per questa richiesta API, usato per troubleshooting e richieste di supporto | Sempre |
x-venice-version | string | Versione/revisione corrente del servizio API Venice (es. 20250828.222653) | Sempre |
x-venice-timestamp | string | Timestamp del server quando la richiesta è stata elaborata (formato ISO 8601) | Quando il tracking del timestamp è abilitato |
x-venice-host-name | string | Hostname del server che ha elaborato la richiesta | Risposte di errore e scenari di debug |
| Informazioni sul modello | |||
x-venice-model-id | string | Identificatore univoco del modello AI usato per la richiesta (es. venice-01-lite) | Endpoint di inferenza che usano modelli AI |
x-venice-model-name | string | Nome amichevole/di visualizzazione del modello AI usato (es. Venice Lite) | Endpoint di inferenza che usano modelli AI |
x-venice-model-router | string | Servizio router/backend che ha gestito l’inferenza del modello | Endpoint di inferenza quando le info di routing sono disponibili |
x-venice-model-deprecation-warning | string | Messaggio di avviso per i modelli programmati per la deprecazione | Quando si usa un modello deprecato |
x-venice-model-deprecation-date | string | Data in cui il modello sarà deprecato (data ISO 8601) | Quando si usa un modello deprecato |
| Informazioni sui rate limit | |||
x-ratelimit-limit-requests | number | Numero massimo di richieste consentite nella finestra temporale corrente | Tutte le richieste autenticate |
x-ratelimit-remaining-requests | number | Numero di richieste rimanenti nella finestra temporale corrente | Tutte le richieste autenticate |
x-ratelimit-reset-requests | number | Timestamp Unix quando il rate limit delle richieste si resetta | Tutte le richieste autenticate |
x-ratelimit-limit-tokens | number | Numero massimo di token (prompt + completion) consentiti nella finestra temporale | Tutte le richieste autenticate |
x-ratelimit-remaining-tokens | number | Numero di token rimanenti nella finestra temporale corrente | Tutte le richieste autenticate |
x-ratelimit-reset-tokens | number | Durata in secondi fino al reset del rate limit dei token | Tutte le richieste autenticate |
x-ratelimit-type | string | Tipo di rate limit applicato (user, api_key, global) | Quando il rate limiting è applicato |
| Header di paginazione | |||
x-pagination-limit | number | Numero di elementi per pagina | Endpoint paginati |
x-pagination-page | number | Numero di pagina corrente (base 1) | Endpoint paginati |
x-pagination-total | number | Numero totale di elementi su tutte le pagine | Endpoint paginati |
x-pagination-total-pages | number | Numero totale di pagine | Endpoint paginati |
| Informazioni sul saldo account | |||
x-venice-balance-diem | string | Il tuo saldo del token DIEM prima che la richiesta venisse elaborata | Tutte le richieste autenticate |
x-venice-balance-usd | string | Il tuo saldo di credito in USD prima che la richiesta venisse elaborata | Tutte le richieste autenticate |
| Header di content safety | |||
x-venice-is-blurred | string | Indica se l’immagine generata è stata sfocata per le content policy (true/false) | Generazione di immagini con Safe Venice abilitato |
x-venice-is-content-violation | string | Indica se il contenuto viola le content policy di Venice (true/false) | Endpoint di generazione di contenuti |
x-venice-is-adult-model-content-violation | string | Indica se il contenuto viola le content policy dei modelli per adulti (true/false) | Endpoint di generazione di immagini |
x-venice-contains-minor | string | Indica se l’immagine contiene minori (true/false) | Endpoint di analisi immagini con rilevamento dell’età |
| Informazioni sul client | |||
x-venice-middleface-version | string | Versione del client middleface di Venice | Richieste da client middleface di Venice |
x-venice-mobile-version | string | Versione del client app mobile di Venice | Richieste da applicazioni mobile |
x-venice-request-timestamp-ms | number | Timestamp di richiesta fornito dal client in millisecondi | Quando il client fornisce un timestamp nella richiesta |
x-venice-control-instance | string | Identificatore dell’istanza di controllo per il debugging | Endpoint di generazione immagini per il debugging |
| Header di autenticazione | |||
x-auth-refreshed | string | Indica che il token di autenticazione è stato aggiornato durante la richiesta (true/false) | Quando i token di autenticazione vengono aggiornati automaticamente |
x-retry-count | number | Numero di tentativi di retry per la richiesta | Quando si verificano retry della richiesta |
Note importanti
- Maiuscole/minuscole nei nomi degli header: gli header HTTP sono case-insensitive, ma Venice usa minuscole con trattini per coerenza
- Valori stringa: i valori booleani negli header vengono restituiti come stringhe (
"true"o"false") - Valori numerici: numeri grandi e valori di saldo possono essere restituiti come stringhe per prevenire perdita di precisione
- Header opzionali: non tutti gli header vengono restituiti in ogni risposta; la presenza dipende dall’endpoint e dal contesto della richiesta
- Compressione: usa
Accept-Encoding: gzip, brnelle richieste per ricevere risposte compresse dove supportato
Esempio: accedere agli header di risposta
Best practice
- Rate limiting: monitora gli header
x-ratelimit-remaining-requestsex-ratelimit-remaining-tokense implementa un backoff esponenziale - Monitoraggio del saldo: traccia gli header
x-venice-balance-usdex-venice-balance-diemper evitare interruzioni del servizio - System prompt: testa con e senza i system prompt di Venice per trovare la soluzione migliore per il tuo caso d’uso
- API key: mantieni le tue API key al sicuro e ruotale regolarmente
- Logging delle richieste: registra i valori dell’header
CF-RAYper il troubleshooting con il supporto - Deprecazione dei modelli: controlla gli header
x-venice-model-deprecation-warningquando usi i modelli
Differenze rispetto all’API di OpenAI
Sebbene Venice mantenga un’elevata compatibilità con la specifica dell’API OpenAI, ci sono alcune differenze chiave:- venice_parameters: configurazioni aggiuntive come
enable_web_search,character_slugestrip_thinking_responseper funzionalità estese - System prompt: Venice aggiunge i tuoi system prompt ai default che ottimizzano per risposte senza restrizioni (disabilita con
include_venice_system_prompt: false) - Ecosistema dei modelli: Venice offre la propria lineup di modelli inclusi modelli senza restrizioni e di ragionamento - usa gli ID dei modelli Venice anziché le mappature OpenAI
- Header di risposta: header unici per il tracking del saldo (
x-venice-balance-usd,x-venice-balance-diem), avvisi di deprecazione dei modelli e flag di sicurezza del contenuto - Content policy: policy più permissive con modelli dedicati senza restrizioni e filtraggio dei contenuti opzionale
Stabilità dell’API
Venice mantiene la retrocompatibilità per gli endpoint e i parametri v1. Per la policy del ciclo di vita dei modelli, gli avvisi di deprecazione e le indicazioni di migrazione, consulta Deprecations.Specifica OpenAPI e dati raw
Per accesso programmatico ai doc e ai dati dell’API Venice — incluso l’uso con RAG (Retrieval-Augmented Generation) — sono disponibili le seguenti risorse:- Spec OpenAPI (YAML) — la specifica API completa in formato YAML
- Sorgente dei doc API — tutte le pagine di documentazione (formato
.mdx) come archivio scaricabile
I campi della richiesta non elencati in questa documentazione possono essere passati attraverso ma non sono validati né garantiti per funzionare.