Amazon-Lex is een volledig beheerde dienst voor kunstmatige intelligentie (AI) met geavanceerde natuurlijke taalmodellen voor het ontwerpen, bouwen, testen en implementeren van gespreksinterfaces in applicaties. Het maakt gebruik van geavanceerde deep learning-technologieën om gebruikersinvoer te begrijpen, waardoor ontwikkelaars chatbots, virtuele assistenten en andere applicaties kunnen creëren die in natuurlijke taal met gebruikers kunnen communiceren.
Beheer uw Amazon Lex-bots met behulp van AWS CloudFormatie Hiermee kunt u sjablonen maken die de bot definiëren en alle AWS-bronnen waarvan deze afhankelijk is. AWS CloudFormation levert en configureert deze bronnen namens u, waardoor het risico op menselijke fouten bij het inzetten van bots in nieuwe omgevingen wordt weggenomen. De voordelen van het gebruik van CloudFormation zijn onder meer:
- Consistentie – Een CloudFormation-sjabloon biedt een consistentere en geautomatiseerde manier om de bronnen die aan een Amazon Lex-bot zijn gekoppeld, in te zetten en te beheren.
- Versiebeheer – Met AWS CloudFormation kunt u versiebeheersystemen zoals Git gebruiken om uw CloudFormation-sjablonen te beheren. Hierdoor kunt u verschillende versies van uw bot onderhouden en indien nodig teruggaan naar eerdere versies.
- herbruikbaarheid – U kunt CloudFormation-sjablonen hergebruiken in meerdere omgevingen, zoals ontwikkeling, staging en productie. Dit bespaart tijd en moeite bij het definiëren van dezelfde bot in verschillende omgevingen.
- Uitbreidingsmogelijkheden – Naarmate uw Amazon Lex-bot in complexiteit groeit, kunt u deze beheren via de AWS-beheerconsole wordt uitdagender. AWS CloudFormation zorgt voor een meer gestroomlijnde en efficiënte aanpak voor het beheer van de definitie en bronnen van de bot.
- Automatisering – Met behulp van een CloudFormation-sjabloon kunt u het implementatieproces automatiseren. U kunt AWS-services gebruiken zoals AWS CodePipeline en AWS CodeBuild om uw Amazon Lex-bot automatisch te bouwen, testen en implementeren.
In dit bericht begeleiden we u door de stappen die nodig zijn voor het maken van een CloudFormation-sjabloon voor een Amazon Lex V2-bot.
Overzicht oplossingen
We hebben gekozen voor de Reis boeken bot als uitgangspunt voor deze oefening. We gebruiken een CloudFormation-sjabloon om helemaal opnieuw een nieuwe bot te maken, inclusief het definiëren van intenties, slots en andere vereiste componenten. Daarnaast onderzoeken we onderwerpen als versiebeheer, aliassen, integreren AWS Lambda functies, het maken van voorwaardelijke vertakkingen en het inschakelen van logboekregistratie.
Voorwaarden
U moet de volgende vereisten hebben:
- An AWS-account om een CloudFormation-sjabloon te maken en te implementeren
- Het nodige AWS Identiteits- en toegangsbeheer (IAM) permissies om AWS CloudFormation en de bronnen die in de sjabloon worden gebruikt te implementeren
- Basiskennis van Amazon Lex, Lambda-functies en bijbehorende diensten
- Basiskennis van het maken en implementeren van CloudFormation-sjablonen
Maak een IAM-rol
Om te beginnen moet u een IAM-rol maken die de bot zal gebruiken. U kunt dit bereiken door een CloudFormation-sjabloon te initialiseren en de IAM-rol als resource toe te voegen. U kunt de volgende sjabloon gebruiken om de rol te maken. als jij download het voorbeeldsjabloon en implementeert, zou u moeten zien dat er een IAM-rol is aangemaakt. We geven voorbeelden van sjablonen terwijl we dit bericht doornemen en voegen ze samen naarmate we verder komen.
Configureer de Amazon Lex-bot
Vervolgens moet u de botdefinitie toevoegen. Het volgende is de YAML-sjabloon voor de Amazon Lex-botdefinitie; je bouwt de benodigde componenten één voor één:
Om een bot te maken die alleen de botdefinitie bevat, zonder enige bedoeling, kunt u de volgende sjabloon gebruiken. Hier specificeert u de naam van de bot, de ARN van de rol die u eerder hebt gemaakt, instellingen voor gegevensprivacy en meer:
Je kunt download het bijgewerkte sjabloon. Door de bijgewerkte sjabloon te implementeren, kunt u zowel de rol als de botdefinitie maken. Merk op dat je dat bent het bijwerken van de stapel die u in de vorige stap hebt gemaakt.
De laatste stap bestaat uit het definiëren van de BotLocales
, die het merendeel van de functionaliteit van de bot vormen. Dit omvat bijvoorbeeld Intents
en Slot types
. Het volgende is de YAML-sjabloon:
In dit geval bouw je de BookHotel
intent, waarvoor een aangepast slottype voor kamertypes vereist is. Jij stelt de LocaleId
, dan de VoiceSettings
. Vervolgens voeg je de SlotTypes
en de bijbehorende waarden.
De volgende stap is het definiëren van de Intents
, te beginnen met de eerste bedoeling, BookHotel
, waarbij uitingen, slots en slotprioriteiten worden toegevoegd. De details van deze knooppunten worden gedemonstreerd in de meegeleverde sjabloon. Ten slotte voeg je de tweede intentie toe, namelijk de FallbackIntent
. Zie de volgende code:
Je kunt download het CloudFormation-sjabloon voor het werk dat tot nu toe is gedaan. Na u update uw stapel met deze sjabloon wordt een functionele bot ingezet. Op de Amazon Lex-console kunt u bevestigen dat er een conceptversie van de bot is en een standaardalias TestBotAlias
Is gemaakt.
Maak een nieuwe botversie en alias
Amazon Lex ondersteunt publiceren versies van bots, intenties en slottypen, zodat u de implementatie van uw clienttoepassingen kunt controleren. Een versie is een genummerde momentopname van uw botdefinitie die u kunt publiceren voor gebruik in verschillende delen van uw workflow, zoals ontwikkeling, bèta-implementatie en productie. Amazon Lex-bots ondersteunen ook aliassen. Een alias is een verwijzing naar een specifieke versie van een bot. Met een alias kunt u de versie van uw clienttoepassingen bijwerken. In praktische scenario's worden botaliassen gebruikt voor blauw/groene implementaties en het beheren van omgevingsspecifieke configuraties zoals ontwikkelings- en productieomgevingen.
Laten we ter illustratie zeggen dat u een alias verwijst naar versie 1 van uw bot. Wanneer het tijd is om de bot bij te werken, kunt u versie 2 publiceren en de alias wijzigen zodat deze naar de nieuwe versie verwijst. Omdat uw applicaties de alias gebruiken in plaats van een specifieke versie, ontvangen alle clients de nieuwe functionaliteit zonder dat er updates nodig zijn.
Houd er rekening mee dat wanneer u de CloudFormation-sjabloon wijzigt en de implementatie start, de wijzigingen worden geïmplementeerd in de conceptversie, voornamelijk bedoeld om te testen. Nadat u de testfase heeft voltooid, kunt u een nieuwe versie maken om de wijzigingen die u tot nu toe heeft doorgevoerd, af te ronden.
Vervolgens maakt u op basis van uw concept een nieuwe botversie, stelt u een nieuwe alias in en koppelt u de versie aan deze alias. Hieronder volgen de twee nieuwe bronnen die u aan uw sjabloon kunt toevoegen:
Je kunt download de nieuwe versie van de sjabloon en implementeer het door uw stapel bij te werken. Je kunt op de Amazon Lex-console zien dat er een nieuwe versie is gemaakt en gekoppeld aan een nieuwe alias genaamd BookHotelDemoAlias
.
Wanneer je een nieuwe versie van een Amazon Lex-bot maakt, wordt het versienummer doorgaans opeenvolgend verhoogd, beginnend bij 1. Om een specifieke versie te onderscheiden, kun je de beschrijving ervan raadplegen.
Voeg een Lambda-functie toe
Om waarden te initialiseren of gebruikersinvoer voor uw bot te valideren, kunt u een Lambda-functie als codehook aan uw bot toevoegen. Op dezelfde manier kunt u ook een Lambda-functie gebruiken voor uitvoering, bijvoorbeeld door gegevens naar databases te schrijven of API's aan te roepen om de verzamelde informatie op te slaan. Voor meer informatie, zie Aangepaste logica mogelijk maken met AWS Lambda-functies.
Laten we een nieuwe bron voor de Lambda-functie toevoegen aan de CloudFormation-sjabloon. Hoewel het over het algemeen niet wordt aangeraden om code in CloudFormation-sjablonen in te sluiten, doen we dit hier uitsluitend om de demo-implementatie minder ingewikkeld te maken. Zie de volgende code:
Om deze Lambda-functie voor de uitvoering te gebruiken, schakelt u de code hook-instellingen in uw intentie in:
Omdat u wijzigingen in uw bot heeft aangebracht, kunt u een nieuwe versie van de bot maken door een nieuwe bron toe te voegen met de naam BookHotelVersionWithLambda
in de sjabloon:
De Lambda-functie is gekoppeld aan een botalias. Amazon Lex V2 kan één Lambda-functie per botalias per taal gebruiken. Daarom moet u uw alias in de sjabloon bijwerken om de Lambda-functiebron toe te voegen. Dat kan in de BotAliasLocalSettings
sectie. U moet de alias ook verwijzen naar de nieuwe versie die u hebt gemaakt. De volgende code is de gewijzigde aliasconfiguratie:
Tot nu toe heeft u alleen de Lambda-functie aan de alias gekoppeld. U moet echter toestemming verlenen om de alias de Lambda-functie te laten aanroepen. In de volgende code voeg je de Lambda invoce-toestemming voor Amazon Lex toe en geef je de alias ARN op als bron-ARN:
Je kunt download de nieuwste versie van de sjabloon. Nadat je je stack hebt bijgewerkt met deze versie, heb je een Amazon Lex-bot geïntegreerd met een Lambda-functie.
Voorwaardelijke takken
Laten we nu de voorwaardelijke vertakkingsfunctie van de Amazon Lex-bot onderzoeken en een scenario overwegen waarin het boeken van meer dan vijf nachten in Seattle niet is toegestaan voor de komende week. Volgens de zakelijke vereisten moet het gesprek eindigen met een passend bericht als de gebruiker probeert meer dan vijf nachten in Seattle te boeken. De voorwaardelijke vertakking daarvoor wordt weergegeven in de CloudFormation-sjabloon onder de SlotCaptureSetting
:
Omdat u de botdefinitie hebt gewijzigd, moet u een nieuwe versie in de sjabloon maken en deze aan de alias koppelen. Dit is een tijdelijke wijziging omdat het bedrijf van plan is binnenkort grote boekingen in Seattle toe te staan. Hieronder volgen de twee nieuwe bronnen die u aan de sjabloon toevoegt:
Je kunt download het bijgewerkte sjabloon. Nadat u uw stapel hebt bijgewerkt met deze sjabloonversie, wordt de alias doorverwezen naar de versie waarin de voorwaardelijke vertakkingsfunctie is opgenomen. Om deze wijziging ongedaan te maken, kunt u de alias bijwerken zodat deze terugkeert naar de vorige versie.
Logs
U kunt ook logboeken inschakelen voor uw Amazon Lex-bot. Om dit te doen, moet u de rol van de bot bijwerken om schrijfrechten te verlenen Amazon Cloud Watch logboeken. Hier volgt een voorbeeld van het toevoegen van een CloudWatch-beleid aan de rol:
Om consistent en voorspelbaar gedrag te garanderen, moet u zo specifiek mogelijk zijn bij het definiëren van resourcenamen en eigenschappen in CloudFormation-sjablonen. Dit komt omdat het gebruik van het jokerteken (*) in CloudFormation-sjablonen potentiële beveiligingsrisico's kan opleveren en tot onbedoelde gevolgen kan leiden. Daarom wordt aanbevolen om het gebruik van jokertekens te vermijden en in plaats daarvan waar mogelijk expliciete waarden te gebruiken.
Vervolgens maakt u een CloudWatch-logboekgroepbron, zoals weergegeven in de volgende code, om uw logboeken naar deze groep te leiden:
Ten slotte werkt u uw alias bij om de instellingen voor het gesprekslogboek in te schakelen:
Wanneer u de stapel bijwerkt met deze sjabloon, schakelt u de gesprekslogboeken voor uw bot in. Er wordt in deze stap geen nieuwe versie gemaakt omdat er geen wijzigingen zijn aangebracht in uw botresource. Jij kan download de nieuwste versie van de sjabloon.
Clean Up
Om te voorkomen dat er in de toekomst kosten in rekening worden gebracht, verwijdert u de CloudFormation-stack die u heeft gemaakt.
Conclusie
In dit bericht hebben we het stapsgewijze proces besproken om een CloudFormation-sjabloon te maken voor een Amazon Lex V2-bot. In eerste instantie hebben we een basisbot ingezet, daarna hebben we de mogelijkheden van aliassen en versies onderzocht en hoe we deze efficiënt kunnen gebruiken met sjablonen. Vervolgens leerden we hoe we een Lambda-functie konden integreren met een Amazon Lex V2-bot en implementeerden we voorwaardelijke vertakkingen in de gespreksstroom van de bot om aan de zakelijke vereisten te voldoen. Ten slotte hebben we logboekfuncties toegevoegd door een CloudWatch-loggroepbron te maken en de rol van de bot bij te werken met de benodigde machtigingen.
De sjabloon maakt een eenvoudige implementatie en beheer van de bot mogelijk, met de mogelijkheid om wijzigingen indien nodig ongedaan te maken. Over het algemeen is de CloudFormation-sjabloon handig voor het beheren en optimaliseren van een Amazon Lex V2-bot.
Als volgende stap kunt u verkennen voorbeeld Amazon Lex-bots en pas de technieken toe die in dit bericht worden besproken om ze om te zetten in CloudFormation-sjablonen. Deze praktische oefening zal uw begrip van het beheren van Amazon Lex V2-bots via infrastructuur als code versterken.
Over de auteurs
Thomas Rindfuss is een Sr. Solutions Architect in het Amazon Lex-team. Hij bedenkt, ontwikkelt, prototypes en evangeliseert nieuwe technische functies en oplossingen voor Language AI-services die de klantervaring verbeteren en de acceptatie vergemakkelijken.
Rijeesh Akkambeth Chathoth is een Professional Services Consultant bij AWS. Hij helpt klanten bij het realiseren van hun gewenste business
resultaten op het gebied van contactcenters door gebruik te maken van de functies van Amazon Connect, Amazon Lex en GenAI.
- 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/manage-your-amazon-lex-bot-via-aws-cloudformation-templates/
- : heeft
- :is
- :niet
- :waar
- $UP
- 1
- 10
- 100
- 11
- 13
- 14
- 15%
- 300
- 40
- 7
- 8
- 9
- a
- vermogen
- toegang
- accommoderen
- Bereiken
- het bereiken van
- over
- Handelen
- Actie
- toevoegen
- toegevoegd
- toe te voegen
- Daarnaast
- Adoptie
- vergevorderd
- adviseerde
- Na
- AI
- AI-diensten
- Alles
- toelaten
- toegestaan
- toestaat
- langs
- ook
- Hoewel
- Amazone
- Amazon-Lex
- Amazon Web Services
- an
- en
- elke
- APIs
- Aanvraag
- toepassingen
- Solliciteer
- nadering
- passend
- ZIJN
- aren
- kunstmatig
- kunstmatige intelligentie
- Kunstmatige intelligentie (AI)
- AS
- assistenten
- geassocieerd
- At
- pogingen
- automatiseren
- geautomatiseerde
- webmaster.
- vermijd
- AWS
- AWS CloudFormatie
- AWS Lambda
- terug
- gebaseerde
- basis-
- BE
- omdat
- wordt
- geweest
- vaardigheden
- beginnen
- namens
- gedrag
- onder
- betekent
- beta
- boek
- boeken
- boekingen
- Bot
- zowel
- bots
- Tak
- takken
- bouw
- Gebouw
- bedrijfsdeskundigen
- by
- Dit betekent dat we onszelf en onze geliefden praktisch vergiftigen.
- bellen
- CAN
- kan niet
- geval
- Centreren
- uitdagend
- verandering
- veranderd
- Wijzigingen
- karakter
- lasten
- chatbots
- controle
- Kinderen
- uitgekozen
- Plaats
- klant
- klanten
- Sluiten
- code
- COM
- compleet
- ingewikkeldheid
- ingewikkeld
- componenten
- begrijpen
- betrokken
- voorwaarde
- Configuratie
- Bevestigen
- BEVESTIGD
- Verbinden
- Gevolgen
- Overwegen
- consequent
- troosten
- bouwen
- consultant
- contact
- contactcentrum
- content
- verband
- onder controle te houden
- Gesprek
- spraakzaam
- converteren
- Overeenkomend
- en je merk te creëren
- aangemaakt
- Wij creëren
- gewoonte
- klant
- klantervaring
- Klanten
- gegevens
- data Privacy
- databanken
- Datum
- dag
- deep
- diepgaand leren
- Standaard
- bepalen
- het definiëren van
- definitie
- demonstratie
- gedemonstreerd
- afhankelijk
- implementeren
- ingezet
- het inzetten
- inzet
- implementaties
- beschrijving
- Design
- gewenste
- bestemming
- gegevens
- ontwikkelaars
- Ontwikkeling
- ontwikkelt
- anders
- directe
- gerichte
- onderscheiden
- besproken
- do
- gedaan
- beneden
- draft
- elk
- Gemak
- effect
- doeltreffend
- efficiënt
- inspanning
- insluiten
- telt
- in staat stellen
- ingeschakeld
- waardoor
- einde
- verzekeren
- omgevingen
- fout
- oprichten
- Event
- voorbeeld
- voorbeelden
- Oefening
- ervaring
- Verken
- Nagegaan
- vals
- ver
- Kenmerk
- Voordelen
- veld-
- finale
- afronden
- Tot slot
- Voornaam*
- vijf
- stroom
- volgend
- Voor
- formulier
- oppompen van
- vervulling
- geheel
- functie
- functioneel
- functionaliteit
- functies
- verder
- toekomst
- genai
- algemeen
- krijgen
- Git
- Go
- toe te kennen
- Groep
- Groeit
- gids
- hands-on
- Hebben
- he
- helpt
- hier
- hotel
- Hoe
- How To
- Echter
- HTML
- http
- HTTPS
- menselijk
- i
- Identiteit
- if
- illustreren
- uitvoering
- geïmplementeerd
- importeren
- verbetert
- in
- omvatten
- omvat
- Inclusief
- Incorporated
- opnemen
- index
- informatie
- Infrastructuur
- eerste
- eerste
- beginnen
- invoer
- verkrijgen in plaats daarvan
- integreren
- geïntegreerde
- Integreren
- Intelligentie
- aandachtig
- interactie
- interfaces
- in
- bedenkt
- betrokken zijn
- gaat
- IT
- HAAR
- json
- koning
- kennis
- taal
- Groot
- laatste
- leiden
- geleerd
- leren
- minder
- leveraging
- als
- LINK
- gekoppeld
- lokaal
- gelegen
- plaats
- inloggen
- logging
- logica
- gemaakt
- onderhouden
- Meerderheid
- maken
- maken
- beheer
- beheerd
- management
- beheren
- veel
- lucifers
- Matthew
- betekende
- gaan
- Bericht
- berichten
- denken
- model
- modellen
- gewijzigd
- wijzigen
- meer
- meervoudig
- Dan moet je
- naam
- Genoemd
- namen
- Naturel
- noodzakelijk
- Noodzaak
- nodig
- New
- volgende
- volgende week
- nacht
- geen
- knooppunten
- Geen
- nota
- nu
- aantal
- genummerd
- of
- aangeboden
- Okay
- on
- EEN
- online.
- online privacy
- Slechts
- optimaliseren
- or
- OS
- Overige
- onze
- totaal
- deel
- onderdelen
- pad
- voor
- toestemming
- permissies
- fase
- plannen
- Plato
- Plato gegevensintelligentie
- PlatoData
- punt
- beleidsmaatregelen door te lezen.
- beleidsmaatregelen
- pose
- mogelijk
- Post
- potentieel
- PRAKTISCH
- praktijk
- Voorspelbaar
- vereisten
- voorkomen
- vorig
- die eerder
- in de eerste plaats
- Principal
- prioriteiten
- prioriteit
- privacy
- productie
- professioneel
- Programma
- Voortgang
- vastgoed
- bescherming
- prototypes
- zorgen voor
- mits
- biedt
- publiceren
- Reclame
- verhogen
- klaar
- ontvangen
- aanbevolen
- verwijzen
- verwant
- verwijderen
- het verwijderen van
- vertegenwoordigd
- nodig
- vereiste
- Voorwaarden
- vereist
- Reservering
- hulpbron
- Resources
- antwoord
- resultaat
- terugkeer
- hergebruiken
- terugkeren
- rechts
- Risico
- risico's
- Rol
- Rollen
- Kamer
- Studio's
- runtime
- s
- sake
- dezelfde
- monster
- Bespaar
- ervaren
- scenario
- scenario's
- krassen
- Seattle
- Tweede
- sectie
- veiligheid
- veiligheidsrisico's
- zien
- Serverless
- service
- Diensten
- reeks
- settings
- setup
- moet
- getoond
- evenzo
- sleuf
- speelautomaten
- Momentopname
- So
- dusver
- uitsluitend
- Oplossingen
- iets
- binnenkort
- bron
- Tussenruimte
- specifiek
- specificeren
- stack
- regie
- gestart
- Start
- Land
- Statement
- blijven
- verblijven
- Stap voor
- Stappen
- eenvoudig
- gestroomlijnd
- Draad
- onderwerpen
- dergelijk
- ondersteuning
- ondersteunde
- steunen
- Systems
- TAG
- doelgerichte
- team
- Technisch
- technieken
- Technologies
- sjabloon
- templates
- tijdelijk
- proef
- Testen
- neem contact
- dat
- De
- De toekomst
- De Bron
- hun
- Ze
- harte
- Er.
- daarom
- Deze
- Derde
- dit
- die
- Door
- niet de tijd of
- naar
- onderwerpen
- Transformeren
- waar
- twee
- type dan:
- types
- typisch
- voor
- begrijpen
- begrip
- tot
- bijwerken
- bijgewerkt
- updates
- bijwerken
- us
- .
- gebruikt
- nuttig
- Gebruiker
- gebruikers
- gebruik
- BEVESTIG
- waarde
- Values
- versie
- versies
- via
- Virtueel
- willen
- Manier..
- we
- web
- webservices
- Website
- week
- GOED
- Wat
- wanneer
- waar dan ook
- of
- welke
- geheel
- wil
- Met
- binnen
- zonder
- Mijn werk
- workflow
- zou
- het schrijven van
- YAML
- You
- Your
- zephyrnet