Delen via


Wat betekenen tokens per secondebereik in ingerichte doorvoer?

In dit artikel wordt beschreven hoe en waarom Databricks tokens meet per seconde voor ingerichte doorvoerworkloads voor Foundation Model-API's.

Prestaties voor grote taalmodellen (LLM's) worden vaak gemeten in termen van tokens per seconde. Bij het configureren van productiemodel voor eindpunten is het belangrijk om rekening te houden met het aantal aanvragen dat uw toepassing naar het eindpunt verzendt. Dit helpt u te begrijpen of uw eindpunt moet worden geconfigureerd om te worden geschaald, zodat de latentie niet wordt beïnvloed.

Bij het configureren van de uitschaalbereiken voor eindpunten die zijn geïmplementeerd met ingerichte doorvoer, heeft Databricks het gemakkelijker gevonden om te redeneren over de invoer in uw systeem met behulp van tokens.

Wat zijn tokens?

LLM's lezen en genereren tekst in termen van wat een token wordt genoemd. Tokens kunnen woorden of subwoorden zijn en de exacte regels voor het splitsen van tekst in tokens variëren van model tot model. U kunt bijvoorbeeld onlinehulpprogramma's gebruiken om te zien hoe llama's tokenizer woorden converteert naar tokens.

Waarom de LLM-prestaties meten in termen van tokens per seconde?

Traditioneel worden service-eindpunten geconfigureerd op basis van het aantal gelijktijdige aanvragen per seconde (RPS). Een LLM-deductieaanvraag neemt echter een andere tijd in beslag op basis van het aantal tokens dat wordt doorgegeven en het aantal gegenereerde tokens, dat kan worden verdeeld over aanvragen. Daarom moet u bepalen hoeveel schaal uw eindpunt nodig heeft voor het meten van de eindpuntschaal in termen van de inhoud van uw aanvraag - tokens.

Verschillende use cases hebben verschillende verhoudingen tussen invoer- en uitvoertoken:

  • Verschillende lengten van invoercontexten: hoewel sommige aanvragen mogelijk slechts enkele invoertokens bevatten, bijvoorbeeld een korte vraag, kunnen anderen honderden of zelfs duizenden tokens omvatten, zoals een lang document voor samenvatting. Deze variabiliteit maakt het configureren van een service-eindpunt alleen op basis van RPS lastig, omdat het niet rekening houdt met de verschillende verwerkingsvereisten van de verschillende aanvragen.
  • Verschillende lengten van uitvoer, afhankelijk van use-case: Verschillende gebruiksvoorbeelden voor LLM's kunnen leiden tot enorm verschillende uitvoertokenlengten. Het genereren van uitvoertokens is het meest tijdrovende deel van LLM-deductie, zodat dit de doorvoer aanzienlijk kan beïnvloeden. Samenvatting omvat bijvoorbeeld kortere, pithier antwoorden, maar het genereren van tekst, zoals het schrijven van artikelen of productbeschrijvingen, kan veel langere antwoorden genereren.

Hoe kan ik de tokens per secondebereik voor mijn eindpunt selecteren?

Ingerichte doorvoer voor eindpunten wordt geconfigureerd in termen van een bereik van tokens per seconde dat u naar het eindpunt kunt verzenden. Het eindpunt wordt omhoog en omlaag geschaald om de belasting van uw productietoepassing af te handelen. Er worden kosten per uur in rekening gebracht op basis van het bereik van tokens per seconde waarnaar uw eindpunt wordt geschaald.

De beste manier om te weten welke tokens per secondebereik op het ingerichte doorvoereindpunt voor uw use-case werken, is door een belastingstest uit te voeren met een representatieve gegevensset. Zie Uw eigen LLM-eindpuntbenchmarking uitvoeren.

Er zijn twee belangrijke factoren om rekening mee te houden:

  • Hoe Databricks tokens meet per seconde van de LLM

    Databricks-benchmarks voor eindpunten op basis van een workload die samenvattingstaken vertegenwoordigt die gebruikelijk zijn voor het ophalen van uitgebreide generatiegebruiksscenario's. De workload bestaat met name uit:

    • 2048 invoertokens
    • 256 uitvoertokens

    De weergegeven tokenbereiken combineren de doorvoer van invoer- en uitvoertoken en optimaliseren standaard voor het verdelen van doorvoer en latentie.

    Databricks-benchmarks waarmee gebruikers dat aantal tokens per seconde gelijktijdig naar het eindpunt kunnen verzenden met een batchgrootte van 1 per aanvraag. Hiermee simuleert u meerdere aanvragen die tegelijkertijd het eindpunt bereiken, wat nauwkeuriger aangeeft hoe u het eindpunt daadwerkelijk in productie zou gebruiken.

  • Hoe automatisch schalen werkt

    ModelService biedt een snel automatisch schalend systeem waarmee de onderliggende rekenkracht wordt geschaald om te voldoen aan de tokens per seconde vraag van uw toepassing. Databricks schaalt ingerichte doorvoer op in segmenten tokens per seconde, dus er worden alleen extra eenheden ingerichte doorvoer in rekening gebracht wanneer u ze gebruikt.