Mistral API Integratiegids
Een Mistral-stijl integratie verplaatsen naar een nieuwe basis-URL kost minder werk dan de meeste teams verwachten. Deze gids behandelt de wijziging van de basis-URL, de model-id, streamen, tools, tokenlimieten, retries en de fouten die je waarschijnlijk zult tegenkomen, met code die je direct kunt uitvoeren.
Laatst bijgewerkt
Samenvatting
- De verandering is één basis-URL en één sleutel; het aanvraag- en responsformaat blijft hetzelfde.
- Gebruik de model-ID uncensored en controleer deze met een enkel testverzoek voordat je iets anders wijzigt.
- Streaming en functieaanroepen werken via hetzelfde chat-completions endpoint, dus bestaande parsers blijven werken.
- De kosten bedragen $0.15 per 1M inputtokens en $0.50 per 1M outputtokens, gefactureerd van vooruitbetaald tegoed.
De wijziging van de basis-URL begrijpen
Uw code stuurt verzoeken naar een basis-URL en voegt een sleutel toe. Om naar een ander OpenAI-compatible eindpunt te gaan, wijzigt u alleen deze twee waarden. Het pad /v1/chat/completions blijft hetzelfde, dus het requestbody en de responsebody behouden hun vorm.
Bewaar de oude base URL in een config-waarde in plaats van in de code. Zo kun je in één stap terugschakelen als er een probleem optreedt in productie.
SDK-compatibiliteit: OpenAI vs Mistral-clients
De meeste clientbibliotheken accepteren een aangepaste base URL. De officiële OpenAI SDK, LangChain en LlamaIndex doen dit allemaal, en een gewone HTTP-client werkt ook. Stel de base URL in op https://mistralapibaseurl.com/v1 en geef de nieuwe sleutel door.
- Controleer de SDK-versie, omdat zeer oude releases de basis-URL-instelling negeren.
- Controleer dat de client de sleutel in de
Authorizationheader als Bearer-token.
De model-ID configureren
Stuur de model id uncensored. Het is het enige model dat de dienst aanbiedt, dus de id verandert niet tussen verzoeken en je hebt geen modelselectielogica nodig.
Voer één verzoek uit met een korte prompt. Een antwoord en een gebruiksblok betekenen dat de basis-URL, de sleutel en de model-id allemaal correct zijn.
Streamingresponsen implementeren
Instellen stream: true om het antwoord te ontvangen als server-sent events. Elk evenement bevat een klein stukje tekst, en het laatste evenement bevat de verbruiksgegevens.
Toon de chunks naarmate ze binnenkomen en bewaar de volledige tekst in een buffer, zodat het bericht wordt opgeslagen zodra de stream eindigt. Meet de tijd tot het eerste token; deze waarde geeft aan hoe responsief de chat aanvoelt voor een gebruiker.
Functiebellen en Tools inschakelen
Geef de tools-array door in hetzelfde formaat dat u al gebruikt. Het model retourneert een toolaanroep met een functienaam en JSON-argumenten. Voer de functie uit in uw code, stuur het resultaat terug als een toolbericht en lees het definitieve antwoord.
- Definieer één tool met twee verplichte argumenten en test deze alleen.
- Test een geval waarin twee toolaanroepen sequentieel nodig zijn.
- Valideer de argumenten voordat je iets uitvoert dat gegevens wijzigt.
Contextvensters en tokens beheren
Het contextvenster is 100.000 tokens. Lange chats vullen dit venster, dus knip oude beurtjes of vat ze samen voordat de limiet wordt bereikt. Elk verzoek kan tot 16.000 uitvoertokens retourneren, en de standaard is 2.048, dus stel max_tokens voor de antwoorden die je verwacht.
Tel tokens uit het gebruiksveld van elk antwoord. Schattingen op basis van woordtellingen zijn vaak sterk afwijkend voor code en niet-Engelse tekst.
Snelheidslimieten en opnieuw proberen verwerken
Elke sleutel staat 300 verzoeken per minuut en 8 gelijktijdige verzoeken toe. Wanneer je de limiet overschrijdt, krijg je een 429-response. Probeer alleen de 429- en de 5xx-responses opnieuw, met exponentiële backoff en een limiet voor de totale wachttijd.
Probeer een 400 of een 401 nooit opnieuw, omdat dezelfde request op dezelfde manier opnieuw faalt. Los de request of de key eerst op.
Debuggen van veelvoorkomende API-fouten
| Status | Meest voorkomende oorzaak | Wat te doen |
|---|---|---|
| 400 | Ongeldige JSON of onbekend veld | Controleer de request body tegen het formaat dat je verzendt |
| 401 | Ontbrekende of verkeerde sleutel | Kopieer de sleutel opnieuw en controleer de Authorization-header |
| 402 | Credit is opgebruikt | Laad je saldo op; stortingen beginnen vanaf $20. |
| 429 | Rate limit reached | Back off and retry later |
Log de statuscode en de request-id voor elke fout, zodat je een probleem snel kunt traceren.
Migreren van concurrentie API's
Plan de verplaatsing in drie fasen: een testomgeving, een klein deel van live verkeer, en vervolgens de volledige overschakeling. Houd beide base URLs in de configuratie tijdens de middelste fase en vergelijk de antwoorden en de latentie op dezelfde prompts.
Vergelijk de kosten op basis van je eigen gebruik, niet op basis van de lijstprijzen. Vermenigvuldig de input- en outputtokens uit het gebruiksveld met $0.15 en $0.50 per 1 miljoen tokens en stel dit af tegen je huidige factuur.
Veelgestelde vragen
Moet ik het verzoekformulier wijzigen?
Nee. Het endpoint volgt het chat-completiesformaat, dus dezelfde bericht- en toolstructuren werken. Alleen de basis-URL en de sleutel veranderen.
Welke model id moet ik gebruiken?
Gebruik uncensored. Het is het enige model op de service, dus de id blijft in elk verzoek hetzelfde.
Hoe krijg ik een sleutel om mee te testen?
Meld je aan met Google of met een e-mail en wachtwoord. De sleutel verschijnt op het scherm, en het account begint met $0.50 aan proefkrediet, geldig voor 7 dagen. Er is geen kaart nodig.
Hoe betaal ik voor gebruik?
Laad op met USDT op TRC20 of USDC op Base, beginnend bij $20. Bonuskrediet geldt vanaf $50, en het krediet vervalt niet.
Krijg uw sleutel
Meld je aan, haal je sleutel op en stel je basis-URL in. Dat is het volledige proces.