Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével AWS-en

Az Amazon Search víziója, hogy az ügyfelek könnyedén kereshessenek. Helyesírási javításunk segít megtalálni, amit keres, még akkor is, ha nem ismeri a kívánt szavak pontos helyesírását. Korábban klasszikus gépi tanulási (ML) algoritmusokat használtunk manuális funkciótervezéssel a helyesírás-javításhoz. A helyesírás-javítási teljesítményben a következő generációs ugrás megtétele érdekében számos mélytanulási megközelítést alkalmazunk, beleértve a sorozatról szekvenciára modelleket. A mélytanulási (DL) modellek számításigényesek mind a képzés, mind a következtetések tekintetében, és ezek a költségek a történelem során a DL-modelleket az Amazon méretű gyártási környezetében gyakorlatiassá tették. Ebben a bejegyzésben egy következtetésoptimalizálási kísérlet eredményeit mutatjuk be, ahol leküzdjük ezeket az akadályokat, és 534%-os következtetési sebességet érünk el a népszerű Hugging Face T5 Transformer esetében.

Kihívás

A szöveg-szöveg átviteli transzformátor (T5, Az átviteli tanulás korlátainak feltárása egységes szöveg-szöveg transzformátorral, Reffel et al) a legmodernebb természetes nyelvi feldolgozási (NLP) modellarchitektúra. A T5 ígéretes architektúra a helyesírás-javításhoz, amelyről azt találtuk, hogy kísérleteink során jól teljesít. A T5 modellek könnyen kutathatók, fejleszthetők és betaníthatók a nyílt forráskódú mélytanulási keretrendszereknek és a folyamatos tudományos és vállalati kutatásoknak köszönhetően.

A T5-tel azonban nehéz gyártási szintű, alacsony késleltetésű következtetést levonni. Például egy PyTorch T5-tel egyetlen következtetés 45 milliszekundumot vesz igénybe a négy NVIDIA V100 Tensor Core GPU egyikén, amelyek egy Amazon Elastic Compute Cloud (EC2) p3.8xlarge példányt tartalmaznak. (Az összes közölt következtetési szám 9 token bemenetére és 11 token kimenetére vonatkozik. A T5 architektúrák késleltetése érzékeny a bemeneti és a kimeneti hosszra egyaránt.)

Az alacsony késleltetésű, költséghatékony T5-következtetés egy ismert probléma, amelyről több AWS-ügyfél is beszámolt az Amazon Search-on kívül, ami növeli motivációnkat, hogy hozzájáruljunk ehhez a bejegyzéshez. Ahhoz, hogy az offline tudományos teljesítményből az ügyfelek felé irányuló termelési szolgáltatássá váljon, az Amazon Search a következő kihívásokkal néz szembe:

  • Késleltetés – Hogyan valósíthatunk meg T5-következtetést 50 ezredmásodpercnél rövidebb P99-latencia alatt
  • áteresztőképesség – Hogyan kell kezelni a nagyszabású egyidejű következtetési kéréseket
  • Költséghatékonyság – Hogyan tartsuk ellenőrzés alatt a költségeket

A bejegyzés további részében elmagyarázzuk, hogyan működik az NVIDIA következtetésoptimalizáló verem – nevezetesen a NVIDIA TensorRT fordító és a nyílt forráskód NVIDIA Triton következtetés szerver– megoldja ezeket a kihívásokat. Olvas Az NVIDIA sajtóközleménye hogy tájékozódjon a frissítésekről.

NVIDIA TensorRT: Költségek és késleltetés csökkentése következtetésoptimalizálással

A mély tanulási keretrendszerek kényelmesek a tudományban való gyors iterációhoz, és számos funkcióval rendelkeznek a tudományos modellezéshez, az adatbetöltéshez és a képzés optimalizálásához. Azonban ezeknek az eszközöknek a többsége szuboptimális a következtetéshez, amihez csak minimális operátorkészletre van szükség a mátrixszorzáshoz és az aktiválási függvényekhez. Ezért jelentős előnyök érhetők el, ha egy speciális, csak előrejelzést biztosító alkalmazást használunk ahelyett, hogy következtetéseket futtatnánk a mély tanulási fejlesztési keretrendszerben.

Az NVIDIA TensorRT egy SDK a nagy teljesítményű mély tanulási következtetésekhez. A TensorRT optimalizált futási időt biztosít az NVIDIA GPU-kon elérhető alacsony szintű optimalizált kernelekkel, valamint egy csak következtetésre épülő modellgráfot, amely optimalizált sorrendbe rendezi át a következtetések számítását.

A következő részben a TensorRT mögött zajló részletekről és a teljesítmény gyorsításáról fogunk beszélni.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.

  1. Csökkentett pontosság maximalizálja az átviteli sebességet az FP16 vagy INT8 segítségével a modellek kvantálásával a helyesség megőrzése mellett.
  2. Réteg és tenzor fúzió optimalizálja a GPU-memória és a sávszélesség használatát azáltal, hogy a rendszermagban lévő csomópontokat egyesíti a kernelindítási késleltetés elkerülése érdekében.
  3. Kernel automatikus hangolása kiválasztja a legjobb adatrétegeket és algoritmusokat a cél GPU-platform és az adatmag-alakzatok alapján.
  4. Dinamikus tenzor memória minimalizálja a memóriaterületet azáltal, hogy felszabadítja a köztes eredmények felesleges memóriafelhasználását, és hatékonyan használja újra a memóriát a tenzorokhoz.
  5. Többfolyamos végrehajtás méretezhető kialakítást használ több bemeneti adatfolyam párhuzamos feldolgozásához a dedikált CUDA-folyamokkal.
  6. Time Fusion optimalizálja az ismétlődő neurális hálózatokat időbeli lépésekkel dinamikusan generált kernelekkel.

A T5 transzformátorrétegeket használ felépítései építőelemeiként. Az NVIDIA TensorRT 8.2 legújabb kiadása új optimalizálásokat vezet be a T5 és GPT-2 modellekhez a valós idejű következtetések érdekében. A következő táblázatban láthatjuk a TensorRT-vel végzett gyorsulást egyes nyilvános T5-modelleknél, amelyek Amazon EC2G4dn példányokon futnak, NVIDIA T4 GPU-kkal és EC2 G5 példányokkal, NVIDIA A10G GPU-kkal.

 

Modell Példa Kiindulási Pytorch késleltetés (ms) TensorRT 8.2 késleltetés (ms) Gyorsulás a HF alapvonalhoz képest
FP32 FP32 FP16 FP32 FP16
Encoder Decoder Végtől végig Encoder Decoder Végtől végig Encoder Decoder Végtől végig Végtől végig Végtől végig
t5-kicsi g4dn.xlarge 5.98 9.74 30.71 1.28 2.25 7.54 0.93 1.59 5.91 407.40% 519.34%
g5.xlarge 4.63 7.56 24.22 0.61 1.05 3.99 0.47 0.80 3.19 606.66% 760.01%
t5-alap g4dn.xlarge 11.61 19.05 78.44 3.18 5.45 19.59 3.15 2.96 13.76 400.48% 569.97%
g5.xlarge 8.59 14.23 59.98 1.55 2.47 11.32 1.54 1.65 8.46 530.05% 709.20%

Az optimalizálással és a csatolt teljesítmény replikációjával kapcsolatos további információkért lásd: A T5 és GPT-2 optimalizálása valós idejű következtetésekhez az NVIDIA TensorRT segítségével.

Fontos megjegyezni, hogy az összeállítás megőrzi a modell pontosságát, mivel a következtetési környezeten és a számítási ütemezésen működik, így a modelltudomány változatlan marad – ellentétben a súlyeltávolítás tömörítésével, mint például a desztilláció vagy a metszés. Az NVIDIA TensorRT lehetővé teszi a fordítás és a kvantálás kombinálását a további előnyök érdekében. A kvantálásnak kettős előnye van a legújabb NVIDIA hardvereken: csökkenti a memóriahasználatot, és lehetővé teszi az NVIDIA Tensor Core-ok, a DL-specifikus cellák használatát, amelyek vegyes pontossággal futtatják az egyesített mátrix-szorzás-összeadást.

Az Amazon Search Hugging Face T5 modellel végzett kísérlete esetén a PyTorch lecserélése TensorRT-re a modellkövetkeztetés érdekében 534%-kal növeli a sebességet.

NVIDIA Triton: Alacsony késleltetésű, nagy áteresztőképességű következtetési szolgáltatás

A modern modellkiszolgáló megoldások az offline betanított modelleket vásárlói ML-alapú termékekké alakíthatják. Az ésszerű költségek ilyen mértékű fenntartása érdekében fontos, hogy alacsonyan tartsuk a kiszolgálási költségeket (HTTP-kezelés, elő- és utófeldolgozás, CPU-GPU kommunikáció), és teljes mértékben kihasználjuk a GPU-k párhuzamos feldolgozási képességét.

Az NVIDIA Triton egy következtetést kiszolgáló szoftver, amely széleskörű támogatást javasol a modellfutási környezetekhez (többek között NVIDIA TensorRT, ONNX, PyTorch, XGBoost) és infrastrukturális háttérrendszerekhez, beleértve a GPU-kat, CPU-kat és AWS Inferentia.

Az ML-gyakorlók több okból is szeretik a Tritont. Dinamikus kötegelési képessége lehetővé teszi a következtetési kérelmek felhalmozását egy felhasználó által meghatározott késleltetés alatt és a felhasználó által meghatározott maximális kötegméreten belül, így a GPU-következtetés kötegelt, a CPU-GPU kommunikációs többletterhelést amortizálva. Vegye figyelembe, hogy a dinamikus kötegelés szerveroldalon és nagyon rövid időkereteken belül történik, így a kérelmező ügyfél továbbra is szinkron, közel valós idejű hívási élményben van. A Triton felhasználók élvezhetik a párhuzamos modell-végrehajtási kapacitást is. A GPU-k nagy teljesítményű multitaskerek, amelyek kiválóan teljesítenek a számításigényes munkaterhelések párhuzamos végrehajtásában. A Triton maximalizálja a GPU kihasználtságát és átviteli sebességét a CUDA-folyamok használatával több modellpéldány egyidejű futtatásához. Ezek a modellpéldányok lehetnek különböző keretrendszerekből származó különböző modellek különböző használati esetekre, vagy ugyanazon modell közvetlen másolatai. Ez közvetlen átviteli sebességet jelent, ha elegendő tétlen GPU-memóriája van. Ezenkívül, mivel a Triton nincs egy konkrét DL-fejlesztési kerethez kötve, lehetővé teszi a tudósok számára, hogy teljes mértékben kifejezzék magukat, az általuk választott eszközzel.

Az AWS-en futó Tritonnal az Amazon Search jobb kiszolgálásra számít Amazon.com ügyfeleket, és alacsony költséggel teljesítik a késleltetési követelményeket. A TensorRT futtatókörnyezet és a Triton szerver közötti szoros integráció megkönnyíti a fejlesztési élményt. Az AWS felhőinfrastruktúra használatával percek alatt skálázható fel vagy csökkenhet az átviteli teljesítményigények alapján, miközben magasan tartja a lécet, illetve a megbízhatóságot és a biztonságot.

Hogyan csökkenti az AWS a belépési akadályt

Míg az Amazon Search ezt a kísérletet az Amazon EC2 infrastruktúrán végezte, más AWS-szolgáltatások is léteznek a legkorszerűbb mély tanulási megoldások fejlesztésének, képzésének és üzemeltetésének elősegítésére.

Például az AWS és az NVIDIA együttműködött a Triton Inference Server felügyelt megvalósításának kiadásában Amazon SageMaker ; további információkért lásd Telepítsen gyors és méretezhető mesterséges intelligenciát az NVIDIA Triton Inference Server segítségével az Amazon SageMakerben. Az AWS a Hugging Face-szel is együttműködött, hogy menedzselt, optimalizált integrációt dolgozzon ki az Amazon SageMaker és a Hugging Face Transformers között, amely nyílt forráskódú keretrendszer, amelyből az Amazon Search T5 modell származik. olvass tovább a címen https://aws.amazon.com/machine-learning/hugging-face/.

Arra biztatjuk az ügyfeleket, akik késleltetésre érzékeny CPU- és GPU-mély tanulást kiszolgáló alkalmazásokkal rendelkeznek, hogy fontolják meg az NVIDIA TensorRT és a Triton használatát az AWS-en. Tudassa velünk, mit épít!

Szenvedélyes a mély tanulás és a mély tanuláson alapuló megoldások készítése az Amazon Search számára? Nézze meg a mi karrier oldal.


A szerzőkről

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.RJ a Search M5 csapatának mérnöke, aki nagyszabású mély tanulási rendszerek kiépítésére irányuló erőfeszítéseket vezet a képzéshez és a következtetésekhez. A munkán kívül különféle ételeket fedez fel, és ütősportokat űz.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Hemant Pugaliya a Search M5 alkalmazott tudósa. A legújabb természetes nyelvi feldolgozási és mély tanulási kutatásokon dolgozik, hogy világszerte javítsa az Amazon-vásárlási élményt. Kutatási területe a természetes nyelvi feldolgozás és a nagyméretű gépi tanulási rendszerek. Munkán kívül szeret túrázni, főzni és olvasni.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Andy Sun szoftvermérnök és a keresési helyesírás-javítás műszaki vezetője. Kutatási területe a mély tanulási következtetési késleltetés optimalizálása és a gyors kísérleti platformok építése. A munkán kívül szeret filmezni és az akrobatikát.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Le Cai az Amazon Search szoftvermérnöke. A keresési helyesírás-javítási teljesítmény javításán dolgozik, hogy segítse az ügyfeleket a vásárlási élményben. A nagy teljesítményű online következtetésekre és a mély tanulási modell elosztott képzési optimalizálására összpontosít. Munkán kívül szeret síelni, túrázni és kerékpározni.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Anthony Ko jelenleg szoftvermérnökként dolgozik a Search M5-nél Palo Alto, CA. A modelltelepítéshez és a következtetések optimalizálásához szükséges eszközök és termékek létrehozásán dolgozik. A munkán kívül szeret főzni és ütősportolni.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Olivier Cruchant a franciaországi székhelyű AWS gépi tanulási specialista megoldások építésze. Az Olivier segít az AWS-ügyfeleknek – a kis startupoktól a nagyvállalatokig – éles szintű gépi tanulási alkalmazások fejlesztésében és üzembe helyezésében. Szabadidejében szívesen olvas kutatási cikkeket, és barátaival és családjával fedezi fel a vadonban.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Anish Mohan az NVIDIA gépi tanulási építészmérnöke, és a Seattle-i régióban az ML- és DL-kapcsolatok műszaki vezetője.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Jiahong Liu az NVIDIA Cloud Service Provider csapatának megoldástervezője. Segíti az ügyfeleket a gépi tanulási és mesterséges intelligencia-megoldások elfogadásában, amelyek az NVIDIA gyorsított számítástechnikáját használják ki a képzési és következtetési kihívások megoldására. Szabadidejében szereti az origamit, a barkácsprojekteket és a kosárlabdát.

Hogyan ér el az Amazon Search alacsony késleltetésű, nagy áteresztőképességű T5 következtetést az NVIDIA Triton segítségével az AWS PlatoBlockchain Data Intelligence rendszeren. Függőleges keresés. Ai.Eliuth Triana az NVIDIA fejlesztői kapcsolatok menedzsere. Összeköti az Amazon és az AWS termékvezetőit, fejlesztőit és tudósait az NVIDIA technológusaival és termékvezetőivel, hogy felgyorsítsa az Amazon ML/DL munkaterhelését, az EC2-termékeket és az AWS AI-szolgáltatásokat. Emellett Eliuth szenvedélyes hegyikerékpáros, síelő és pókerjátékos.

Időbélyeg:

Még több AWS gépi tanulás