Jedan Server Unit: 100 istovremenih poziva, testiran opterećenjem do 176% nazivnog kapaciteta

Opteretili smo jedan Server Unit od jednog poziva do 176% nazivnih 100 poziva. Odgovori su do tog kapaciteta držali ocenu Standard, a svi pozivi su se povezali.

Istraživanja

176%najveće testirano opterećenje, kao udeo nazivnog kapaciteta

Server Unit pokreće ceo glasovni stek za jednog klijenta: obradu poziva, prepoznavanje govora, jezički model i sintezu govora. Svaka jedinica nosi 100 istovremenih poziva. Pre nego što taj broj uđe u ugovor, treba ga testirati, pa smo napravili test opterećenja i izveli ga dvaput.

Želeli smo da znamo da li jedinica nosi svojih nazivnih 100 poziva s odgovorima koji i dalje zvuče kao razgovor i kako se ponaša iznad njih, na 120%, 150% i 176%.

Merenje je rađeno na jednom Server Unitu, s agentom za regrutovanje i simuliranim pozivaocima na istoj jedinici, preko G.711 A-law kroz merni most: 22 koraka opterećenja u 9 serija, 22.018 odgovora, oko 129 sati razgovora. Opterećenje je dato kao udeo nazivnog kapaciteta (100 istovremenih poziva), a vreme odgovora kao indeks, gde jedan poziv iznosi 1,00.

Ukratko: srednje vreme odgovora ostaje u ocenu Standard ili bolje do nazivnog kapaciteta, a uz rani start do oko 117%. Na 176% svi pozivi su se povezali i nijedan nije pao. Na svakom koraku više od 99% replika pozivaoca dobilo je odgovor, a jedan krug optimizacije za veliko opterećenje udvostručio je opterećenje koje jedinica nosi u ocenu Standard.

Kako smo merili

  • Simulirani pozivaoci na istoj jedinici. Svaki razgovor su dva telefonska poziva: agent koji se testira i simulirani pozivalac. Dvadeset simuliranih pozivalaca, svaki sa sopstvenim glasom, manirom i raspoloženjem, pita za posao, pravi pauze i odgovara kao ljudi. Server Unit nosi oba kraja svakog razgovora, pa je telefonsko opterećenje dvostruko veće nego što bi ga stvorio pravi razgovor iste veličine.
  • Realne zavisnosti. Spoljni sistemi koje agent poziva odgovaraju posle fiksnog, realnog kašnjenja.
  • Jedan časovnik na liniji. Merni most stoji u audio putanji. Beleži trenutak kada se završi izgovorena fraza pozivaoca i trenutak kada stigne prvi zvuk agentovog odgovora. Vreme odgovora je taj interval. Obuhvata sve unutar jedinice, uključujući pauzu za kraj replike i prenos zvuka.
  • Koraci. Opterećenje raste po koracima, od jednog razgovora do 176% nazivnog kapaciteta. Svaki korak se dva minuta stabilizuje, a zatim se meri najmanje pet. Korak s jednim razgovorom traje dvadeset.
  • Korak mora da zasluži mesto. Korak se računa samo ako prođe osam provera: stabilno stanje (druga polovina nije sporija od prve), neuspele replike, ispravnost mernog mosta, preklapanje govora, poklapanje događaja mosta sa agentovim logom, izgubljena telemetrija, odbijeni pozivi i ograničavači resursa.
  • Dva režima. Agenta smo merili u standardnom režimu i s ranim startom, u kojem jezički model počinje na prepoznatom tekstu pre nego što je replika formalno zatvorena.

Šta se desilo

Pojasevi opterećenja

Ocene opisuju kako odgovor deluje pozivaocu. Svaka ocena se završava na određenom indeksu vremena odgovora.

Ocena odgovora u standardnom režimu po pojasu opterećenja; niži indeks vremena odgovora je bolji.
Pojas opterećenja Opterećenje, % nazivnog kapaciteta Ocena odgovora Indeks do Šta pozivalac primećuje
Nisko do 42 Platinum 1,22 Odgovori stižu brzinom bliskom jednom pozivu
Umereno 42–65 Gold 1,49 Brz odgovor
Visoko 65–100 Standard 2,03 Prirodna pauza; ovaj pojas se završava na nazivnom kapacitetu
Vrhunac 100–137 Minimum 2,71 Primetna pauza, i dalje razgovor
Nalet 137–176 Stretch — Duža pauza, a svi pozivi su i dalje povezani

Uz rani start svaki pojas se produžava: Platinum do oko 57% nazivnog kapaciteta, Gold do oko 78%, Standard do oko 117%. Rani start smo merili do 128% nazivnog kapaciteta.

Nazivni kapacitet je ispunjen

Na 100 istovremenih poziva srednje vreme odgovora je oko dvostruko veće od vrednosti za jedan poziv (indeks 2,02), a odgovori ostaju u oceni Standard. Uz rani start jedinica drži Standard do oko 117% nazivnog kapaciteta.

Indeks odgovora na svakom nivou opterećenja, u standardnom režimu i uz rani start (niže je bolje), 95. percentil prema medijani i propusnost kao udeo vrhunca.
Opterećenje, % nazivnog kapaciteta Indeks odgovora Uz rani start 95. percentil / medijana Udeo propusnosti
1 poziv 1,00 0,88 1,73 0,01
24 1,07 — 1,61 0,38
36 1,15 — 1,61 0,55
50 1,30 1,14 1,69 0,74
64 1,48 — 1,72 0,94
80 1,75 — 1,70 1,00
96 1,97 1,71 1,62 0,98
112 2,20 — 1,69 0,94
128 2,52 2,21 1,68 0,99
152 3,02 — 1,60 0,91
176 3,34 — 1,71 0,81

Vreme odgovora raste sporije od opterećenja

Krivu sažimamo jednim brojem, elastičnošću opterećenja: za koliko procenata raste vreme odgovora na svaki procenat dodatnog opterećenja.

Koliko brzo vreme odgovora raste s opterećenjem; niže je bolje.
Opseg opterećenja, % nazivnog kapaciteta Elastičnost Vreme odgovora na +10% opterećenja
24–64 0,33 oko 3%
64–128 0,77 oko 8%
128–176 0,88 oko 9%

Elastičnost ostaje ispod 1 sve do 176%, a kriva nema prelomnu tačku na kojoj skreće naviše. Klijent koji radi 20% iznad nazivnog kapaciteta dobija merljivo dužu pauzu na sistemu koji i dalje radi.

Rep ostaje proporcionalan

Medijana odgovora i odgovor na 95. percentilu održavaju isti odnos na svakom koraku, od jednog poziva do 176%:

Odgovor na 95. percentilu je oko 1,6 do 1,7 puta veći od medijane na svakom koraku opterećenja.

Spori odgovori rastu zajedno s ostalima, pa klijent koji zna uobičajenu pauzu može da proceni i najgoru.

Propusnost se drži

Broj odgovora u sekundi raste s opterećenjem, dostiže vrhunac na oko 80% nazivnog kapaciteta i ostaje u okviru 6% tog vrhunca od 64% do 128% tog kapaciteta. Na 176% jedinica i dalje obrađuje oko 80% svoje vršne propusnosti.

Pozivi i medijski tok

  • Odgovorene replike. Na svakom koraku više od 99% replika pozivaoca dobilo je odgovor.
  • Medijski tok. Merna linija nije izgubila nijedan RTP paket ni na jednom koraku.
  • Prihvat poziva. Na 176% nazivnog kapaciteta istovremeno je bilo uspostavljeno 352 SIP poziva. Svi su se povezali i nijedan nije pao.
  • Modeli. Red jezičkog modela i red sinteze govora ostali su prazni na svakom koraku.

Prvi i drugi krug

Izveli smo test, optimizovali stek za veliko opterećenje i ponovo izveli test. Optimizacija je obuhvatila medijsku putanju, način na koji se detekcija glasa raspoređuje po pozivima, obradu tišine u sintetizovanom govoru i trenutak u kojem se pokreće jezički model.

Kapacitet pre i posle optimizacije; više je bolje.
Mera Prvi krug Drugi krug
Kapacitet u oceni Standard oko pola nazivnog kapaciteta nazivni kapacitet
Kapacitet u oceni Gold oko 36% nazivnog kapaciteta oko 65% nazivnog kapaciteta
Vreme odgovora, jedan poziv osnovna vrednost 22% niže
Vreme odgovora na pola nazivnog kapaciteta osnovna vrednost 34% niže
Vršna propusnost osnovna vrednost skoro dvostruka

Drugi krug je dostigao nazivnih 100 poziva, pa je broj u tehničkom listu izmeren. Stranica Tehnologije pokazuje gde test opterećenja stoji u steku. U tekstu Voicecore (na engleskom) opisujemo sledeći korak u obradi zvuka: jezgro napisano u Rustu.

Postavka testa

Mereno preko G.711 na probnoj telefonskoj liniji, s dvadeset simuliranih pozivalaca i agentom za regrutovanje; 94% prvih fraza dolazilo je iz glasovnog keša.

Nastavite da čitate

Sledeći korak

Obezbedite rani pristup Dialogist glasovnim agentima: timove sa liste čekanja pozivamo kako se oslobađa kapacitet.

Pridružite se čekoj listi

Uvodno otvaramo pristup postepeno. Obavestićemo vas kada se otvori vaše mesto.