Dit bericht is geschreven in samenwerking met Anthony Medeiros, Manager Solutions Engineering and Architecture voor Noord-Amerikaanse kunstmatige intelligentie, en Blake Santschi, Business Intelligence Manager, van Schneider Electric. Andere experts van Schneider Electric zijn onder meer Jesse Miller, Somik Chowdhury, Shaswat Babhulgaonkar, David Watkins, Mark Carlson en Barbara Sleczkowski.
Enterprise Resource Planning (ERP)-systemen worden door bedrijven gebruikt om verschillende bedrijfsfuncties, zoals boekhouding, verkoop of orderbeheer, in één systeem te beheren. Ze worden met name routinematig gebruikt om informatie met betrekking tot klantaccounts op te slaan. Verschillende organisaties binnen een bedrijf kunnen verschillende ERP-systemen gebruiken en het samenvoegen ervan is een complexe technische uitdaging op grote schaal die domeinspecifieke kennis vereist.
Schneider Electric is leider in de digitale transformatie van energiebeheer en industriële automatisering. Om zo goed mogelijk aan de behoeften van hun klanten te kunnen voldoen, moet Schneider Electric de koppelingen tussen de accounts van gerelateerde klanten in hun ERP-systemen bijhouden. Naarmate hun klantenbestand groeit, komen er dagelijks nieuwe klanten bij en moeten hun accountteams deze nieuwe klanten handmatig sorteren en koppelen aan de juiste moederentiteit.
Het besluit tot koppeling is gebaseerd op de meest recente informatie die openbaar beschikbaar is op internet of in de media, en kan worden beïnvloed door recente overnames, marktnieuws of herstructureringen van divisies. Een voorbeeld van het koppelen van accounts zou zijn om de relatie tussen Amazon en zijn dochteronderneming Whole Foods Market te identificeren.(bron)].
Schneider Electric zet grote taalmodellen in vanwege hun mogelijkheden bij het beantwoorden van vragen in verschillende kennisspecifieke domeinen. De datum waarop het model is getraind, beperkt de kennis ervan. Ze hebben deze uitdaging aangepakt door gebruik te maken van een Retriever-Augmented Generation open source groottaalmodel dat beschikbaar is op Amazon SageMaker JumpStart om grote hoeveelheden externe kennis te verwerken die is verzameld en om zakelijke of publieke relaties tussen ERP-records te tonen.
Toen Schneider Electric begin 2023 besloot een deel van het koppelingsproces van accounts te automatiseren met behulp van kunstmatige intelligentie (AI), werkte het bedrijf samen met het AWS Machine Learning Solutions Lab (MLSL). Met de expertise van MLSL op het gebied van ML-advies en -uitvoering kon Schneider Electric een AI-architectuur ontwikkelen die de handmatige inspanningen bij het koppelen van workflows zou verminderen en snellere gegevenstoegang zou bieden aan hun downstream-analyseteams.
generatieve AI
Generatieve AI en grote taalmodellen (LLM’s) transformeren de manier waarop bedrijfsorganisaties traditioneel complexe uitdagingen op het gebied van de verwerking en het begrip van natuurlijke taal kunnen oplossen. Enkele van de voordelen die LLM's bieden, zijn onder meer de mogelijkheid om grote delen van de tekst te begrijpen en gerelateerde vragen te beantwoorden door mensachtige antwoorden te produceren. AWS maakt het gemakkelijk voor klanten om te experimenteren met LLM-workloads en deze te produceren door veel opties beschikbaar te stellen via Amazon SageMaker JumpStart, Amazonebodem en Amazone Titan.
Externe kennisverwerving
LLM's staan bekend om hun vermogen om menselijke kennis te comprimeren en hebben opmerkelijke capaciteiten getoond bij het beantwoorden van vragen op verschillende kennisspecifieke domeinen, maar hun kennis wordt beperkt door de datum waarop het model is getraind. We pakken deze informatie-onderbreking aan door de LLM te koppelen aan een Google Search API om een krachtige Retrieval Augmented LLM (RAG) te leveren die de uitdagingen van Schneider Electric aanpakt. De RAG kan grote hoeveelheden externe kennis uit de Google-zoekopdracht verwerken en zakelijke of publieke relaties tussen ERP-records weergeven.
Zie het volgende voorbeeld:
Vraag: Wie is het moederbedrijf van One Medical?
Google-query: “Eén medisch moederbedrijf” → informatie → LLM
Antwoord: One Medical, een dochteronderneming van Amazon...
Het voorgaande voorbeeld (uit de klantendatabase van Schneider Electric) betreft een overname die in februari 2023 plaatsvond en dus niet door de LLM alleen zou worden opgepakt vanwege kennisuitval. Het uitbreiden van de LLM met Google Search garandeert de meest actuele informatie.
Flan-T5-model
In dat project gebruikten we het Flan-T5-XXL-model van de Vlaai-T5 familie van modellen.
De Flan-T5-modellen zijn instructie-afgestemd en kunnen daarom verschillende zero-shot NLP-taken uitvoeren. In onze stroomafwaartse taak was het niet nodig om een enorme hoeveelheid wereldkennis te huisvesten, maar eerder om goed te presteren op het gebied van het beantwoorden van vragen, gegeven een context van teksten die via zoekresultaten werden verstrekt, en daarom presteerde het T11-model met 5B-parameters goed.
JumpStart zorgt voor een gemakkelijke inzet van deze modelfamilie door middel van Amazon SageMaker Studio en de SageMaker SDK. Dit omvat Flan-T5 Small, Flan-T5 Base, Flan-T5 Large, Flan-T5 XL en Flan-T5 XXL. Bovendien biedt JumpStart een paar versies van Flan-T5 XXL met verschillende kwantiseringsniveaus. We hebben Flan-T5-XXL geïmplementeerd op een eindpunt voor gevolgtrekking met behulp van Amazon SageMaker Studio Jumpstart.
Ophalen van Augmented LLM met LangChain
LangChain is een populair en snelgroeiend raamwerk dat de ontwikkeling van applicaties mogelijk maakt die worden aangedreven door LLM's. Het is gebaseerd op het concept van ketens, dit zijn combinaties van verschillende componenten die zijn ontworpen om de functionaliteit van LLM's voor een bepaalde taak te verbeteren. Het stelt ons bijvoorbeeld in staat om maatwerk te leveren prompts en integreer LLM's met verschillende tools zoals externe zoekmachines of gegevensbronnen. In onze use-case gebruikten we Google Serper component om op internet te zoeken en het Flan-T5-XXL-model geïmplementeerd dat beschikbaar is Amazon SageMaker Studio Jumpstart. LangChain voert de algehele orkestratie uit en zorgt ervoor dat de zoekresultatenpagina's in de Flan-T5-XXL-instantie worden ingevoerd.
De Retrieval-Augmented Generation (RAG) bestaat uit twee stappen:
- Ophalen van relevante tekstfragmenten uit externe bronnen
- toenemen van de chunks met context in de prompt die aan de LLM wordt gegeven.
Voor de gebruikssituatie van Schneider Electric gaat de RAG als volgt te werk:
- De opgegeven bedrijfsnaam wordt gecombineerd met een vraag als “Wie is het moederbedrijf van X”, waarbij X het opgegeven bedrijf is) en doorgegeven aan een Google-query met behulp van de Serper AI
- De geëxtraheerde informatie wordt gecombineerd met de prompt en de oorspronkelijke vraag en voor antwoord doorgegeven aan de LLM.
Het volgende diagram illustreert dit proces.
Gebruik de volgende code om een eindpunt te maken:
Zoekhulpmiddel instantiëren:
In de volgende code koppelen we de ophaal- en augmentatiecomponenten aan elkaar:
De snelle techniek
De combinatie van de context en de vraag wordt de prompt genoemd. We merkten dat de algemene vraag die we gebruikten (variaties rond het vragen naar het moederbedrijf) goed presteerde voor de meeste publieke sectoren (domeinen), maar niet goed generaliseerde naar het onderwijs of de gezondheidszorg, omdat het begrip moederbedrijf daar geen betekenis heeft. Voor onderwijs gebruikten we “X”, terwijl we voor gezondheidszorg “Y” gebruikten.
Om deze domeinspecifieke promptselectie mogelijk te maken, moesten we ook het domein identificeren waartoe een bepaald account behoort. Hiervoor hebben we ook een RAG gebruikt waarbij een meerkeuzevraag “Wat is het domein van {account}?” als eerste stap, en op basis van het antwoord hebben we als tweede stap navraag gedaan bij de ouder van het account, waarbij we de relevante prompt gebruikten. Zie de volgende code:
De sectorspecifieke aanwijzingen hebben de algehele prestaties verbeterd van 55% naar 71% van de nauwkeurigheid. Over het geheel genomen zijn de inspanningen en de tijd die zijn geïnvesteerd om effectief te ontwikkelen effectief prompts lijken de kwaliteit van de LLM-respons aanzienlijk te verbeteren.
RAG met tabelgegevens (SEC-10k)
De SEC 10K-deponeringen zijn een andere betrouwbare bron van informatie voor dochterondernemingen en onderafdelingen die jaarlijks door beursgenoteerde bedrijven worden ingediend. Deze documenten zijn rechtstreeks beschikbaar op SEC EDGAR of doorheen BodyWatch API.
We gaan ervan uit dat de informatie in tabelvorm wordt gegeven. Hieronder staat een pseudo csv dataset die het oorspronkelijke formaat van de SEC-10K-dataset nabootst. Het is mogelijk om meerdere samen te voegen csv gegevensbronnen in een gecombineerd panda-dataframe:
# A pseudo dataset similar by schema to the CorpWatch API dataset
df.head()
- Door SEO aangedreven content en PR-distributie. Word vandaag nog versterkt.
- PlatoData.Network Verticale generatieve AI. Versterk jezelf. Toegang hier.
- PlatoAiStream. Web3-intelligentie. Kennis versterkt. Toegang hier.
- PlatoESG. carbon, CleanTech, Energie, Milieu, Zonne, Afvalbeheer. Toegang hier.
- Plato Gezondheid. Intelligentie op het gebied van biotech en klinische proeven. Toegang hier.
- Bron: https://aws.amazon.com/blogs/machine-learning/schneider-electric-leverages-retrieval-augmented-llms-on-sagemaker-to-ensure-real-time-updates-in-their-erp-systems/