Lasciare l'API è una riga di codice.
La riscrittura che tutti mettono a budget non esiste. Gli stack di serving self-hosted parlano la stessa API compatibile OpenAI che il vostro codice già chiama, quindi la migrazione dell'impianto è il base URL. Il resto onesto sono le eval, non l'ingegneria, e vale in entrambe le direzioni: la stessa riga che vi permette di lasciare loro vi permette di lasciare noi.
In questo articolo 3 sezioni
- I team restano sulle API AI in hosting molto dopo aver deciso di uscirne, perché hanno messo a budget una riscrittura. Per l'impianto, quella riscrittura non esiste: gli stack di serving self-hosted espongono la stessa API compatibile OpenAI che il vostro codice già parla.
- La migrazione lato applicazione è il base URL e la chiave. I vostri prompt, i vostri handler di streaming, il vostro tooling: invariati.
- Il resto onesto è il comportamento del modello: un modello diverso risponde diversamente, quindi il vero lavoro di migrazione è eseguire le vostre eval sui vostri task. Più piccolo di una riscrittura, e testabile prima di impegnarvi.
- La stessa proprietà vi protegge all'uscita: open weights più un'API standard significano che anche lasciare noi è una riga. Vendiamo a clienti che possono andarsene.
La riunione succede ovunque. Tutti nella stanza vogliono uscire dall'API in hosting, scegliete il motivo: i dati che non dovrebbero uscire, il livello di rate limit che non sopravviverà alla roadmap, la fattura che scala con il successo. E poi qualcuno dice la frase che chiude tutto: siamo troppo integrati, sarebbe una riscrittura. Sei mesi dopo, stessa riunione, stessa frase, uno sprint di retry logic in più nel mezzo.
La frase merita un audit, perché l'integrazione che descrive è profonda un valore di configurazione.
Il mondo si è standardizzato mentre non guardavate
Negli ultimi anni nel mondo del serving è successo qualcosa di utile: il formato dell'API OpenAI è diventato lo standard di fatto del protocollo per parlare con i modelli linguistici, e gli stack di serving open source lo hanno adottato di proposito. Stesse route, stesso formato di richiesta, stesso protocollo di streaming, per il nucleo largamente usato della superficie: chat completions, streaming, embeddings. Quando consegniamo un endpoint privato, parla quel dialetto nativamente. Il vostro SDK non sa di essersi spostato. Se la vostra app si appoggiava agli extra proprietari di un vendor, quello è un audit breve, non una riscrittura, e lo percorriamo con voi: la maggior parte degli extra ha equivalenti diretti o shim sottili.
- OPENAI_BASE_URL=https://api.vendor.example/v1
+ OPENAI_BASE_URL=https://inference.yourcompany.internal/v1
OPENAI_API_KEY=**** # your key, issued by you, revoked by youPrompt, handler di streaming, retry logic, tooling: intatti. Quel diff è l'intera migrazione dell'impianto. Che è esattamente il motivo per cui il budget per la riscrittura merita sospetto: era prezzato per un mondo in cui ogni provider aveva il proprio formato di protocollo, e quel mondo non c'è più.
Cosa cambia davvero: il modello
Ora la metà onesta, perché l'affermazione della riga unica è vera solo per l'impianto. Un modello diverso è un collega diverso. Fategli la stessa domanda e la risposta torna formulata e strutturata diversamente; i prompt messi a punto per un modello possono richiedere aggiustamenti; i casi limite si spostano. Questo è lavoro reale. È anche delimitato, testabile ed economico rispetto a quanto avevate messo a budget: eseguite il vostro set di eval esistente (o costruite quello piccolo che dovreste avere comunque) contro il modello candidato sui vostri task reali, confrontate, decidete. Succede prima che vi impegniate, su un endpoint che potete provare, non dopo una riscrittura che non potete annullare.
| UNA RIGA (L'IMPIANTO) | LAVORO REALE (IL MODELLO) |
|---|---|
| LA PARTE CHE TUTTI SOVRASTIMANOIl base URL e la chiave API | Eseguire le vostre eval sul nuovo modello |
| Formati di richiesta e risposta, streaming | Aggiustamenti ai prompt dove il comportamento è cambiato |
| Il vostro codice di retry e tooling | Decidere quantizzazione e dimensionamento (questo lo portiamo noi) |
| Extra API specifici del vendor, se li usavate | Un audit breve: sostituire o fare shim di ciascuno |
Notate cosa non è apparso in quella tabella: nessuna affermazione che il modello open sia altrettanto buono. Non facciamo quell'affermazione, perché invecchia male e perché non dovreste comunque accettarla da un vendor. Il giro di eval sostituisce l'affermazione. I vostri task, entrambi i modelli, affiancati, e la decisione è vostra con le prove davanti. Quel passaggio di eval fa parte del nostro deployment, insieme al dimensionamento e al compromesso della quantizzazione (mostrato, non nascosto), che è dove un host gestito si guadagna il compenso.
La riga taglia in entrambe le direzioni, di proposito
Tutto quanto sopra descrive anche il lasciare noi. Gli open weights sono file portabili. L'endpoint parla il dialetto standard. I vostri dati vivono sulla vostra macchina e partono con voi. Se smettiamo di meritare il carico, la migrazione in uscita è la stessa riga unica, e l'abbiamo costruita così deliberatamente, per lo stesso motivo per cui il resto di questa azienda ha cancellato i contatori e rifiuta le tasse di uscita (l'argomento sulle egress fee è la stessa postura un livello più in basso). L'anti lock-in che non potete esercitare è una parola da brochure. I clienti che possono andarsene, e restano comunque, sono l'unica referenza che vale la pena avere.
Un'altra libertà viaggia insieme: una volta che il modello è vostro, nessuno lo ritira da sotto i vostri prompt, e la versione che ha superato le vostre eval resta la versione che risponde finché non decidete altrimenti. Su un'API in hosting, quel calendario appartiene a qualcun altro.
“La stessa riga che vi permette di lasciare loro vi permette di lasciare noi. È questo il punto.”
Risposte dirette
L'API compatibile OpenAI è davvero compatibile?+
Il nucleo largamente usato (chat completions, streaming, embeddings) è lo standard di fatto che il mondo del serving implementa. Se vi appoggiavate agli extra proprietari di un vendor, quelli ricevono un audit breve: la maggior parte ha equivalenti diretti o shim sottili, e quella lista la percorriamo con voi.
Cosa succede al mio prompt engineering?+
La maggior parte si trasferisce. Una parte richiede aggiustamenti dove il comportamento del nuovo modello differisce, e le vostre eval vi mostrano esattamente dove. Mettete a budget ore di messa a punto dei prompt, non una riscrittura.
A una riga dal vostro endpoint.
Portateci il modello che volete far girare. Lo dimensioneremo, lo distribuiremo dietro l'API che il vostro codice già parla, ed eseguiremo le eval con voi prima che cambiate qualsiasi cosa.
Parla con un ingegnereSiete arrivati alla fine.
Mettete la lettura al lavoro
Cosa fate girare?
Raccontateci il carico di lavoro, il traffico e i requisiti di ripristino. Partite dal configuratore di server, oppure discutete i dettagli con un ingegnere.
Scritto dagli ingegneri che costruiscono e gestiscono l'infrastruttura che descrive.Parla con un ingegnere
