Benchmarking Mistral-7B

Gebouwd voor snelheid: ~10ms latentie, zelfs onder belasting
De razendsnelle manier om je modellen te bouwen, volgen en implementeren!
- Verwerkt 350+ RPS op slechts 1 vCPU — geen tuning nodig
- Productieklaar met volledige enterprise-ondersteuning
In dit artikel benchmarken we de prestaties van Mistral-7B vanuit het perspectief van latentie, kosten en requests per second. Dit helpt om te evalueren of het een goede keuze is op basis van de zakelijke vereisten. Houd er rekening mee dat we de kwalitatieve prestaties in dit artikel niet behandelen - er zijn verschillende methoden om LLMs te vergelijken, die hier te vinden zijn.
Model: Mistral-7B
In deze blog hebben we het Mistral-7B-Instruct-v0.1-model van mistralai gebenchmarkt. De Mistral-7B-Instruct-v0.1 LLM is een instruct-fine-tuned versie van het Mistral-7B-v0.1 generatieve tekstmodel (met 7 miljard parameters) waarbij gebruik is gemaakt van diverse openbaar beschikbare conversatiedatasets.
Te benchmarken metrieken
- Requests per second. (RPS): Het aantal requests per seconde dat het model verwerkt. Bij een hogere RPS neemt de latentie meestal toe.
- Latentie: Hoeveel tijd is er nodig om een inference-request te voltooien?
- Economie: Wat zijn de kosten die gepaard gaan met het implementeren van een LLM?
Gebenchmarkte use-cases & deployment-modi
De belangrijkste factoren waarop we hebben gebenchmarkt zijn:
GPU-type:
- A100 40GB GPU
- A10 24GB GPU
Prompt-lengte:
- 1500 Input-tokens, 100 output-tokens (Vergelijkbaar met Retrieval Augmented Generation use-cases)
- 50 Input-tokens, 500 output-tokens (Generatie-zware use-cases)
Benchmarking-setup
Voor het benchmarken hebben we locust gebruikt, een open-source load-testing tool. Locust werkt door users/workers aan te maken om requests parallel te versturen. Aan het begin van elke test kunnen we de Number of Users en Spawn Rate instellen. Hier geeft Number of Users het maximale aantal gebruikers aan dat gelijktijdig kan opstarten/draaien, terwijl Spawn Rate aangeeft hoeveel gebruikers er per seconde worden opgestart.
In elke benchmarkingtest voor een deploymentconfiguratie zijn we begonnen met 1 gebruiker en hebben we het aantal Number of Users geleidelijk verhoogd totdat we een gestage toename in de RPS zagen. Tijdens de test hebben we ook de response times (in ms) en total requests per second uitgezet.
In elk van de 2 deploymentconfiguraties hebben we de vLLM model server gebruikt met version=0.2.0-d849de0.
Samenvatting van de benchmarking-resultaten
Latentie, RPS en kosten
We berekenen de beste latentie op basis van het versturen van slechts één request tegelijk. Om de throughput te vergroten, sturen we requests parallel naar de LLM. De maximale throughput is het scenario waarin het model in staat is om de inkomende requests te verwerken zonder aanzienlijke verslechtering van de latentie.

Tokens per seconde
LLMs verwerken input-tokens en generatie anders - daarom hebben we de verwerkingssnelheid van input-tokens en output-tokens afzonderlijk berekend.

Gedetailleerde resultaten
A10 24GB GPU (1500 input + 100 output tokens)


In de bovenstaande grafieken kunnen we zien dat de Beste responstijd (bij 1 gebruiker) 4.6 seconds is. We kunnen het aantal gebruikers verhogen om meer verkeer naar het model te sturen - we zien dat de throughput toeneemt tot 0.8 RPS zonder dat de latentie aanzienlijk daalt. Boven de 0.8 RPS neemt de latentie drastisch toe, wat betekent dat requests in de wachtrij komen te staan.
A10 24GB GPU (50 input + 500 output tokens)


In de bovenstaande grafieken kunnen we zien dat de Beste responstijd (bij 1 gebruiker) 18 seconds is. We kunnen het aantal gebruikers verhogen om meer verkeer naar het model te sturen - we zien dat de throughput toeneemt tot 0.4 RPS zonder dat de latentie aanzienlijk daalt. Boven de 0.4 RPS neemt de latentie drastisch toe, wat betekent dat requests in de wachtrij komen te staan.
A100 40GB GPU (1500 input + 100 output tokens)


In de bovenstaande grafieken kunnen we zien dat de Beste responstijd (bij 1 gebruiker) 2.3 seconds is. We kunnen het aantal gebruikers verhogen om meer verkeer naar het model te sturen - we zien dat de throughput toeneemt tot 2.8 RPS zonder dat de latentie aanzienlijk daalt. Boven de 2.8 RPS neemt de latentie drastisch toe, wat betekent dat requests in de wachtrij komen te staan.
A100 40GB GPU (50 input + 500 output tokens)


In de bovenstaande grafieken kunnen we zien dat de Beste responstijd (bij 1 gebruiker) 9.7 seconds is. We kunnen het aantal gebruikers verhogen om meer verkeer naar het model te sturen - we zien dat de throughput toeneemt tot 1.5 RPS zonder dat de latentie aanzienlijk daalt. Boven de 1.5 RPS neemt de latentie drastisch toe, wat betekent dat requests in de wachtrij komen te staan.
Hopelijk is dit nuttig voor u om te bepalen of Mistral-7B-Instruct geschikt is voor uw use-case en welke kosten u kunt verwachten bij het hosten van Mistral-7B-Instruct.
TrueFoundry AI Gateway levert een latentie van ~3–4 ms, verwerkt 350+ RPS op 1 vCPU, schaalt moeiteloos horizontaal en is klaar voor productie, terwijl LiteLLM last heeft van hoge latentie, moeite heeft boven een gemiddeld aantal RPS, geen ingebouwde schaling heeft en het meest geschikt is voor lichte workloads of prototypes.



















.png)

.webp)



.webp)







.webp)





