Detta är ett gästinlägg av Kustomers Senior Software & Machine Learning Engineer, Ian Lantzy, och AWS-teamet Umesh Kalaspurkar, Prasad Shetty och Jonathan Greifenberger.
Med Kustomers egna ord, "Kustomer är den omnikanaliga SaaS CRM-plattformen som ombildar företagskundtjänst för att leverera enastående upplevelser. Byggd med intelligent automation, skalar vi för att möta behoven hos alla kontaktcenter och företag genom att förena data från flera källor och göra det möjligt för företag att leverera enkel, konsekvent och personlig service och support genom en enda tidslinjevy."
Kustomer ville ha möjligheten att snabbt analysera stora volymer supportkommunikation för sina företagskunder – kundupplevelse och serviceorganisationer – och automatisera upptäckten av information som slutkundens avsikt, kundtjänstfråga och andra relevanta insikter relaterade till konsumenten. Att förstå dessa egenskaper kan hjälpa CX-organisationer att hantera tusentals inkommande supporte-postmeddelanden genom att automatiskt klassificera och kategorisera innehållet. Kustomer utnyttjar Amazon SageMaker att hantera analysen av den inkommande supportkommunikationen via deras AI-baserade Kustomer IQ plattform. Kustomer IQs tjänst för konversationsklassificering kan kontextualisera konversationer och automatisera annars tråkiga och repetitiva uppgifter, vilket minskar agentens distraktion och den totala kostnaden per kontakt. Denna och Kustomers andra IQ-tjänster har ökat produktiviteten och automatiseringen för sina företagskunder.
I det här inlägget pratar vi om hur Kustomer använder anpassade Docker-bilder för SageMaker-träning och slutledning, vilket underlättar integrationen och effektiviserar processen. Med detta tillvägagångssätt klassificerar Kustomers företagskunder automatiskt över 50 70 supporte-postmeddelanden varje månad med upp till XNUMX % noggrannhet.
Bakgrund och utmaningar
Kustomer använder en anpassad textklassificeringspipeline för sin tjänst för konversationsklassificering. Detta hjälper dem att hantera tusentals förfrågningar om dagen via automatisk klassificering och kategorisering med hjälp av SageMakers tränings- och slutledningsorkestrering. Träningsmotorn för konversationsklassificering använder anpassade Docker-bilder för att bearbeta data och träna modeller med hjälp av historiska konversationer och förutsäger sedan de ämnen, kategorier eller andra anpassade etiketter som en viss agent behöver för att klassificera konversationerna. Sedan använder prediktionsmotorn de tränade modellerna med en annan anpassad docker-bild för att kategorisera konversationer, som organisationer använder för att automatisera rapportering eller dirigera konversationer till ett specifikt team baserat på dess ämne.
SageMaker-kategoriseringsprocessen börjar med att upprätta en utbildnings- och slutledningspipeline som kan tillhandahålla textklassificering och kontextuella rekommendationer. En typisk installation skulle implementeras med serverlösa tillvägagångssätt som AWS Lambda för dataförbehandling och efterbearbetning eftersom det har ett minimalt provisioneringskrav med en effektiv prissättningsmodell på begäran. Men att använda SageMaker med beroenden som TensorFlow, NumPy och Pandas kan snabbt öka modellpaketets storlek, vilket gör den övergripande distributionsprocessen besvärlig och svår att hantera. Kustomer använde anpassade Docker-bilder för att övervinna dessa utmaningar.
Anpassade Docker-bilder ger betydande fördelar:
- Tillåter större komprimerade paketstorlekar (över 10 GB), som kan innehålla populära ramverk för maskininlärning (ML) som TensorFlow, MXNet, PyTorch eller andra.
- Låter dig ta med anpassad kod eller algoritmer utvecklade lokalt till Amazon SageMaker Studio anteckningsböcker för snabb iteration och modellträning.
- Undviker förbearbetningsförseningar orsakade i Lambda vid uppackning av distributionspaket.
- Erbjuder flexibilitet för att sömlöst integreras med interna system.
- Framtida kompatibilitet och skalbarhet gör det lättare att konvertera en tjänst med Docker istället för att behöva paketera .zip-filer i en Lambda-funktion.
- Minskar handläggningstiden för en CI/CD-distributionspipeline.
- Ger Docker-förtrogenhet inom teamet och användarvänlighet.
- Ger tillgång till datalager via API:er och en backend-körning.
- Erbjuder bättre stöd för att ingripa för eventuell förbearbetning eller efterbearbetning som Lambda skulle kräva en separat beräkningstjänst för varje process (som utbildning eller driftsättning).
Lösningsöversikt
Kategorisering och märkning av supportmejl är ett kritiskt steg i kundsupportprocessen. Det gör att företag kan dirigera konversationer till rätt team och på hög nivå förstå vad deras kunder kontaktar dem om. Kustomers företagskunder hanterar tusentals samtal varje dag, så det är en utmaning att klassificera i stor skala. Att automatisera denna process hjälper agenter att bli mer effektiva och ge mer sammanhållen support, och hjälper deras kunder genom att snabbare koppla dem till rätt personer.
Följande diagram illustrerar lösningsarkitekturen:
Konversationsklassificeringsprocessen börjar med att företagskunden ger Kustomer tillåtelse att skapa en utbildnings- och slutledningspipeline som kan hjälpa dem med textklassificering och kontextuella rekommendationer. Kustomer exponerar ett användargränssnitt för sina kunder för att övervaka tränings- och slutledningsprocessen, som implementeras med SageMaker tillsammans med TensorFlow-modeller och anpassade Docker-bilder. Processen att bygga och använda en klassificerare är uppdelad i fem huvudarbetsflöden, som koordineras av en arbetartjänst som körs på Amazon ECS. För att koordinera pipelinehändelserna och utlösa utbildningen och implementeringen av modellen använder arbetaren en Amazon SQS kö och integreras direkt med SageMaker med den AWS-försedda Node.js SDK. Arbetsflödena är:
- Dataexport
- Förbehandling av data
- Utbildning
- konfiguration
- Slutledning
Dataexport
Dataexportprocessen körs på begäran och startar med en godkännandeprocess från Kustomers företagskund för att bekräfta användningen av e-postdata för analys. Data som är relevanta för klassificeringsprocessen fångas in via det första e-postmeddelandet från slutkunden. Till exempel innehåller ett supporte-postmeddelande vanligtvis den fullständiga sammanhängande tanken på problemet med detaljer om problemet. Som en del av exportprocessen samlas e-postmeddelandena från datalagret (MongoDB och Amazon OpenSearch) och sparas i Amazon enkel lagringstjänst (Amazon S3).
Förbehandling av data
Dataförbehandlingssteget rengör datasetet för utbildnings- och slutledningsarbetsflöden genom att ta bort alla HTML-taggar från kunders e-postmeddelanden och mata dem genom flera rengörings- och saneringssteg för att upptäcka eventuell felaktig HTML. Denna process inkluderar användningen av Hugging Face tokenizers och transformatorer. När rensningsprocessen är klar läggs eventuella ytterligare anpassade tokens som krävs för träning till i utdatadataset.
Under förbearbetningsfasen anropar en Lambda-funktion en anpassad Docker-bild. Denna bild består av en Python 3.8 slim bas, den AWS Lambda Python Runtime Interface Client, och beroenden som t.ex numpy och pandas. Den anpassade Docker-bilden lagras på Amazon Elastic Container Registry (Amazon ECR) och matas sedan genom CI/CD-pipelinen för distribution. Den distribuerade Lambda-funktionen samplar data för att generera tre distinkta datauppsättningar per klassificerare:
- Utbildning – Används för själva träningsprocessen
- Validering – Används för validering under TensorFlow-utbildningsprocessen
- Testa – Används mot slutet av utbildningsprocessen för jämförelser av metrikmodeller
De genererade utdatauppsättningarna är Pandas pickle-filer, som lagras i Amazon S3 för att användas av utbildningsstadiet.
Utbildning
Kustomers anpassade träningsbild använder en TensorFlow 2.7 GPU-optimerad docker bild som bas. Anpassad kod, beroenden och basmodeller ingår innan den anpassade docker-utbildningsbilden laddas upp till ECR. P3-instanstyper används för träningsprocessen och att använda en GPU-optimerad basbild hjälper till att göra träningsprocessen så effektiv som möjligt. Amazon SageMaker används med denna anpassade docker-bild för att träna TensorFlow-modeller som sedan lagras i S3. Anpassade mätvärden beräknas och sparas också för att hjälpa till med ytterligare funktioner som modelljämförelser och automatisk omskolning. När utbildningsstadiet är klart meddelas AI-arbetaren och företagskunden kan starta implementeringsarbetsflödet.
konfiguration
För distributionsarbetsflödet skapas en anpassad docker-inferensbild med hjälp av en TensorFlow-serverbasbild (byggd speciellt för snabb slutledning). Ytterligare kod och beroenden som numPy, Pandas, custom NL, etc. ingår för att ge ytterligare funktionalitet, såsom formatering och rengöring av ingångar före slutledning. FastAPI ingår också som en del av den anpassade bilden och används för att tillhandahålla REST API-slutpunkter för slutsatser och hälsokontroller. SageMaker konfigureras sedan för att distribuera TensorFlow-modellerna sparade i S3 med slutledningsbilden på beräkningsoptimerade ml.c5 AWS-instanser för att generera högpresterande slutpunkter. Varje slutpunkt skapas för att användas av en enskild kund för att isolera deras modeller och data.
Slutledning
När distributionsarbetsflödet är klart tar slutledningsarbetsflödet över. Alla första inkommande supporte-postmeddelanden skickas via inferens-API:et för de distribuerade klassificerare som är specifika för den kunden. De distribuerade klassificerarna utför sedan textklassificering på vart och ett av dessa e-postmeddelanden, var och en genererar klassificeringsetiketter för kunden.
Möjliga förbättringar och anpassningar
Kustomer överväger att utöka lösningen med följande förbättringar:
- DLC:er som kramar ansikten – Kustomer använder för närvarande TensorFlows bas Docker-bilder för dataförbehandlingssteget och planerar att migrera till Hugging Face Deep Learning Containers (DLC). Detta hjälper dig att starta träningsmodeller omedelbart och hoppar över den komplicerade processen att bygga och optimera dina träningsmiljöer från grunden. För mer information, se Hugging Face på Amazon SageMaker.
- Återkopplingsslinga – Du kan implementera en återkopplingsslinga med hjälp av aktivt lärande eller förstärkande inlärningstekniker för att öka modellens övergripande effektivitet.
- Integration med andra interna system – Kustomer vill ha möjligheten att integrera textklassificeringen med andra system som Smart Suggestions, som är en annan Kustomer IQ-tjänst som tittar igenom hundratals genvägar och föreslår de genvägar som är mest relevanta för en kundfråga, vilket förbättrar agenternas svarstider och prestanda.
Slutsats
I det här inlägget diskuterade vi hur Kustomer använder anpassade Docker-bilder för SageMaker-träning och slutledning, vilket underlättar integrationen och effektiviserar processen. Vi visade hur Kustomer utnyttjar Lambda och SageMaker med anpassade Docker-bilder som hjälper till att implementera textklassificeringsprocessen med förbearbetnings- och efterbearbetningsarbetsflöden. Detta ger flexibilitet för att använda större bilder för att skapa modeller, utbildning och slutsatser. Container image-stöd för Lambda låter dig anpassa din funktion ännu mer, vilket öppnar upp för många nya användningsfall för serverlös ML. Lösningen drar fördel av flera AWS-tjänster, inklusive SageMaker, Lambda, Docker images, Amazon ECR, Amazon ECS, Amazon SQS och Amazon S3.
Om du vill lära dig mer om Kustomer, uppmuntrar vi dig att besöka Kustomer hemsida och utforska deras fallstudier.
Klicka här. för att börja din resa med Amazon SageMaker. För praktisk erfarenhet kan du referera till Amazon SageMaker verkstad.
Om författarna
Umesh Kalaspurkar är en New York-baserad lösningsarkitekt för AWS. Han har mer än 20 års erfarenhet av design och leverans av digitala innovations- och transformationsprojekt, över företag och nystartade företag. Han motiveras av att hjälpa kunder att identifiera och övervinna utmaningar. Utanför jobbet tycker Umesh om att vara pappa, åka skidor och resa.
Ian Lantzy är en senior mjukvaru- och maskininlärningsingenjör för Kustomer och är specialiserad på att ta forskningsuppgifter inom maskininlärning och omvandla dem till produktionstjänster.
Prasad Shetty är en Boston-baserad lösningsarkitekt för AWS. Han har byggt mjukvaruprodukter och har lett modernisering och digital innovation inom produkter och tjänster över företag i över 20 år. Han brinner för att driva molnstrategi och antagande, och att utnyttja teknik för att skapa fantastiska kundupplevelser. På sin fritid tycker Prasad om att cykla och resa.
Jonathan Greifenberger är en New York-baserad Senior Account Manager för AWS med 25 års erfarenhet av IT-branschen. Jonathan leder ett team som hjälper kunder från olika branscher och vertikaler på deras molnanpassning och moderniseringsresa.
- Myntsmart. Europas bästa bitcoin- och kryptobörs.
- Platoblockchain. Web3 Metaverse Intelligence. Kunskap förstärkt. FRI TILLGÅNG.
- CryptoHawk. Altcoin radar. Gratis provperiod.
- Källa: https://aws.amazon.com/blogs/machine-learning/how-kustomer-utilizes-custom-docker-images-amazon-sagemaker-to-build-a-text-classification-pipeline/
- "
- &
- 100
- 20 år
- 7
- Om oss
- tillgång
- Konto
- tvärs
- aktiv
- Annat
- Antagande
- Fördel
- fördelar
- medel
- AI
- algoritmer
- Alla
- amason
- analys
- Annan
- api
- API: er
- tillvägagångssätt
- arkitektur
- Automation
- AWS
- Där vi får lov att vara utan att konstant prestera,
- SLUTRESULTAT
- Byggnad
- företag
- kapacitet
- fall
- orsakas
- utmanar
- utmaningar
- Kontroller
- klassificering
- Rengöring
- cloud
- koda
- Trygghet i vårdförloppet
- Företag
- Compute
- Konsumenten
- Behållare
- Behållare
- innehåller
- innehåll
- Konversation
- konversationer
- kundupplevelse
- Kundservice
- Helpdesk
- Kunder
- datum
- dag
- fördröjningar
- leverans
- Efterfrågan
- utplacering
- Designa
- utvecklade
- digital
- Upptäckten
- Hamnarbetare
- drivande
- Effektiv
- effektivitet
- möjliggör
- uppmuntra
- Slutpunkt
- ingenjör
- Företag
- händelser
- exempel
- expanderande
- erfarenhet
- Erfarenheter
- Ansikte
- SNABB
- Fed
- återkoppling
- Förnamn
- Flexibilitet
- efter
- fungera
- funktionalitet
- generera
- Ge
- GPU
- stor
- Gäst
- gäst inlägg
- har
- Hälsa
- hjälpa
- hjälper
- Hög
- Hur ser din drömresa ut
- HTTPS
- Hundratals
- identifiera
- bild
- genomföra
- genomföras
- ingår
- Inklusive
- Öka
- ökat
- industrier
- industrin
- informationen
- Innovation
- insikter
- integrera
- integrering
- Intelligent
- uppsåt
- Gränssnitt
- fråga
- IT
- märkning
- Etiketter
- Large
- större
- LÄRA SIG
- inlärning
- Led
- Nivå
- hävstångs
- lokalt
- Maskinen
- maskininlärning
- Framställning
- chef
- Metrics
- ML
- modell
- modeller
- MongoDB
- mest
- New York
- orkestrering
- beställa
- organisationer
- Övriga
- annat
- Personer
- prestanda
- plattform
- Populära
- möjlig
- förutsägelse
- prissättning
- Problem
- process
- Produkt
- Produktion
- produktivitet
- Produkter
- projekt
- ge
- ger
- snabbt
- reducerande
- kräver
- Obligatorisk
- forskning
- respons
- REST
- Rutt
- Körning
- rinnande
- skalbarhet
- Skala
- sDK
- Server
- service
- Tjänster
- portion
- in
- Enkelt
- Storlek
- smarta
- So
- Mjukvara
- Lösningar
- specialiserat
- specifikt
- delas
- Etapp
- starta
- Startups
- förvaring
- lagra
- lagrar
- Strategi
- strippning
- studier
- väsentlig
- stödja
- System
- Diskussion
- uppgifter
- grupp
- tekniker
- Teknologi
- tusentals
- Genom
- tid
- tokens
- ämnen
- Utbildning
- Transformation
- förstå
- utsikt
- Vad
- inom
- ord
- Arbete
- år