Tegenwoordig is de meerderheid van onze klanten enthousiast over grote taalmodellen (LLM's) en denken ze na over hoe generatieve AI hun bedrijf zou kunnen transformeren. Het is echter geen gemakkelijke taak om dergelijke oplossingen en modellen naar de normale bedrijfsvoering te brengen. In dit bericht bespreken we hoe generatieve AI-toepassingen kunnen worden geoperationaliseerd met behulp van MLOps-principes die leiden tot Foundation Model Operations (FMOps). Verder duiken we diep in de meest voorkomende generatieve AI-gebruiksscenario's van tekst-naar-tekst-applicaties en LLM-bewerkingen (LLMOps), een subset van FMOps. De volgende afbeelding illustreert de onderwerpen die we bespreken.
Concreet introduceren we kort MLOps-principes en concentreren we ons op de belangrijkste onderscheidende factoren vergeleken met FMOps en LLMOps met betrekking tot processen, mensen, modelselectie en -evaluatie, gegevensprivacy en modelimplementatie. Dit geldt voor klanten die ze kant-en-klaar gebruiken, funderingsmodellen helemaal opnieuw maken of deze verfijnen. Onze aanpak is in gelijke mate van toepassing op zowel open-source- als propriรซtaire modellen.
Samenvatting van de ML-operationalisering
Zoals gedefinieerd in het bericht MLOps foundation roadmap voor ondernemingen met Amazon SageMaker, ML and operations (MLOps) is de combinatie van mensen, processen en technologie om machine learning (ML)-oplossingen efficiรซnt te produceren. Om dit te bereiken moet een combinatie van teams en personaโs samenwerken, zoals geรฏllustreerd in de volgende figuur.
Deze teams zijn als volgt:
- Geavanceerd analyseteam (data lake en data mesh) โ Data-ingenieurs zijn verantwoordelijk voor het voorbereiden en opnemen van gegevens uit meerdere bronnen, het bouwen van ETL-pijplijnen (extract, transformeren en laden) om de gegevens te beheren en te catalogiseren, en het voorbereiden van de noodzakelijke historische gegevens voor de ML-gebruiksscenarioโs. Deze data-eigenaren zijn gefocust op het bieden van toegang tot hun data aan meerdere bedrijfseenheden of teams.
- Datawetenschapsteam โ Datawetenschappers moeten zich concentreren op het creรซren van het beste model op basis van vooraf gedefinieerde Key Performance Indicators (KPIโs) die in notebooks werken. Na voltooiing van de onderzoeksfase moeten de datawetenschappers samenwerken met ML-ingenieurs om automatiseringen te creรซren voor het bouwen (ML-pijplijnen) en het implementeren van modellen in productie met behulp van CI/CD-pijplijnen.
- Zakelijk team โ Een producteigenaar is verantwoordelijk voor het definiรซren van de businesscase, vereisten en KPI's die moeten worden gebruikt om de modelprestaties te evalueren. De ML-consumenten zijn andere zakelijke belanghebbenden die de gevolgtrekkingsresultaten (voorspellingen) gebruiken om beslissingen te nemen.
- Platformteam โ Architecten zijn verantwoordelijk voor de algehele cloudarchitectuur van het bedrijf en hoe alle verschillende services met elkaar zijn verbonden. Beveiligings-MKB-bedrijven herzien de architectuur op basis van het bedrijfsbeveiligingsbeleid en de behoeften ervan. MLOps-ingenieurs zijn verantwoordelijk voor het bieden van een veilige omgeving voor datawetenschappers en ML-ingenieurs om de ML-use cases te produceren. Ze zijn met name verantwoordelijk voor het standaardiseren van CI/CD-pijplijnen, gebruikers- en servicerollen en het maken van containers, modelconsumptie, testen en implementatiemethodologie op basis van bedrijfs- en beveiligingsvereisten.
- Risico- en compliance-team โ In meer restrictieve omgevingen zijn auditors verantwoordelijk voor het beoordelen van de gegevens, code en modelartefacten en ervoor zorgen dat het bedrijf voldoet aan regelgeving, zoals gegevensprivacy.
Houd er rekening mee dat meerdere persona's door dezelfde persoon kunnen worden gedekt, afhankelijk van de schaalgrootte en MLOps-volwassenheid van het bedrijf.
Deze persona's hebben speciale omgevingen nodig om de verschillende processen uit te voeren, zoals geรฏllustreerd in de volgende afbeelding.
De omgevingen zijn als volgt:
- Platformbeheer โ De platformbeheeromgeving is de plek waar het platformteam toegang heeft om AWS-accounts aan te maken en de juiste gebruikers en gegevens te koppelen
- Data โ De datalaag, ook wel bekend als het datameer of data mesh, is de omgeving die data-ingenieurs of -eigenaren en zakelijke belanghebbenden gebruiken om de data voor te bereiden, ermee te communiceren en deze te visualiseren
- proefneming โ De datawetenschappers gebruiken een sandbox- of experimenteeromgeving om nieuwe bibliotheken en ML-technieken te testen om te bewijzen dat hun proof of concept bedrijfsproblemen kan oplossen
- Modelbouw, modeltest, modelimplementatie โ De modelbouw-, test- en implementatieomgeving is de laag van MLOps, waar datawetenschappers en ML-ingenieurs samenwerken om het onderzoek te automatiseren en naar productie te verplaatsen
- ML-beheer โ Het laatste stukje van de puzzel is de ML-governanceomgeving, waar alle model- en codeartefacten worden opgeslagen, beoordeeld en gecontroleerd door de overeenkomstige persona's
Het volgende diagram illustreert de referentiearchitectuur, die al is besproken in MLOps foundation roadmap voor ondernemingen met Amazon SageMaker.
Elke bedrijfseenheid beschikt over een eigen set ontwikkelings- (geautomatiseerde modeltraining en -bouw), preproductie- (automatisch testen) en productie- (modelimplementatie en -service) accounts om ML-gebruiksscenario's te produceren, die gegevens ophalen uit een gecentraliseerd of gedecentraliseerd datameer of gegevens gaas, respectievelijk. Alle geproduceerde modellen en code-automatisering worden opgeslagen in een gecentraliseerd toolaccount met behulp van de mogelijkheid van een modelregister. De infrastructuurcode voor al deze accounts is ondergebracht in een gedeeld serviceaccount (advanced analytics governance account) dat het platformteam kan abstraheren, templates maken, onderhouden en hergebruiken voor de onboarding op het MLOps-platform van elk nieuw team.
Generatieve AI-definities en verschillen met MLOps
In klassieke ML kan de voorgaande combinatie van mensen, processen en technologie u helpen uw ML-gebruiksscenario's te produceren. Bij generatieve AI vereist de aard van de gebruiksscenario's echter een uitbreiding van die mogelijkheden of nieuwe mogelijkheden. Eรฉn van deze nieuwe begrippen is het funderingsmodel (FM). Ze worden zo genoemd omdat ze kunnen worden gebruikt om een โโbreed scala aan andere AI-modellen te creรซren, zoals geรฏllustreerd in de volgende afbeelding.
FM is getraind op basis van terabytes aan gegevens en beschikt over honderden miljarden parameters om het volgende beste antwoord te kunnen voorspellen op basis van drie hoofdcategorieรซn van generatieve AI-gebruikscasussen:
- Tekst-naar-tekst โ De FMโs (LLMโs) zijn getraind op basis van ongelabelde gegevens (zoals vrije tekst) en kunnen het op รฉรฉn na beste woord of de woordreeks (paragrafen of lange essays) voorspellen. De belangrijkste gebruiksscenario's betreffen mensachtige chatbots, samenvattingen of andere contentcreatie zoals programmeercode.
- Tekst-naar-beeld โ Gelabelde gegevens, zoals paren , is gebruikt om FM's te trainen, die de beste combinatie van pixels kunnen voorspellen. Voorbeelden van gebruiksscenario's zijn het genereren van kledingontwerp of denkbeeldige gepersonaliseerde afbeeldingen.
- Tekst naar audio of video โ Zowel gelabelde als ongelabelde gegevens kunnen worden gebruikt voor FM-training. Een belangrijk voorbeeld van een generatieve AI-toepassing is het componeren van muziek.
Om deze generatieve AI-gebruiksscenario's te produceren, moeten we het MLOps-domein lenen en uitbreiden met het volgende:
- FM-operaties (FMOps) โ Dit kan generatieve AI-oplossingen produceren, inclusief elk type gebruiksscenario
- LLM-bewerkingen (LLMOps) โ Dit is een subset van FMOps die zich richt op het produceren van op LLM gebaseerde oplossingen, zoals tekst-naar-tekst
De volgende afbeelding illustreert de overlap van deze gebruiksscenario's.
Vergeleken met klassieke ML en MLOps, stellen FMOps en LLMOps uit op basis van vier hoofdcategorieรซn die we in de volgende paragrafen behandelen: mensen en processen, selectie en aanpassing van FM, evaluatie en monitoring van FM, gegevensprivacy en modelimplementatie, en technologiebehoeften. We zullen de monitoring in een apart artikel behandelen.
Operationalisatietraject per generatief AI-gebruikerstype
Om de beschrijving van de processen te vereenvoudigen, moeten we de belangrijkste generatieve AI-gebruikerstypen categoriseren, zoals weergegeven in de volgende afbeelding.
De gebruikerstypen zijn als volgt:
- Providers โ Gebruikers die FMโs vanaf nul opbouwen en deze als product aan andere gebruikers aanbieden (finetuner en consument). Ze beschikken over diepgaande expertise op het gebied van end-to-end ML en natuurlijke taalverwerking (NLP), en datawetenschapsvaardigheden, en enorme datalabeler- en editorteams.
- Fijnafstemmers โ Gebruikers die FM's van providers omscholen (verfijnen) om aan aangepaste vereisten te voldoen. Zij orkestreren de inzet van het model als een dienst voor gebruik door consumenten. Deze gebruikers hebben behoefte aan sterke end-to-end ML- en datawetenschapsexpertise en kennis van modelimplementatie en -inferentie. Sterke domeinkennis voor tuning, inclusief snelle engineering, is ook vereist.
- Consumenten โ Gebruikers die communiceren met generatieve AI-diensten van providers of finetuners door middel van tekstprompts of een visuele interface om gewenste acties te voltooien. Er is geen ML-expertise vereist, maar meestal applicatieontwikkelaars of eindgebruikers met inzicht in de servicemogelijkheden. Voor betere resultaten is alleen snelle engineering nodig.
Volgens de definitie en de vereiste ML-expertise is MLOps vooral vereist voor providers en fine-tuners, terwijl consumenten principes voor applicatieproductie kunnen gebruiken, zoals DevOps en AppDev, om de generatieve AI-applicaties te creรซren. Bovendien hebben we een beweging waargenomen onder de gebruikerstypen, waarbij aanbieders fijnafstemmers kunnen worden om gebruiksscenario's te ondersteunen die zijn gebaseerd op een specifieke branche (zoals de financiรซle sector), of consumenten fijnafstemmers kunnen worden om nauwkeurigere resultaten te bereiken. Maar laten we de belangrijkste processen per gebruikerstype bekijken.
De reis van consumenten
De volgende figuur illustreert de consumentenreis.
Zoals eerder vermeld, zijn consumenten verplicht een FM te selecteren, testen en gebruiken, en ermee te communiceren door specifieke input te leveren, ook wel bekend als prompts. Prompts verwijzen, in de context van computerprogrammering en AI, naar de input die aan een model of systeem wordt gegeven om een โโreactie te genereren. Dit kan de vorm hebben van een tekst, opdracht of vraag, die het systeem gebruikt om uitvoer te verwerken en te genereren. De door de FM gegenereerde output kan vervolgens worden gebruikt door eindgebruikers, die deze output ook moeten kunnen beoordelen om de toekomstige reacties van het model te verbeteren.
Naast deze fundamentele processen hebben we gemerkt dat consumenten de wens uitten om een โโmodel te verfijnen door gebruik te maken van de functionaliteit die wordt geboden door fijnafstemmers. Neem bijvoorbeeld een website die afbeeldingen genereert. Hier kunnen eindgebruikers privรฉaccounts instellen, persoonlijke foto's uploaden en vervolgens inhoud genereren die verband houdt met die afbeeldingen (bijvoorbeeld door een afbeelding te genereren waarop de eindgebruiker op een motorfiets wordt afgebeeld met een zwaard in de hand of die zich op een exotische locatie bevindt). In dit scenario moet de generatieve AI-applicatie, ontworpen door de consument, via API's communiceren met de fine-tuner-backend om deze functionaliteit aan de eindgebruikers te leveren.
Voordat we ons daar echter op verdiepen, concentreren we ons eerst op het traject van modelselectie, testen, gebruik, input- en outputinteractie en beoordeling, zoals weergegeven in de volgende afbeelding.
*15K beschikbare FM-referentie
Stap 1. Begrijp de belangrijkste FM-mogelijkheden
Er zijn veel dimensies waarmee rekening moet worden gehouden bij het selecteren van funderingsmodellen, afhankelijk van de gebruikssituatie, de beschikbare gegevens, regelgeving, enzovoort. Een goede checklist, ook al is deze niet volledig, kan de volgende zijn:
- Eigen of open-source FM โ Eigen modellen brengen vaak financiรซle kosten met zich mee, maar bieden doorgaans betere prestaties (in termen van kwaliteit van de gegenereerde tekst of afbeelding), en worden vaak ontwikkeld en onderhouden door toegewijde teams van modelaanbieders die optimale prestaties en betrouwbaarheid garanderen. Aan de andere kant zien we ook de acceptatie van open-sourcemodellen die, behalve dat ze gratis zijn, extra voordelen bieden door toegankelijk en flexibel te zijn (elk open-sourcemodel is bijvoorbeeld nauwkeurig af te stemmen). Een voorbeeld van een eigen model is het Claude-model van Anthropic, en een voorbeeld van een goed presterend open-sourcemodel is Falcon-40B, vanaf juli 2023.
- Commerciรซle licentie โ Licentieoverwegingen zijn van cruciaal belang bij het kiezen van een FM. Het is belangrijk op te merken dat sommige modellen open-source zijn, maar niet voor commerciรซle doeleinden kunnen worden gebruikt vanwege licentiebeperkingen of -voorwaarden. De verschillen kunnen subtiel zijn: de nieuw uitgebrachte xgen-7b-8k-basis model is bijvoorbeeld open source en commercieel bruikbaar (Apache-2.0-licentie), terwijl de instructie-afgestemde versie van het model xgen-7b-8k-inst wordt alleen vrijgegeven voor onderzoeksdoeleinden. Bij het selecteren van een FM voor een commerciรซle toepassing is het essentieel om de licentieovereenkomst te verifiรซren, de beperkingen ervan te begrijpen en ervoor te zorgen dat deze aansluit bij het beoogde gebruik van het project.
- parameters โ Het aantal parameters, dat bestaat uit de gewichten en biases in het neurale netwerk, is een andere sleutelfactor. Meer parameters betekenen doorgaans een complexer en potentieel krachtiger model, omdat het ingewikkeldere patronen en correlaties in de gegevens kan vastleggen. De wisselwerking is echter dat het meer computerbronnen vereist en daarom meer kosten om te gebruiken. Bovendien zien we een trend naar kleinere modellen, vooral in de open-sourceruimte (modellen variรซrend van 7 tot 40 miljard), die goed presteren, vooral als ze nauwkeurig zijn afgestemd.
- Speed โ De snelheid van een model wordt beรฏnvloed door de grootte ervan. Grotere modellen hebben de neiging gegevens langzamer te verwerken (hogere latentie) vanwege de toegenomen rekencomplexiteit. Daarom is het van cruciaal belang om de behoefte aan een model met een hoog voorspellend vermogen (vaak grotere modellen) in evenwicht te brengen met de praktische vereisten voor snelheid, vooral in toepassingen, zoals chatbots, die realtime of bijna realtime antwoorden vereisen.
- Grootte contextvenster (aantal tokens) โ Het contextvenster, gedefinieerd door het maximale aantal tokens dat per prompt kan worden ingevoerd of uitgevoerd, is cruciaal bij het bepalen hoeveel context het model tegelijkertijd kan overwegen (een token vertaalt zich grofweg naar 0.75 woorden voor Engels). Modellen met grotere contextvensters kunnen langere tekstreeksen begrijpen en genereren, wat handig kan zijn voor taken waarbij langere gesprekken of documenten betrokken zijn.
- Trainingsgegevensset โ Het is ook belangrijk om te begrijpen op wat voor soort gegevens de FM is getraind. Sommige modellen kunnen worden getraind op diverse tekstdatasets, zoals internetgegevens, coderingsscripts, instructies of menselijke feedback. Anderen kunnen ook worden getraind in multimodale datasets, zoals combinaties van tekst- en beeldgegevens. Dit kan de geschiktheid van het model voor verschillende taken beรฏnvloeden. Bovendien kan een organisatie zich zorgen maken over auteursrechten, afhankelijk van de exacte bronnen waarop een model is getraind. Daarom is het verplicht om de trainingsdataset nauwkeurig te inspecteren.
- Kwaliteit โ De kwaliteit van een FM kan variรซren, afhankelijk van het type (eigen versus open source), de grootte en waarop deze is getraind. Kwaliteit is contextafhankelijk, wat betekent dat wat voor de ene toepassing als hoogwaardig wordt beschouwd, dat voor een andere toepassing misschien niet is. Een model dat is getraind op internetgegevens kan bijvoorbeeld als hoogwaardig worden beschouwd voor het genereren van conversatietekst, maar minder voor technische of gespecialiseerde taken.
- Fijnafstemming โ De mogelijkheid om een โโFM te verfijnen door de modelgewichten of lagen aan te passen kan een cruciale factor zijn. Dankzij de fijnafstemming kan het model zich beter aanpassen aan de specifieke context van de toepassing, waardoor de prestaties bij de specifieke taak die voorhanden is, worden verbeterd. Voor het verfijnen zijn echter extra computerhulpbronnen en technische expertise nodig, en niet alle modellen ondersteunen deze functie. Open-sourcemodellen zijn (in het algemeen) altijd nauwkeurig af te stemmen omdat de modelartefacten beschikbaar zijn om te downloaden en de gebruikers deze naar believen kunnen uitbreiden en gebruiken. Eigen modellen bieden soms de mogelijkheid tot verfijning.
- Bestaande klantvaardigheden โ De selectie van een FM kan ook worden beรฏnvloed door de vaardigheden en bekendheid van de klant of het ontwikkelteam. Als een organisatie geen AI/ML-experts in haar team heeft, dan is een API-service wellicht beter geschikt voor hen. Als een team uitgebreide ervaring heeft met een specifiek FM, kan het bovendien efficiรซnter zijn om het te blijven gebruiken in plaats van tijd en middelen te investeren om te leren en zich aan te passen aan een nieuw FM.
Het volgende is een voorbeeld van twee shortlists, รฉรฉn voor propriรซtaire modellen en รฉรฉn voor open-sourcemodellen. U kunt soortgelijke tabellen samenstellen op basis van uw specifieke behoeften, zodat u snel een overzicht krijgt van de beschikbare opties. Houd er rekening mee dat de prestaties en parameters van deze modellen snel veranderen en op het moment van lezen verouderd kunnen zijn, terwijl andere mogelijkheden belangrijk kunnen zijn voor specifieke klanten, zoals de ondersteunde taal.
Het volgende is een voorbeeld van opmerkelijke eigen FM's die beschikbaar zijn in AWS (juli 2023).
Het volgende is een voorbeeld van opmerkelijke open-source FM beschikbaar in AWS (juli 2023).
Nadat u een overzicht heeft samengesteld van 10-20 potentiรซle kandidaat-modellen, wordt het noodzakelijk om deze shortlist verder te verfijnen. In deze sectie stellen we een snel mechanisme voor dat twee of drie levensvatbare eindmodellen zal opleveren als kandidaten voor de volgende ronde.
Het volgende diagram illustreert het initiรซle shortlistingproces.
Doorgaans experimenteren promptingenieurs, die experts zijn in het maken van hoogwaardige prompts waarmee AI-modellen gebruikersinvoer kunnen begrijpen en verwerken, met verschillende methoden om dezelfde taak (zoals samenvatting) op een model uit te voeren. Wij stellen voor dat deze aanwijzingen niet zomaar worden aangemaakt, maar systematisch worden geรซxtraheerd uit een aanwijzingencatalogus. Deze promptcatalogus is een centrale locatie voor het opslaan van prompts om replicaties te voorkomen, versiebeheer mogelijk te maken en prompts binnen het team te delen om consistentie tussen verschillende prompttesters in de verschillende ontwikkelingsfasen te garanderen, die we in de volgende sectie introduceren. Deze promptcatalogus is analoog aan een Git-repository van een functiearchief. De generatieve AI-ontwikkelaar, die mogelijk dezelfde persoon kan zijn als de prompt engineer, moet vervolgens de output evalueren om te bepalen of deze geschikt is voor de generatieve AI-toepassing die ze willen ontwikkelen.
Stap 2. Test en evalueer de top-FM
Nadat de shortlist is teruggebracht tot ongeveer drie FM's, raden we een evaluatiestap aan om de capaciteiten en geschiktheid van de FM's voor de gebruikscasus verder te testen. Afhankelijk van de beschikbaarheid en aard van evaluatiegegevens stellen we verschillende methoden voor, zoals geรฏllustreerd in de volgende afbeelding.
Welke methode u als eerste moet gebruiken, hangt af van het feit of u testgegevens al dan niet van een label heeft voorzien.
Als u gegevens heeft gelabeld, kunt u deze gebruiken om een โโmodelevaluatie uit te voeren, zoals we doen met de traditionele ML-modellen (voer enkele voorbeelden in en vergelijk de uitvoer met de labels). Afhankelijk van of de testgegevens discrete labels hebben (zoals positieve, negatieve of neutrale sentimentanalyse) of ongestructureerde tekst zijn (zoals samenvattingen), stellen we verschillende evaluatiemethoden voor:
- Nauwkeurigheidsstatistieken โ In het geval van discrete outputs (zoals sentimentanalyse) kunnen we standaard nauwkeurigheidsstatistieken gebruiken, zoals precisie, herinnering en F1-score
- Gelijkenisstatistieken โ Als de uitvoer ongestructureerd is (zoals een samenvatting), raden we gelijkenismetrieken aan, zoals ROUGE en cosinus-overeenkomst
Sommige gebruiksscenario's lenen zich niet voor รฉรฉn waar antwoord (bijvoorbeeld: "Maak een kort kinderverhaal voor mijn 5-jarige dochter"). In dergelijke gevallen wordt het een grotere uitdaging om de modellen te evalueren, omdat u niet beschikt over gelabelde testgegevens. We stellen twee benaderingen voor, afhankelijk van het belang van menselijke beoordeling van het model versus geautomatiseerde evaluatie:
- Mens-in-de-loop (HIL) โ In dit geval zal een team van snelle testers de antwoorden van een model beoordelen. Afhankelijk van hoe kritisch de applicatie is, kunnen de snelle testers 100% van de modeluitvoer beoordelen of slechts een voorbeeld.
- LLM-aangedreven evaluatie โ In dit scenario worden de snelle testers vervangen door een LLM, idealiter een die krachtiger is (hoewel misschien langzamer en duurder) dan de tests die worden getest. De LLM zal alle door het model gegenereerde antwoorden beoordelen en een score geven. Deze methode kan resulteren in een lagere kwaliteit, maar het is een goedkopere en snellere evaluatieoptie die een goed eerste inzicht kan geven in de prestaties van de modellen.
We kunnen bijvoorbeeld de volgende voorbeeldprompt voor een LLM gebruiken, die de invoerquery, het LLM-antwoord en instructies bevat: 'We willen graag uw feedback vragen over de prestaties van een AI-assistent in reactie op de hierboven weergegeven gebruikersvraag . Beoordeel de behulpzaamheid, relevantie, nauwkeurigheid en het detailniveau van de reactie van de assistent. De assistent krijgt een totaalscore op een schaal van 1 tot 10, waarbij een hogere score een betere algehele prestatie aangeeft.โ
Deze prompt wordt ter evaluatie naar een andere LLM (de EvalLLM) gestuurd. Het volgende is een voorbeeld waarin de respons van het Falcon-40B-model is geรซvalueerd door een EvalLLM (in dit geval Claude). We gebruiken de vraag: โWat als het Suezkanaal nooit was aangelegd?โ Het antwoord is als volgt:
Vraag: Wat als het Suezkanaal nooit was aangelegd?
falcon-40b-instrueren
Als het Suezkanaal nooit was aangelegd, zouden schepen rond Afrika moeten reizen om tussen de Middellandse Zee en de Rode Zee te navigeren. Dit zou de reis aanzienlijk meer tijd en afstand kosten, waardoor deze minder efficiรซnt en duurder wordt. Bovendien zouden veel landen in het Midden-Oosten en Noord-Afrika zonder het Suezkanaal veel minder verbonden zijn geweest met de rest van de wereld, wat de economische en culturele ontwikkeling zou hebben belemmerd.
Recensie (Score: 9/10)
Het antwoord van de assistent is zeer relevant, nauwkeurig en gedetailleerd. Het biedt een uitstekend antwoord op de hypothetische vraag van de gebruiker over het niet bestaan โโvan het Suezkanaal. De assistent wijst terecht op de implicaties voor het reizen over zee en de economische en culturele impact op het Midden-Oosten en Noord-Afrika. Het had echter verder kunnen ingaan op de geopolitieke implicaties of de impact op de mondiale handelspatronen voor een alomvattender antwoord.
De volgende afbeelding illustreert het voorbeeld van het end-to-end evaluatieproces.
Op basis van dit voorbeeld moeten we, om evaluatie uit te voeren, de voorbeeldprompts opgeven, die we opslaan in de promptcatalogus, en een evaluatie-gelabelde of ongelabelde dataset op basis van onze specifieke toepassingen. Met een gelabelde evaluatiedataset kunnen we bijvoorbeeld aanwijzingen geven (invoer en vragen) zoals โGeef mij de volledige naam van de Britse premier in 2023โ en resultaten en antwoorden, zoals โRishi Sunak.โ Bij een ongelabelde dataset bieden we alleen de vraag of instructie, zoals โGenereer de broncode voor een retailwebsiteโ. We noemen de combinatie van promptcatalogus en evaluatiedataset de evaluatie prompt catalogus. De reden dat we onderscheid maken tussen de promptcatalogus en de evaluatiepromptcatalogus is omdat deze laatste is bedoeld voor een specifieke gebruikssituatie in plaats van de generieke prompts en instructies (zoals het beantwoorden van vragen) die de promptcatalogus bevat.
Met deze evaluatiepromptcatalogus is de volgende stap het doorgeven van de evaluatieprompts aan de beste FM's. Het resultaat is een dataset met evaluatieresultaten die de aanwijzingen, de uitvoer van elke FM en de gelabelde uitvoer bevat, samen met een score (indien aanwezig). In het geval van een niet-gelabelde catalogus met evaluatievragen is er een extra stap voor een HIL of LLM om de resultaten te beoordelen en een score en feedback te geven (zoals we eerder hebben beschreven). Het uiteindelijke resultaat zal bestaan โโuit geaggregeerde resultaten die de scores van alle outputs combineren (bereken de gemiddelde precisie of menselijke beoordeling) en stellen de gebruikers in staat de kwaliteit van de modellen te benchmarken.
Nadat de evaluatieresultaten zijn verzameld, stellen we voor een model te kiezen op basis van verschillende dimensies. Deze komen meestal neer op factoren zoals precisie, snelheid en kosten. De volgende afbeelding toont een voorbeeld.
Elk model zal sterke punten en bepaalde afwegingen op deze dimensies bezitten. Afhankelijk van de use case moeten we verschillende prioriteiten aan deze dimensies toekennen. In het voorgaande voorbeeld hebben we ervoor gekozen om prioriteit te geven aan kosten als belangrijkste factor, gevolgd door precisie en vervolgens snelheid. Ook al is het langzamer en niet zo efficiรซnt als FM1, het blijft voldoende effectief en aanzienlijk goedkoper om te hosten. Daarom zouden we FM2 als eerste keuze kunnen selecteren.
Stap 3. Ontwikkel de backend en frontend van de generatieve AI-applicatie
Op dit punt hebben de generatieve AI-ontwikkelaars samen met de hulp van snelle engineers en testers de juiste FM voor de specifieke toepassing geselecteerd. De volgende stap is het ontwikkelen van de generatieve AI-toepassing. We hebben de ontwikkeling van de generatieve AI-applicatie opgedeeld in twee lagen, een backend en een frontend, zoals weergegeven in de volgende afbeelding.
Aan de backend integreren de generatieve AI-ontwikkelaars de geselecteerde FM in de oplossingen en werken ze samen met de prompt-ingenieurs om de automatisering te creรซren om de input van de eindgebruiker om te zetten in geschikte FM-prompts. De prompttesters creรซren de benodigde vermeldingen in de promptcatalogus voor automatisch of handmatig (HIL of LLM) testen. Vervolgens creรซren de generatieve AI-ontwikkelaars het promptchaining- en toepassingsmechanisme om de uiteindelijke output te leveren. Prompt chaining is in deze context een techniek om meer dynamische en contextueel bewuste LLM-applicaties te creรซren. Het werkt door een complexe taak op te splitsen in een reeks kleinere, beter beheersbare subtaken. Als we een LLM bijvoorbeeld de vraag stellen: "Waar is de premier van Groot-Brittanniรซ geboren en hoe ver is die plaats van Londen", kan de taak worden opgesplitst in individuele prompts, waarbij een prompt kan worden samengesteld op basis van het antwoord. van een eerdere snelle evaluatie, zoals โWie is de premier van Groot-Brittanniรซโ, โWat is hun geboorteplaatsโ en โHoe ver is die plaats van Londen?โ Om een โโbepaalde input- en outputkwaliteit te garanderen, moeten de generatieve AI-ontwikkelaars ook het mechanisme creรซren om de input van eindgebruikers en applicatie-outputs te monitoren en te filteren. Als de LLM-applicatie bijvoorbeeld toxische verzoeken en reacties moet vermijden, kunnen ze een toxiciteitsdetector voor input en output toepassen en deze eruit filteren. Ten slotte moeten ze een beoordelingsmechanisme bieden, dat de uitbreiding van de evaluatiepromptcatalogus met goede en slechte voorbeelden zal ondersteunen. Een meer gedetailleerde weergave van deze mechanismen zal in toekomstige berichten worden gepresenteerd.
Om de functionaliteit aan de generatieve AI-eindgebruiker te bieden, is de ontwikkeling van een frontend-website die samenwerkt met de backend noodzakelijk. Daarom moeten DevOps- en AppDevs-persona's (applicatieontwikkelaars in de cloud) de beste ontwikkelingspraktijken volgen om de functionaliteit van input/output en beoordeling te implementeren.
Naast deze basisfunctionaliteit moeten de frontend en backend de mogelijkheid bevatten om persoonlijke gebruikersaccounts aan te maken, gegevens te uploaden, fijnafstemming in gang te zetten als een black box en het gepersonaliseerde model te gebruiken in plaats van de standaard FM. De productionisering van een generatieve AI-applicatie is vergelijkbaar met een normale applicatie. De volgende afbeelding toont een voorbeeldarchitectuur.
In deze architectuur creรซren en testen de generatieve AI-ontwikkelaars, prompt-ingenieurs en DevOps of AppDevs de applicatie handmatig door deze via CI/CD te implementeren in een ontwikkelomgeving (generatieve AI App Dev in de voorgaande afbeelding) met behulp van speciale codeopslagplaatsen en samen te voegen met de dev-tak. In dit stadium zullen de generatieve AI-ontwikkelaars de overeenkomstige FM gebruiken door de API aan te roepen zoals deze is geleverd door de FM-aanbieders van fijnafstemmers. Om de applicatie vervolgens uitgebreid te testen, moeten ze de code promoveren naar de testbranch, die de implementatie via CI/CD naar de preproductieomgeving (generatieve AI App Pre-prod) zal activeren. In deze omgeving moeten de prompttesters een groot aantal promptcombinaties uitproberen en de resultaten bekijken. De combinatie van prompts, outputs en beoordelingen moet worden verplaatst naar de evaluatiepromptcatalogus om het testproces in de toekomst te automatiseren. Na deze uitgebreide test is de laatste stap het promoten van de generatieve AI-applicatie naar productie via CI/CD door te fuseren met de hoofdtak (generatieve AI App Prod). Houd er rekening mee dat alle gegevens, inclusief de promptcatalogus, evaluatiegegevens en -resultaten, gegevens en metagegevens van eindgebruikers en verfijnde modelmetagegevens, moeten worden opgeslagen in de data lake- of data mesh-laag. De CI/CD-pijplijnen en opslagplaatsen moeten worden opgeslagen in een afzonderlijk toolingaccount (vergelijkbaar met het account dat is beschreven voor MLOps).
De reis van aanbieders
FM-aanbieders moeten FMโs trainen, zoals deep learning-modellen. Voor hen is de end-to-end MLOps-levenscyclus en -infrastructuur noodzakelijk. Toevoegingen zijn vereist bij het voorbereiden van historische gegevens, modelevaluatie en monitoring. De volgende afbeelding illustreert hun reis.
In klassieke ML worden de historische gegevens meestal gecreรซerd door de grondwaarheid via ETL-pijplijnen te voeden. In een gebruiksscenario voor churnvoorspelling werkt een automatisering bijvoorbeeld een databasetabel bij op basis van de nieuwe status van een klant om automatisch wel of niet te churnen. In het geval van FM's hebben ze miljarden gelabelde of ongelabelde datapunten nodig. Bij gebruik van tekst naar afbeeldingen moet een team van gegevenslabelers labelen handmatig koppelen. Dit is een dure exercitie die een groot aantal mensen vergt. Amazon SageMaker Ground Truth Plus kan een team van labelers ter beschikking stellen om deze activiteit voor u uit te voeren. Voor sommige gebruikssituaties kan dit proces ook gedeeltelijk worden geautomatiseerd, bijvoorbeeld door gebruik te maken van CLIP-achtige modellen. In het geval van een LLM, zoals tekst-naar-tekst, zijn de gegevens niet gelabeld. Ze moeten echter worden voorbereid en het formaat volgen van de bestaande historische, niet-gelabelde gegevens. Daarom zijn data-editors nodig om de noodzakelijke datavoorbereiding uit te voeren en consistentie te garanderen.
Nu de historische gegevens zijn voorbereid, is de volgende stap het trainen en produceren van het model. Merk op dat dezelfde evaluatietechnieken kunnen worden gebruikt als die we voor consumenten hebben beschreven.
De reis van fijnstemmers
Finetuners streven ernaar een bestaande FM aan te passen aan hun specifieke context. Een FM-model kan bijvoorbeeld een tekst voor algemene doeleinden nauwkeurig samenvatten, maar geen financieel rapport, of kan geen broncode genereren voor een niet-algemene programmeertaal. In die gevallen moeten de fijnafstemmers gegevens labelen, een model verfijnen door een trainingstaak uit te voeren, het model implementeren, testen op basis van de consumentenprocessen en het model monitoren. Het volgende diagram illustreert dit proces.
Voorlopig zijn er twee finetuningmechanismen:
- Scherpstellen โ Door een FM en gelabelde gegevens te gebruiken, herberekent een trainingstaak de gewichten en vooroordelen van de lagen van het deep learning-model. Dit proces kan rekenintensief zijn en vereist een representatieve hoeveelheid gegevens, maar kan nauwkeurige resultaten opleveren.
- Parameter-efficiรซnte fijnafstemming (PEFT) โ In plaats van alle gewichten en vooroordelen opnieuw te berekenen, hebben onderzoekers aangetoond dat ze door het toevoegen van extra kleine lagen aan de deep learning-modellen bevredigende resultaten kunnen bereiken (bijvoorbeeld LoRA). PEFT vereist minder rekenkracht dan diepgaande verfijning en een trainingsopdracht met minder invoergegevens. Het nadeel is een mogelijk lagere nauwkeurigheid.
Het volgende diagram illustreert deze mechanismen.
Nu we de twee belangrijkste methoden voor verfijning hebben gedefinieerd, is de volgende stap het bepalen hoe we de open-source en propriรซtaire FM kunnen inzetten en gebruiken.
Met open-source FM's kunnen de fijnstemmers het modelartefact en de broncode van internet downloaden, bijvoorbeeld door gebruik te maken van de Knuffelen Gezicht Model Hub. Dit geeft u de flexibiliteit om het model diepgaand af te stemmen, op te slaan in een lokaal modelregister en te implementeren in een Amazon Sage Maker eindpunt. Voor dit proces is een internetverbinding vereist. Om veiligere omgevingen te ondersteunen (zoals voor klanten in de financiรซle sector), kunt u het model ter plaatse downloaden, alle noodzakelijke veiligheidscontroles uitvoeren en deze uploaden naar een lokale bucket op een AWS-account. Vervolgens gebruiken de fijntuners de FM uit de lokale bucket zonder internetverbinding. Dit garandeert de privacy van gegevens en de gegevens reizen niet via internet. Het volgende diagram illustreert deze methode.
Bij propriรซtaire FM's is het implementatieproces anders omdat de fijnafstemmers geen toegang hebben tot het modelartefact of de broncode. De modellen worden opgeslagen in eigen FM-provider AWS-accounts en modelregisters. Om een โโdergelijk model op een SageMaker-eindpunt te implementeren, kunnen de fijnafstemmers alleen het modelpakket aanvragen dat rechtstreeks op een eindpunt wordt geรฏmplementeerd. Dit proces vereist dat klantgegevens worden gebruikt in de accounts van de eigen FM-providers, wat vragen oproept over klantgevoelige gegevens die in een externe account worden gebruikt om fijnafstemming uit te voeren, en over modellen die worden gehost in een modelregister dat wordt gedeeld door meerdere klanten . Dit leidt tot een multi-tenancy-probleem dat een grotere uitdaging wordt als de eigen FM-aanbieders deze modellen moeten bedienen. Als de fijnafstemmers gebruiken Amazonebodem, zijn deze uitdagingen opgelost: de gegevens reizen niet via internet en de FM-providers hebben geen toegang tot de gegevens van de fijnafstemming. Dezelfde uitdagingen gelden voor de open source-modellen als de finetuners modellen van meerdere klanten willen bedienen, zoals het voorbeeld dat we eerder gaven met de website waar duizenden klanten gepersonaliseerde afbeeldingen naartoe zullen uploaden. Deze scenario's kunnen echter als beheersbaar worden beschouwd omdat alleen de fine-tuner erbij betrokken is. Het volgende diagram illustreert deze methode.
Vanuit technologisch perspectief is de architectuur die een fine-tuner moet ondersteunen vergelijkbaar met die voor MLOps (zie de volgende afbeelding). De verfijning moet in dev worden uitgevoerd door ML-pijplijnen te maken, zoals het gebruik van Amazon SageMaker-pijpleidingen; het uitvoeren van preprocessing, finetuning (trainingstaak) en postprocessing; en het verzenden van de verfijnde modellen naar een lokaal modelregister in het geval van een open-source FM (anders wordt het nieuwe model opgeslagen in de eigen FM-omgeving). Vervolgens moeten we tijdens de pre-productie het model testen zoals we beschrijven voor het consumentenscenario. Ten slotte zal het model in productie worden aangeboden en gemonitord. Houd er rekening mee dat de huidige (afgestemde) FM GPU-instantie-eindpunten vereist. Als we elk verfijnd model op een afzonderlijk eindpunt moeten implementeren, kan dit in het geval van honderden modellen de kosten verhogen. Daarom moeten we eindpunten met meerdere modellen gebruiken en de uitdaging van multi-tenancy oplossen.
De finetuners passen een FM-model aan op basis van een specifieke context om het voor hun zakelijke doeleinden te gebruiken. Dat betekent dat de fijnafstemmers meestal ook consumenten zijn die alle lagen moeten ondersteunen, zoals we in de vorige paragrafen hebben beschreven, inclusief de ontwikkeling van generatieve AI-applicaties, data lake en data mesh, en MLOps.
De volgende afbeelding illustreert de volledige levenscyclus van FM-finetuning die de finetuners nodig hebben om de generatieve AI-eindgebruiker te bieden.
De volgende afbeelding illustreert de belangrijkste stappen.
De belangrijkste stappen zijn de volgende:
- De eindgebruiker maakt een persoonlijk account aan en uploadt privรฉgegevens.
- De gegevens worden opgeslagen in het datameer en worden voorbewerkt volgens het formaat dat de FM verwacht.
- Dit activeert een verfijnde ML-pijplijn die het model aan het modelregister toevoegt,
- Van daaruit wordt het model met minimale tests in productie genomen, of wordt het model uitgebreid getest met HIL en handmatige goedkeuringspoorten.
- Het verfijnde model wordt beschikbaar gemaakt voor eindgebruikers.
Omdat deze infrastructuur complex is voor niet-zakelijke klanten, heeft AWS Amazon Bedrock uitgebracht om de inspanningen van het creรซren van dergelijke architecturen te verlichten en verfijnde FM's dichter bij de productie te brengen.
FMOps- en LLMOps-persona's en -processen die onderscheidend zijn
Op basis van de voorgaande gebruikerstypereizen (consument, producent en finetuner) zijn nieuwe persona's met specifieke vaardigheden vereist, zoals geรฏllustreerd in de volgende afbeelding.
De nieuwe personaโs zijn als volgt:
- Gegevenslabelers en -editors โ Deze gebruikers labelen gegevens, zoals paren, of ongelabelde gegevens voorbereiden, zoals vrije tekst, en het geavanceerde analyseteam en de data lake-omgevingen uitbreiden.
- Fijnafstemmers โ Deze gebruikers hebben diepgaande kennis van FMโs en weten deze af te stemmen, waardoor het data science-team dat zich zal concentreren op klassieke ML wordt uitgebreid.
- Generatieve AI-ontwikkelaars โ Ze hebben diepgaande kennis over het selecteren van FM's, het koppelen van aanwijzingen en applicaties, en het filteren van invoer en uitvoer. Ze behoren tot een nieuw team: het generatieve AI-applicatieteam.
- Snelle ingenieurs โ Deze gebruikers ontwerpen de invoer- en uitvoerprompts om de oplossing aan de context aan te passen en testen en creรซren de eerste versie van de promptcatalogus. Hun team is het generatieve AI-applicatieteam.
- Snelle testers โ Ze testen op schaal de generatieve AI-oplossing (backend en frontend) en voeden hun resultaten om de promptcatalogus en evaluatiedataset uit te breiden. Hun team is het generatieve AI-applicatieteam.
- AppDev en DevOps โ Zij ontwikkelen de front-end (zoals een website) van de generatieve AI-applicatie. Hun team is het generatieve AI-applicatieteam.
- Generatieve AI-eindgebruikers โ Deze gebruikers gebruiken generatieve AI-toepassingen als zwarte dozen, delen gegevens en beoordelen de kwaliteit van de output.
De uitgebreide versie van de MLOps-proceskaart om generatieve AI te integreren kan worden geรฏllustreerd met de volgende afbeelding.
Een nieuwe applicatielaag is de omgeving waarin generatieve AI-ontwikkelaars, prompt engineers en testers, en AppDevs de backend en frontend van generatieve AI-applicaties hebben gecreรซerd. De generatieve AI-eindgebruikers communiceren via internet (zoals een web-UI) met de front-end van de generatieve AI-applicaties. Aan de andere kant moeten datalabelers en -editors de data voorbewerken zonder toegang te krijgen tot de backend van het datameer of data mesh. Daarom is een webinterface (website) met een editor nodig voor een veilige interactie met de gegevens. SageMaker Ground Truth biedt deze functionaliteit kant-en-klaar.
Conclusie
MLOps kunnen ons helpen ML-modellen efficiรซnt te produceren. Om generatieve AI-toepassingen operationeel te maken, heb je echter aanvullende vaardigheden, processen en technologieรซn nodig, die leiden tot FMOps en LLMOps. In dit bericht hebben we de belangrijkste concepten van FMOps en LLMOps gedefinieerd en de belangrijkste onderscheidende factoren beschreven in vergelijking met MLOps-mogelijkheden op het gebied van mensen, processen, technologie, FM-modelselectie en evaluatie. Verder illustreerden we het denkproces van een generatieve AI-ontwikkelaar en de ontwikkelingslevenscyclus van een generatieve AI-applicatie.
In de toekomst zullen we ons concentreren op het bieden van oplossingen per het domein dat we hebben besproken, en zullen we meer details geven over hoe FM-monitoring (zoals toxiciteit, vooringenomenheid en hallucinatie) en architecturale patronen van derden of particuliere gegevensbronnen kunnen worden geรฏntegreerd, zoals Haal Augmented Generation (RAG) op in FMOps/LLMOps.
Raadpleeg voor meer informatie: MLOps foundation roadmap voor ondernemingen met Amazon SageMaker en probeer de end-to-end-oplossing uit MLOps-praktijken implementeren met Amazon SageMaker JumpStart vooraf getrainde modellen.
Als u opmerkingen of vragen heeft, laat deze dan achter in het opmerkingengedeelte.
Over de auteurs
Dr Sokratis Kartakis is een Senior Machine Learning en Operations Specialist Solutions Architect voor Amazon Web Services. Sokratis richt zich erop zakelijke klanten in staat te stellen hun Machine Learning (ML)-oplossingen te industrialiseren door AWS-diensten te exploiteren en hun bedrijfsmodel vorm te geven, dat wil zeggen de MLOps-basis, en de transformatie-roadmap, waarbij gebruik wordt gemaakt van de beste ontwikkelingspraktijken. Hij heeft meer dan 15 jaar besteed aan het bedenken, ontwerpen, leiden en implementeren van innovatieve end-to-end ML- en Internet of Things (IoT)-oplossingen op productieniveau op het gebied van energie, detailhandel, gezondheidszorg, financiรซn/bankieren, autosport enz. Sokratis brengt zijn vrije tijd graag door met familie en vrienden, of met motorrijden.
Heiko Hotz is een Senior Solutions Architect voor AI & Machine Learning met een speciale focus op natuurlijke taalverwerking, grote taalmodellen en generatieve AI. Voorafgaand aan deze functie was hij hoofd Data Science voor de EU-klantenservice van Amazon. Heiko helpt onze klanten succesvol te zijn in hun AI/ML-traject op AWS en heeft samengewerkt met organisaties in veel sectoren, waaronder verzekeringen, financiรซle dienstverlening, media en entertainment, gezondheidszorg, nutsbedrijven en productie. In zijn vrije tijd reist Heiko zoveel mogelijk.
- 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. Automotive / EV's, carbon, CleanTech, Energie, Milieu, Zonne, Afvalbeheer. Toegang hier.
- Plato Gezondheid. Intelligentie op het gebied van biotech en klinische proeven. Toegang hier.
- ChartPrime. Verhoog uw handelsspel met ChartPrime. Toegang hier.
- BlockOffsets. Eigendom voor milieucompensatie moderniseren. Toegang hier.
- Bron: https://aws.amazon.com/blogs/machine-learning/fmops-llmops-operationalize-generative-ai-and-differences-with-mlops/
- : heeft
- :is
- :niet
- :waar
- $UP
- 1
- 10
- 100
- 2023
- 23
- 7
- 75
- a
- vermogen
- in staat
- Over
- boven
- SAMENVATTING
- toegang
- beschikbaar
- toegang
- Account
- accounts
- nauwkeurigheid
- accuraat
- nauwkeurig
- Bereiken
- acties
- activiteit
- aanpassen
- aanpassing
- toevoegen
- toe te voegen
- toevoeging
- Extra
- Daarnaast
- toevoegingen
- Voegt
- administratie
- Adoptie
- vergevorderd
- Afrika
- Na
- Overeenkomst
- AI
- AI en machine learning
- AI-assistent
- AI-modellen
- AI-diensten
- ai-gebruiksgevallen
- AI / ML
- streven
- Lijnt uit
- Alles
- toelaten
- toestaat
- langs
- al
- ook
- Hoewel
- altijd
- Amazone
- Amazon Sage Maker
- Amazon SageMaker JumpStart
- Amazon Web Services
- onder
- bedragen
- an
- analyse
- analytics
- en
- en infrastructuur
- Nog een
- beantwoorden
- antwoorden
- elke
- api
- APIs
- gebruiken
- Aanvraag
- Application Development
- toepassingen
- Solliciteer
- nadering
- benaderingen
- passend
- goedkeuring
- ongeveer
- architecten
- bouwkundig
- architectuur
- ZIJN
- rond
- AS
- Het beoordelen
- Assistent
- At
- gecontroleerd
- accountants
- aangevuld
- automatiseren
- geautomatiseerde
- Automatisch
- webmaster.
- Automatisering
- beschikbaarheid
- Beschikbaar
- gemiddelde
- vermijd
- AWS
- backend
- slecht
- Balance
- gebaseerde
- basis-
- BE
- omdat
- worden
- wordt
- geweest
- vaardigheden
- wezen
- criterium
- betekent
- BEST
- Betere
- tussen
- vooringenomenheid
- vooroordelen
- Miljard
- miljarden
- Zwart
- geboren
- lenen
- zowel
- bots
- Box camera's
- dozen
- Tak
- Breaking
- kort
- Bringing
- Kapot
- bouw
- Gebouw
- bebouwd
- bedrijfsdeskundigen
- maar
- by
- berekenen
- Bellen
- Dit betekent dat we onszelf en onze geliefden praktisch vergiftigen.
- bellen
- CAN
- kandidaat
- kandidaten
- mogelijkheden
- bekwaamheid
- vangen
- geval
- gevallen
- catalogus
- categorieรซn
- centraal
- gecentraliseerde
- zeker
- uitdagen
- uitdagingen
- uitdagend
- verandering
- chatbots
- goedkoper
- Controles
- keuze
- het kiezen van
- klassiek
- van nabij
- dichterbij
- Kleding
- Cloud
- code
- codering
- samenwerken
- combinatie van
- combinaties
- combineren
- hoe
- opmerkingen
- commercieel
- commercieel
- Gemeen
- vergelijken
- vergeleken
- compleet
- voltooiing
- complex
- ingewikkeldheid
- nakoming
- compliant
- samenstelling
- uitgebreid
- rekenkracht
- computer
- concentreren
- concept
- concepten
- Zorgen
- voorwaarden
- Gedrag
- uitgevoerd
- gekoppeld blijven
- versterken
- bijgevolg
- Overwegen
- overwegingen
- beschouwd
- consumeren
- consument
- Consumenten
- consumptie
- Containers
- bevat
- content
- content creatie
- verband
- voortzetten
- onder controle te houden
- spraakzaam
- conversaties
- auteursrecht
- Overeenkomend
- Kosten
- kostbaar
- Kosten
- kon
- landen
- deksel
- bedekt
- en je merk te creรซren
- aangemaakt
- creรซert
- Wij creรซren
- het aanmaken
- kritisch
- cruciaal
- culturele
- Actueel
- gewoonte
- klant
- klantgegevens
- Klantenservice
- Klanten
- gegevens
- Datameer
- data punten
- Data voorbereiding
- data Privacy
- data science
- Database
- datasets
- gedecentraliseerde
- Beslissen
- beslissingen
- toegewijd aan
- deep
- diepe duik
- diepgaand leren
- gedefinieerd
- het definiรซren van
- definitie
- definities
- leveren
- delven
- Vraag
- Afhankelijk
- afhankelijk
- beeltenis
- implementeren
- ingezet
- het inzetten
- inzet
- beschrijven
- beschreven
- beschrijving
- Design
- ontworpen
- ontwerpen
- verlangen
- gewenste
- gedetailleerd
- gegevens
- Bepalen
- bepalen
- Dev
- ontwikkelen
- ontwikkelde
- Ontwikkelaar
- ontwikkelaars
- het ontwikkelen van
- Ontwikkeling
- ontwikkelingsteam
- verschillen
- anders
- onderscheiden
- Afmeting
- direct
- bespreken
- besproken
- weergegeven
- afstand
- duiken
- diversen
- do
- documenten
- Nee
- domein
- domeinen
- Dont
- beneden
- Download
- rit
- twee
- dynamisch
- e
- elk
- Vroeger
- oosten
- En het is heel gemakkelijk
- Economisch
- editor
- effectief
- doeltreffend
- efficiรซnt
- inspanning
- beide
- uitgewerkte
- gekozen
- in staat stellen
- waardoor
- einde
- eind tot eind
- Endpoint
- energie-niveau
- ingenieur
- Engineering
- Ingenieurs
- Engels
- verhogen
- verzekeren
- waarborgt
- Enterprise
- bedrijven
- Onstpanning
- Milieu
- omgevingen
- even
- vooral
- essentieel
- etc
- EU
- schatten
- geรซvalueerd
- evaluatie
- Zelfs
- Alle
- voorbeeld
- voorbeelden
- uitstekend
- opgewonden
- Oefening
- bestaand
- bestaat
- Exotisch
- verwacht
- duur
- ervaring
- experiment
- expertise
- deskundigen
- uitbuiten
- verlengen
- verlenging
- uitbreiding
- uitgebreid
- Uitgebreide ervaring
- uitgebreid
- extract
- f1
- Gezicht
- factor
- factoren
- vertrouwdheid
- familie
- ver
- sneller
- Kenmerk
- feedback
- voeden
- Figuur
- filter
- filtering
- finale
- Tot slot
- financieel
- financieel rapport
- Financiรซle sector
- financiรซle diensten
- Voornaam*
- geschikt
- Flexibiliteit
- flexibel
- Focus
- gericht
- richt
- gericht
- volgen
- gevolgd
- volgend
- volgt
- Voor
- Voor consumenten
- formulier
- formaat
- Foundation
- vier
- Gratis
- vrienden
- oppompen van
- voor
- Voorkant
- Frontend
- vol
- functionaliteit
- fundamenteel
- verder
- Bovendien
- toekomst
- Gates
- peilen
- Algemeen
- voor algemeen gebruik
- algemeen
- voortbrengen
- gegenereerde
- genereert
- het genereren van
- generatie
- generatief
- generatieve AI
- geopolitiek
- krijgen
- Git
- gegeven
- geeft
- Globaal
- wereldhandel
- goed
- bestuur
- GPU
- Ground
- HAD
- hand
- Benutten
- Hebben
- met
- he
- hoofd
- Gezondheid
- gezondheidszorg
- hulp
- helpt
- hier
- Hoge
- hoogwaardige
- hoger
- zeer
- zijn
- historisch
- houden
- gastheer
- gehost
- Hoe
- How To
- Echter
- HTML
- HTTPS
- menselijk
- Honderden
- i
- ideaal
- if
- illustreert
- beeld
- afbeeldingen
- denkbeeldig
- Impact
- uitvoeren
- uitvoering
- implicaties
- belang
- belangrijk
- het verbeteren van
- in
- omvatten
- omvat
- Inclusief
- nemen
- Laat uw omzet
- meer
- geeft aan
- indicatoren
- individueel
- industrieรซn
- beรฏnvloeden
- beรฏnvloed
- Infrastructuur
- eerste
- innovatieve
- invoer
- ingangen
- instantie
- verkrijgen in plaats daarvan
- instructies
- verzekering
- integreren
- bestemde
- interactie
- interactie
- wisselwerking
- wisselwerking
- Interface
- Internet
- internetverbinding
- internet van dingen
- in
- voorstellen
- investeren
- betrokken zijn
- waarbij
- iot
- IT
- HAAR
- Jobomschrijving:
- Journeys
- juli-
- voor slechts
- sleutel
- sleutelfactor
- Soort
- blijven
- kennis
- bekend
- label
- labels
- meer
- taal
- Groot
- groter
- Achternaam*
- Wachttijd
- lagen
- Legkippen
- leidend
- Leads
- LEARN
- leren
- Verlof
- lenen
- minder
- Niveau
- leveraging
- bibliotheken
- Vergunning
- Licenties
- levenscyclus van uw product
- als
- sympathieรซn
- beperkingen
- LINK
- LLM
- laden
- lokaal
- gelegen
- plaats
- London
- lang
- langer
- te verlagen
- machine
- machine learning
- gemaakt
- Hoofd
- onderhouden
- Meerderheid
- maken
- handelbaar
- verplicht
- handboek
- handmatig
- productie
- veel
- kaart
- massief
- ะทัะตะปะพััั
- maximaal
- Mei..
- me
- betekenis
- middel
- mechanisme
- mechanismen
- Media
- Middellandse Zee
- vermeld
- samen te voegen
- mesh
- Metadata
- methode
- Methodologie
- methoden
- Metriek
- Midden
- Midden-Oosten
- macht
- minimum
- ML
- MLops
- model
- modellen
- monitor
- bewaakt
- Grensverkeer
- meer
- efficiรซnter
- meest
- meestal
- Motorsports
- beweging
- verplaatst
- beweging
- veel
- meervoudig
- Muziek
- Dan moet je
- my
- naam
- Naturel
- Natural Language Processing
- NATUUR
- OP DEZE WEBSITE VIND JE
- noodzakelijk
- Noodzaak
- nodig
- behoeften
- negatief
- netwerk
- neuraal netwerk
- Neutraal
- nooit
- New
- onlangs
- volgende
- nlp
- geen
- een
- noorden
- opvallend
- aantal
- waarnemen
- of
- bieden
- aangeboden
- vaak
- on
- Onboarding
- EEN
- degenen
- Slechts
- open
- open source
- werkzaam
- Operations
- optimale
- Keuze
- Opties
- or
- organisatie
- organisaties
- Overige
- Overig
- anders-
- onze
- uit
- Resultaat
- uitgang
- over
- totaal
- overzicht
- het te bezitten.
- eigenaar
- eigenaren
- pakket
- paren
- parameters
- patronen
- Mensen
- voor
- Uitvoeren
- prestatie
- uitvoerend
- misschien
- persoon
- persoonlijk
- Gepersonaliseerde
- perspectief
- fase
- Foto's
- stuk
- pijpleiding
- plaats
- platform
- Plato
- Plato gegevensintelligentie
- PlatoData
- dan
- punt
- punten
- beleidsmaatregelen door te lezen.
- positief
- bezitten
- mogelijk
- Post
- Berichten
- potentieel
- mogelijk
- energie
- krachtige
- PRAKTISCH
- praktijken
- precisie
- voorspellen
- voorspelling
- Voorspellingen
- voorbereiding
- Voorbereiden
- bereid
- voorbereiding
- gepresenteerd
- vorig
- die eerder
- Prime
- premier
- principes
- Voorafgaand
- prioriteren
- privacy
- privaat
- probleem
- processen
- verwerking
- geproduceerd
- producent
- Product
- productie
- Programming
- project
- promoten
- bewijs
- proof of concept voor
- voorstellen
- gepatenteerd
- Bewijzen
- zorgen voor
- mits
- leverancier
- providers
- biedt
- het verstrekken van
- doel
- doeleinden
- duwt
- puzzel
- kwaliteit
- vraag
- Contact
- Quick
- verhoogt
- reeks
- variรซrend
- snel
- tarief
- liever
- waardering
- lezing
- real-time
- reden
- ontvangen
- adviseren
- Rood
- Gereduceerd
- verfijnen
- met betrekking tot
- registers
- register
- reglement
- verwant
- uitgebracht
- relevantie
- relevante
- betrouwbaarheid
- stoffelijk overschot
- vanop
- vervangen
- verslag
- bewaarplaats
- vertegenwoordiging
- vertegenwoordiger
- te vragen
- verzoeken
- nodig
- Voorwaarden
- vereist
- onderzoek
- onderzoekers
- Resources
- respectievelijk
- antwoord
- reacties
- verantwoordelijk
- REST
- beperkingen
- beperkend
- resultaat
- Resultaten
- <HR>Retail
- hergebruiken
- beoordelen
- beoordeeld
- paardrijden
- rechts
- roadmap
- Rol
- rollen
- ruw
- ronde
- lopen
- lopend
- sagemaker
- dezelfde
- zandbak
- Scale
- scaling
- scenario
- scenario's
- Wetenschap
- wetenschappers
- partituur
- krassen
- scripts
- SEA
- sectie
- secties
- sector
- beveiligen
- vast
- veiligheid
- beveiligingsbeleid
- zien
- op zoek naar
- gekozen
- selecteren
- selectie
- verzending
- senior
- verzonden
- sentiment
- apart
- Volgorde
- -Series
- dienen
- service
- Diensten
- serveer-
- reeks
- verscheidene
- vorming
- Delen
- gedeeld
- schepen
- Bermuda's
- moet
- getoond
- Shows
- kant
- aanzienlijke
- aanzienlijk
- gelijk
- vereenvoudigen
- Maat
- vaardigheden
- Klein
- kleinere
- MKB
- So
- oplossing
- Oplossingen
- OPLOSSEN
- sommige
- bron
- broncode
- bronnen
- Tussenruimte
- special
- specialist
- gespecialiseerde
- specifiek
- specifiek
- snelheid
- besteden
- besteed
- Stadium
- stadia
- stakeholders
- standaard
- standaardiseren
- begin
- Status
- Stap voor
- Stappen
- shop
- opgeslagen
- bewaartemperatuur
- Verhaal
- sterke punten
- sterke
- Hierop volgend
- geslaagd
- dergelijk
- stel
- geschiktheid
- geschikt
- samenvatten
- OVERZICHT
- ondersteuning
- ondersteunde
- vermeend
- zeker
- SWIFT
- system
- tafel
- Nemen
- Taak
- taken
- team
- teams
- Technisch
- technieken
- Technologies
- Technologie
- termen
- proef
- getest
- testers
- Testen
- neem contact
- dat
- De
- De toekomst
- De Bron
- Brittanniรซ
- de wereld
- hun
- Ze
- zich
- harte
- Er.
- daarom
- Deze
- ze
- spullen
- het denken
- van derden
- dit
- die
- toch?
- gedachte
- duizenden kosten
- drie
- niet de tijd of
- naar
- samen
- teken
- tokens
- top
- onderwerpen
- in de richting van
- handel
- traditioneel
- Trainen
- getraind
- Trainingen
- Transformeren
- Transformatie
- reizen
- reist
- trend
- leiden
- waar
- waarheid
- proberen
- twee
- type dan:
- types
- typisch
- ui
- Uk
- begrijpen
- begrip
- eenheid
- eenheden
- updates
- Uploaden
- us
- bruikbaar
- Gebruik
- .
- use case
- gebruikt
- Gebruiker
- gebruikers
- toepassingen
- gebruik
- utilities
- gebruikt
- divers
- controleren
- versie
- Tegen
- verticaal
- via
- rendabel
- visualiseren
- vs
- willen
- was
- we
- web
- webservices
- Website
- GOED
- Wat
- Wat is
- wanneer
- terwijl
- of
- welke
- en
- WIE
- breed
- Grote range
- wil
- venster
- ruiten
- Met
- binnen
- zonder
- Woord
- woorden
- Mijn werk
- samenwerken
- werkte
- werkzaam
- Bedrijven
- wereld
- zou
- jaar
- Opbrengst
- You
- Your
- zephyrnet