Ollama eða vLLM: einn notandi og samhliða álag velja sitt kerfið

|Höfundur: Ritstjórn QUASA|5 mín. lestur
Ollama eða vLLM: einn notandi og samhliða álag velja sitt kerfið

Fyrir staðbundið líkan sem einn aðili notar í einu er Ollama yfirleitt einfaldara val. Þegar mörg forrit eða margir notendur senda beiðnir samtímis verður vLLM áhugaverðara vegna þess hvernig það skipuleggur sameiginlega vinnslu þeirra. Hvor kosturinn hentar ræðst fyrst af beiðnamynstri, tiltæku skjáminni og því hversu mikla þjónustu teymið vill reka.

Í birtri mælingu á níu síðna PDF-verkefni tók raðvinnsla með Ollama 73,0 sekúndur gegn 93,8 sekúndum með vLLM, en þegar allar síðurnar voru sendar samtímis tók Ollama 60,9 sekúndur og vLLM 33,5 sekúndur. Þetta er viðsnúningur í heildartíma tiltekins verkefnis, ekki almennur hraðastuðull: kvöntun líkansins var ólík milli kerfa og breyttist einnig milli vLLM-prófanna.

Hvað snerist við í prófinu?

Verkefnið fólst í að draga texta úr síðum sama PDF-skjals með Qwen2.5-VL-3B-Instruct. Það var keyrt undir WSL2 á fartölvu með RTX 5080 skjákorti og 16 GB skjáminni. Í raðvinnslunni þurfti hver síða að klárast áður en sú næsta hófst; í samtímavinnslunni bárust síðurnar kerfunum sem margar beiðnir í einu.

Raðvinnslan lýsir því hvernig uppsafnaður tími hegðar sér þegar verkefni bíða hvert eftir öðru. Samtímavinnslan mælir tímann þar til öllu skjalinu er lokið þegar beiðnirnar berast saman. Hún segir hins vegar ekki ein og sér hve lengi hver notandi beið eftir fyrsta svarinu. Sá munur skiptir máli fyrir teymi sem þarf bæði að svara einstökum notanda fljótt og afgreiða skjalalotu innan ákveðins tíma.

Í raðhlutanum notaði Ollama Q4 GGUF útgáfu líkansins en vLLM bfloat16. Í samtímahlutanum var vLLM keyrt með AWQ kvöntun á meðan Ollama hélt áfram með Q4 GGUF. Mælingin sýnir því árangur þessara tilteknu samsetninga af keyrsluumhverfi, líkanaskrá og álagi. Hún einangrar ekki áhrif lotuvinnslu frá áhrifum kvöntunar; breyting á nákvæmni getur líka haft áhrif á minnisþörf og gæði úttaks.

Hvers vegna hentar Ollama stakri staðbundinni notkun?

Ollama gefur þróunaraðila beina leið að líkani á eigin tölvu. Samkvæmt API-lýsingu Ollama er hægt að setja upp staðbundinn þjón, hlaða niður líkani og senda honum HTTP-beiðnir; sama API-umhverfi býður einnig aðgang að skýjalíkönum. Fyrir frumgerð eða innra verkfæri með fáar beiðnir getur einfaldari uppsetning vegið þyngra en afkastageta sem nýtist fyrst við þétt samtímaálag.

„Staðbundið“ þarf þó að merkja það sama í hönnuninni og í rekstrinum. Beiðni til líkans sem keyrir á eigin tölvu fer aðra leið en beiðni til skýjalíkans, þótt bæði séu aðgengileg í Ollama. Fyrir teymi sem vinnur með gögn sem eiga að vera á eigin vél skiptir því máli hvaða líkan forritið kallar á, ekki aðeins hvaða þjónn svarar á staðbundinni slóð.

Einstakur notandi fær heldur ekki sjálfkrafa styttri svörunartíma í Ollama við hvaða líkan og vélbúnað sem er. Raðhluti birtu mælingarinnar sýnir styttri heildartíma fyrir þá útgáfu líkansins sem þar var notuð, en ólík kvöntun kemur í veg fyrir að færa þá niðurstöðu óbreytta yfir á annað líkan. Sterkasta ástæðan fyrir Ollama í þessu notkunarmynstri er skýr og einfaldur rekstur; hraðinn þarf að standast kröfur viðkomandi verkefnis.

Hvað breytist þegar margar beiðnir deila líkani?

vLLM er sérstaklega miðað að þjónustu þar sem beiðnir safnast upp. Opinber skjöl vLLM lýsa samfelldri lotuvinnslu, PagedAttention fyrir stjórnun minnis sem líkanið notar við athygli, kvöntunarleiðum og dreifðri keyrslu. Samfelld lotuvinnsla gerir þjóninum kleift að taka nýjar beiðnir inn á meðan aðrar eru í vinnslu, fremur en að festa alla vinnuna við eina óbreytanlega lotu.

Þetta er gagnlegt þegar lengd fyrirmæla og svara er breytileg. Stutt beiðni þarf þá ekki endilega að bíða eftir að langri beiðni ljúki áður en hún fær vinnslutíma. Minnisstjórnunin skiptir jafnframt máli vegna þess að samhengi allra virkra beiðna þarf pláss samhliða líkaninu sjálfu. Því fleiri og lengri beiðnir sem berast, því meira ræður skjáminnið því hvaða samtímaálag þjónninn getur borið.

Ollama getur líka afgreitt beiðnir samhliða. Leiðbeiningar Ollama um samtímabeiðnir segja að sjálfgefið hámark samhliða beiðna fyrir hvert líkan sé ein, en hægt sé að breyta því með OLLAMA_NUM_PARALLEL þegar minni leyfir. Samkvæmt sömu leiðbeiningum vex minnisþörf samhengis með fjölda samhliða beiðna. Hærra stilligildi getur því stytt biðröðina, en það er ekki ókeypis afkastaaukning og niðurstaðan í birtu prófi lýsir ekki öllum mögulegum Ollama-stillingum.

Ræður OpenAI-samhæfni valinu?

Bæði kerfin geta tekið við beiðnum frá forritum sem nota OpenAI-samhæft viðmót, svo sú krafa ein og sér velur ekki á milli þeirra. vLLM býður slíkan API-þjón. Samhæfnislýsing Ollama sýnir einnig tengingu OpenAI-biðlara við staðbundna þjóninn, en tekur fram að Ollama styðji aðeins hluta af OpenAI API.

Raunverulega spurningin er hvaða aðgerðir forritið notar. Forrit sem sendir einfaldar spjallbeiðnir hefur aðrar kröfur en þjónusta sem sendir myndir, notar verkfæraköll eða væntir ákveðinnar gerðar svars. Samhæfð grunnslóð sparar breytingar á tengikóða, en tryggir ekki að allir endapunktar, valkostir og svarhlutar hegði sér eins. Munurinn getur komið fram áður en afkastamunur skiptir nokkru máli.

Ákvörðunartré fyrir þróunarteymi

  • Ef einn aðili notar staðbundið líkan, beiðnir berast sjaldan og einföld uppsetning er meginmarkmiðið, veljið Ollama sem upphafskost.
  • Ef margir notendur eða sjálfvirk skjalavinnsla senda beiðnir samtímis, setjið vLLM í forgang þegar teymið getur sinnt stillingum og rekstri sameiginlegrar þjónustu.
  • Ef álagið liggur þar á milli, berið vLLM saman við Ollama með samhliða vinnslu stillta eftir því minni sem vélin hefur. Notið sama verkefni, sambærilega líkanaskrá og þá API-aðgerðir sem forritið þarf.

Í slíkum samanburði þarf að halda inntaki, úttakslengd, vélbúnaði og kvöntun eins sambærilegum og kerfin leyfa. Skráið bæði tíma að fyrsta svari og tíma þar til öllum beiðnum er lokið, ásamt biðröð og hámarksnotkun skjáminnis. Þannig sést hvort vandinn er hæg stök beiðni, uppsafnaður biðtími eða minni sem þrengir að samhliða vinnslu.

Fyrir íslenskt gagnateymi sem vinnur til dæmis með löng skjöl getur minnisnotkun ráðið því hve margar síður komast í vinnslu samtímis. Sé krafan hins vegar að einn starfsmaður fái svar úr innra verkfæri með sem minnstri uppsetningarvinnu er ávinningur háþróaðrar lotuvinnslu hugsanlega lítill. Þessi tvö notkunarmynstur kalla á ólíka mælikvarða, jafnvel þegar grunnlíkanið er hið sama.

Lestu einnig:

Deila:

Gerstu áskrifandi að fréttabréfinu okkar

Fáðu nýjustu fréttir af Web3, gervigreind og rafmyntum beint í pósthólfið.

0