Amazon Lex este un serviciu de inteligență artificială (AI) complet gestionat cu modele avansate în limbaj natural pentru a proiecta, construi, testa și implementa interfețe conversaționale în aplicații. Folosește tehnologii avansate de învățare profundă pentru a înțelege contribuția utilizatorilor, permițând dezvoltatorilor să creeze chatbot, asistenți virtuali și alte aplicații care pot interacționa cu utilizatorii în limbaj natural.
Gestionați-vă roboții Amazon Lex folosind Formarea AWS Cloud vă permite să creați șabloane care definesc botul și toate resursele AWS de care depinde. AWS CloudFormation furnizează și configurează acele resurse în numele dvs., eliminând riscul de eroare umană atunci când implementați roboți în medii noi. Beneficiile utilizării CloudFormation includ:
- consecvență – Un șablon CloudFormation oferă o modalitate mai consistentă și mai automată de a implementa și gestiona resursele asociate cu un bot Amazon Lex.
- Controlul versiunii – Cu AWS CloudFormation, puteți utiliza sisteme de control al versiunilor precum Git pentru a vă gestiona șabloanele CloudFormation. Acest lucru vă permite să mențineți diferite versiuni ale botului dvs. și să reveniți la versiunile anterioare dacă este necesar.
- Abilitatea de Reus – Puteți reutiliza șabloanele CloudFormation în mai multe medii, cum ar fi dezvoltarea, punerea în scenă și producția. Acest lucru economisește timp și efort în definirea aceluiași bot în diferite medii.
- extensibilitate – Pe măsură ce botul tău Amazon Lex crește în complexitate, gestionându-l prin intermediul Consola de administrare AWS devine mai provocatoare. AWS CloudFormation permite o abordare mai eficientă și mai eficientă a gestionării definiției și resurselor botului.
- Automatizare – Utilizarea unui șablon CloudFormation vă permite să automatizați procesul de implementare. Puteți utiliza servicii AWS precum AWS CodePipeline și AWS CodeBuild pentru a construi, testa și implementa automat botul tău Amazon Lex.
În această postare, vă ghidăm prin pașii implicați în crearea unui șablon CloudFormation pentru un bot Amazon Lex V2.
Prezentare generală a soluțiilor
Noi am ales Rezervați excursie bot ca punct de plecare pentru acest exercițiu. Folosim un șablon CloudFormation pentru a crea un nou bot de la zero, inclusiv definirea intențiilor, sloturilor și a altor componente necesare. În plus, explorăm subiecte precum controlul versiunilor, aliasuri, integrare AWS Lambdas funcții, crearea de ramuri condiționate și activarea înregistrării.
Cerințe preliminare
Ar trebui să aveți următoarele condiții preliminare:
- An Cont AWS pentru a crea și implementa un șablon CloudFormation
- Necesarul Gestionarea identității și accesului AWS (EU SUNT) permisiuni pentru a implementa AWS CloudFormation și resursele utilizate în șablon
- Cunoștințe de bază despre Amazon Lex, funcțiile Lambda și serviciile asociate
- Cunoștințe de bază despre crearea și implementarea șabloanelor CloudFormation
Creați un rol IAM
Pentru a începe, trebuie să creați un rol IAM pe care botul îl va folosi. Puteți realiza acest lucru prin inițializarea unui șablon CloudFormation și adăugarea rolului IAM ca resursă. Puteți utiliza următorul șablon pentru a crea rolul. daca tu descărcați șablonul exemplu și implementați-l, ar trebui să vedeți că a fost creat un rol IAM. Oferim exemple de șabloane pe măsură ce parcurgem această postare și le îmbinăm pe măsură ce mergem mai departe.
Configurați botul Amazon Lex
Apoi, trebuie să adăugați definiția botului. Următorul este șablonul YAML pentru definiția robotului Amazon Lex; construiți componentele necesare una câte una:
Pentru a crea un bot care include doar definiția botului fără nicio intenție, puteți utiliza următorul șablon. Aici, specificați numele botului, ARN-ul rolului pe care l-ați creat anterior, setările de confidențialitate a datelor și multe altele:
Poti descărcați șablonul actualizat. Implementarea șablonului actualizat vă permite să creați atât rolul, cât și definiția botului. Rețineți că sunteți actualizarea stivei ai creat la pasul anterior.
Pasul final presupune definirea BotLocales
, care formează majoritatea funcționalității botului. Aceasta include, de exemplu, Intents
și Slot types
. Următorul este șablonul YAML:
În acest caz, construiți BookHotel
intentie, care necesită un tip de slot personalizat pentru tipurile de camere. Tu ai setat LocaleId
, apoi VoiceSettings
. Apoi adăugați SlotTypes
și valorile corespunzătoare acestora.
Următorul pas este definirea Intents
, începând cu prima intenție, BookHotel
, care implică adăugarea de enunțuri, intervale și priorități de slot. Detaliile acestor noduri sunt demonstrate în șablonul furnizat. În cele din urmă, adăugați a doua intenție, care este FallbackIntent
. Consultați următorul cod:
Poti descărcați șablonul CloudFormation pentru munca depusa pana acum. După dumneavoastră actualizați-vă stiva cu acest șablon, va fi implementat un bot funcțional. Pe consola Amazon Lex, puteți confirma că există o versiune nefinalizată a botului și un alias implicit numit TestBotAlias
a fost creat.
Creați o nouă versiune de bot și un alias
Amazon Lex acceptă publicarea Versiunile de boți, intenții și tipuri de sloturi, astfel încât să puteți controla implementarea aplicațiilor client. O versiune este un instantaneu numerotat al definiției botului dvs. pe care îl puteți publica pentru utilizare în diferite părți ale fluxului de lucru, cum ar fi dezvoltarea, implementarea beta și producția. Boții Amazon Lex acceptă, de asemenea pseudonime. Un alias este un pointer către o anumită versiune a unui bot. Cu un alias, puteți actualiza versiunea aplicațiilor client. În scenariile practice, aliasurile de bot sunt folosite pentru implementări albastru/verde și pentru gestionarea configurațiilor specifice mediului, cum ar fi mediile de dezvoltare și producție.
Pentru a exemplifica, să presupunem că indicați un alias către versiunea 1 a botului dvs. Când este timpul să actualizați botul, puteți publica versiunea 2 și puteți schimba alias-ul pentru a indica noua versiune. Deoarece aplicațiile dvs. folosesc aliasul în loc de o anumită versiune, toți clienții primesc noua funcționalitate fără a necesita actualizări.
Rețineți că atunci când modificați șablonul CloudFormation și inițiați implementarea, modificările sunt implementate în versiunea nefinalizată, destinate în primul rând testării. După ce finalizați faza de testare, puteți stabili o nouă versiune pentru a finaliza modificările pe care le-ați încorporat până acum.
Apoi, creați o nouă versiune de bot bazată pe schița dvs., configurați un nou alias și legați versiunea la acest alias. Următoarele sunt cele două resurse noi de adăugat șablonului dvs.:
Poti descărcați noua versiune a șablonului și implementați-l prin actualizarea stivei. Puteți vedea pe consola Amazon Lex că o nouă versiune este creată și asociată cu un nou alias numit BookHotelDemoAlias
.
Atunci când creați o nouă versiune a unui robot Amazon Lex, acesta crește în mod secvenţial numărul versiunii, începând de la 1. Pentru a discerne o anumită versiune, puteți consulta descrierea acesteia.
Adăugați o funcție Lambda
Pentru a inițializa valori sau a valida intrarea utilizatorului pentru bot, puteți adăuga o funcție Lambda ca un cârlig de cod la bot. În mod similar, puteți utiliza și o funcție Lambda pentru îndeplinire, de exemplu, scrierea datelor în baze de date sau apelarea API-urilor pentru a salva informațiile colectate. Pentru mai multe informații, consultați Activarea logicii personalizate cu funcțiile AWS Lambda.
Să adăugăm o nouă resursă pentru funcția Lambda la șablonul CloudFormation. Deși, în general, nu este recomandat să încorporați codul în șabloanele CloudFormation, facem acest lucru aici doar de dragul de a face implementarea demonstrației mai puțin complicată. Vezi următorul cod:
Pentru a utiliza această funcție Lambda pentru îndeplinire, activați setările cârligului de cod în intenția dvs.:
Deoarece ați făcut modificări botului dvs., puteți crea o nouă versiune a botului adăugând o nouă resursă numită BookHotelVersionWithLambda
în șablon:
Funcția Lambda este asociată cu un alias de bot. Amazon Lex V2 poate folosi o funcție Lambda per alias de bot pentru fiecare limbă. Prin urmare, trebuie să vă actualizați aliasul în șablon pentru a adăuga resursa funcției Lambda. Puteți face acest lucru în BotAliasLocalSettings
secțiune. De asemenea, trebuie să indicați aliasul către noua versiune pe care ați creat-o. Următorul cod este configurația de alias modificată:
Până acum, ați legat doar funcția Lambda cu alias. Cu toate acestea, trebuie să acordați permisiunea pentru a permite alias-ului să invoce funcția Lambda. În următorul cod, adăugați permisiunea de invocare Lambda pentru Amazon Lex și specificați aliasul ARN ca ARN sursă:
Poti descărcați cea mai recentă versiune a șablonului. După actualizarea stivei cu această versiune, veți avea un robot Amazon Lex integrat cu o funcție Lambda.
Ramuri condiționate
Acum să explorăm caracteristica de ramificare condiționată a robotului Amazon Lex și să luăm în considerare un scenariu în care rezervarea a mai mult de cinci nopți în Seattle nu este permisă pentru săptămâna următoare. Conform cerințelor comerciale, conversația ar trebui să se încheie cu un mesaj adecvat dacă utilizatorul încearcă să rezerve mai mult de cinci nopți în Seattle. Ramura condiționată pentru aceasta este reprezentată în șablonul CloudFormation sub SlotCaptureSetting
:
Deoarece ați modificat definiția botului, trebuie să creați o nouă versiune în șablon și să o legați cu aliasul. Aceasta este o modificare temporară, deoarece afacerile plănuiesc să permită rezervări mari în Seattle în curând. Următoarele sunt cele două resurse noi pe care le adăugați la șablon:
Poti descărcați șablonul actualizat. După ce vă actualizați stiva cu această versiune de șablon, aliasul va fi direcționat către versiunea care încorporează caracteristica de ramificare condiționată. Pentru a anula această modificare, puteți actualiza alias-ul pentru a reveni la versiunea anterioară.
Activitate
De asemenea, puteți activa jurnalele pentru botul dvs. Amazon Lex. Pentru a face acest lucru, trebuie să actualizați rolul botului pentru a acorda permisiuni de scriere Amazon CloudWatch busteni. Următorul este un exemplu de adăugare a unei politici CloudWatch la rol:
Pentru a asigura un comportament consecvent și previzibil, ar trebui să fiți cât mai specific posibil atunci când definiți numele și proprietățile resurselor în șabloanele CloudFormation. Acest lucru se datorează faptului că utilizarea caracterului wildcard (*) în șabloanele CloudFormation poate prezenta riscuri potențiale de securitate și poate duce la consecințe nedorite. Prin urmare, este recomandat să evitați utilizarea metacaracterilor și, în schimb, să folosiți valori explicite ori de câte ori este posibil.
Apoi, creați o resursă de grup de jurnal CloudWatch, așa cum se arată în următorul cod, pentru a vă direcționa jurnalele către acest grup:
În cele din urmă, vă actualizați aliasul pentru a activa setările jurnalului de conversații:
Când actualizați stiva cu acest șablon, activați jurnalele de conversație pentru bot. O versiune nouă nu este creată în acest pas, deoarece nu există modificări la resursa botului dvs. Puteți descărcați cea mai recentă versiune a șablonului.
Clean Up
Pentru a preveni atragerea de taxe în viitor, ștergeți stiva CloudFormation pe care ați creat-o.
Concluzie
În această postare, am discutat despre procesul pas cu pas pentru a crea un șablon CloudFormation pentru un bot Amazon Lex V2. Inițial, am implementat un bot de bază, apoi am explorat potențialul aliasurilor și versiunilor și cum să le folosim eficient cu șabloane. Apoi, am învățat cum să integrăm o funcție Lambda cu un bot Amazon Lex V2 și am implementat ramificarea condiționată în fluxul de conversație al botului pentru a se potrivi cerințelor de afaceri. În cele din urmă, am adăugat funcții de înregistrare prin crearea unei resurse de grup de jurnal CloudWatch și actualizarea rolului botului cu permisiunile necesare.
Șablonul permite implementarea și gestionarea simplă a botului, cu posibilitatea de a anula modificările după cum este necesar. În general, șablonul CloudFormation este util pentru gestionarea și optimizarea unui bot Amazon Lex V2.
Ca pas următor, puteți explora eșantion de roboți Amazon Lex și aplicați tehnicile discutate în această postare pentru a le converti în șabloane CloudFormation. Această practică practică vă va consolida înțelegerea despre gestionarea roboților Amazon Lex V2 prin infrastructură ca cod.
Despre Autori
Thomas Rindfuss este un arhitect senior de soluții în echipa Amazon Lex. El inventează, dezvoltă, prototipează și evanghelizează noi caracteristici tehnice și soluții pentru serviciile Language AI care îmbunătățesc experiența clienților și ușurează adoptarea.
Rijeesh Akkambeth Chathoth este consultant de servicii profesionale la AWS. El ajută clienții să-și realizeze afacerea dorită
rezultate în spațiul Contact Center prin valorificarea funcțiilor Amazon Connect, Amazon Lex și GenAI.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- PlatoData.Network Vertical Generative Ai. Împuterniciți-vă. Accesați Aici.
- PlatoAiStream. Web3 Intelligence. Cunoștințe amplificate. Accesați Aici.
- PlatoESG. carbon, CleanTech, Energie, Mediu inconjurator, Solar, Managementul deșeurilor. Accesați Aici.
- PlatoHealth. Biotehnologie și Inteligență pentru studii clinice. Accesați Aici.
- Sursa: https://aws.amazon.com/blogs/machine-learning/manage-your-amazon-lex-bot-via-aws-cloudformation-templates/
- :are
- :este
- :nu
- :Unde
- $UP
- 1
- 10
- 100
- 11
- 13
- 14
- 15%
- 300
- 40
- 7
- 8
- 9
- a
- capacitate
- acces
- găzdui
- Obține
- realizarea
- peste
- act
- Acțiune
- adăuga
- adăugat
- adăugare
- În plus,
- Adoptare
- avansat
- avizat
- După
- AI
- Servicii AI
- TOATE
- permite
- permis
- permite
- de-a lungul
- de asemenea
- Cu toate ca
- Amazon
- Amazon Lex
- Amazon Web Services
- an
- și
- Orice
- API-uri
- aplicație
- aplicatii
- Aplică
- abordare
- adecvat
- SUNT
- aren
- artificial
- inteligență artificială
- Inteligența artificială (AI)
- AS
- asistenți
- asociate
- At
- Încercările
- automatizarea
- Automata
- în mod automat
- evita
- AWS
- Formarea AWS Cloud
- AWS Lambdas
- înapoi
- bazat
- de bază
- BE
- deoarece
- devine
- fost
- înainte
- începe
- folosul
- comportament
- de mai jos
- Beneficiile
- beta
- carte
- rezervare
- rezervările
- Bot
- atât
- roboţii
- Branch firma
- ramuri
- construi
- Clădire
- afaceri
- by
- denumit
- apel
- CAN
- nu poti
- caz
- Centru
- provocare
- Schimbare
- si-a schimbat hainele;
- Modificări
- caracter
- taxe
- chatbots
- verifica
- Copii
- ales
- Oraș
- client
- clientii
- Închide
- cod
- COM
- Completă
- complexitate
- complicat
- componente
- înţelege
- îngrijorat
- condiție
- Configuraţie
- Confirma
- CONFIRMAT
- Conectați
- Consecințele
- Lua în considerare
- consistent
- Consoleze
- construi
- consultant
- contactați-ne
- centru de contact
- conţinut
- context
- Control
- Conversație
- de conversaţie
- converti
- Corespunzător
- crea
- a creat
- Crearea
- personalizat
- client
- experienta clientului
- clienţii care
- de date
- confidențialitatea datelor
- baze de date
- Data
- zi
- adânc
- învățare profundă
- Mod implicit
- defini
- definire
- definiție
- Demo
- demonstrat
- depinde de
- implementa
- dislocate
- Implementarea
- desfășurarea
- implementări
- descriere
- Amenajări
- dorit
- destinație
- detalii
- Dezvoltatorii
- Dezvoltare
- dezvoltă
- diferit
- direcționa
- dirijat
- discerne
- discutat
- do
- făcut
- jos
- proiect
- fiecare
- faciliteaza
- efect
- eficient
- eficient
- efort
- încastra
- angajează
- permite
- activat
- permițând
- capăt
- asigura
- medii
- eroare
- stabili
- eveniment
- exemplu
- exemple
- Exercita
- experienţă
- explora
- explorat
- fals
- departe
- Caracteristică
- DESCRIERE
- camp
- final
- finalizarea
- În cele din urmă
- First
- cinci
- debit
- următor
- Pentru
- formă
- din
- împlinire
- complet
- funcţie
- funcțional
- funcționalitate
- funcții
- mai mult
- viitor
- genai
- în general
- obține
- merge
- Go
- acordarea
- grup
- creste
- ghida
- hands-on
- Avea
- he
- ajută
- aici
- hotel
- Cum
- Cum Pentru a
- Totuși
- HTML
- http
- HTTPS
- uman
- i
- Identitate
- if
- ilustra
- implementarea
- implementat
- import
- îmbunătăţeşte
- in
- include
- include
- Inclusiv
- Incorporated
- care încorporează
- index
- informații
- Infrastructură
- inițială
- inițial
- iniția
- intrare
- in schimb
- integra
- integrate
- integrarea
- Inteligență
- scop
- interacţiona
- interfeţe
- în
- inventează
- implicat
- implică
- IT
- ESTE
- JSON
- Rege
- cunoştinţe
- limbă
- mare
- Ultimele
- conduce
- învățat
- învăţare
- mai puțin
- efectului de pârghie
- ca
- LINK
- legate de
- localizare
- situat
- locaţie
- log
- logare
- logică
- făcut
- menține
- Majoritate
- face
- Efectuarea
- administra
- gestionate
- administrare
- de conducere
- multe
- meciuri
- Matthew
- a însemnat
- Îmbina
- mesaj
- mesaje
- minte
- model
- Modele
- modificată
- modifica
- mai mult
- multiplu
- trebuie sa
- nume
- Numit
- nume
- Natural
- necesar
- Nevoie
- necesar
- Nou
- următor
- saptamana viitoare
- noapte
- Nu.
- noduri
- Nici unul
- nota
- acum
- număr
- numerotat
- of
- oferit
- Bine
- on
- ONE
- on-line
- protejarea confidențialității online
- afară
- optimizarea
- or
- OS
- Altele
- al nostru
- global
- parte
- piese
- cale
- pentru
- permisiune
- permisiuni
- fază
- Planurile
- Plato
- Informații despre date Platon
- PlatoData
- Punct
- Politicile
- Politica
- pune
- posibil
- Post
- potenţial
- Practic
- practică
- predictibil
- premise
- împiedica
- precedent
- în prealabil
- în primul rând
- Principal
- priorități
- prioritate
- intimitate
- proces
- producere
- profesional
- Program
- Progres
- proprietăţi
- protecţie
- prototipuri
- furniza
- prevăzut
- furnizează
- publica
- Editare
- ridica
- gata
- a primi
- recomandat
- trimite
- legate de
- scoate
- eliminarea
- reprezentate
- necesar
- cerință
- Cerinţe
- Necesită
- Rezervare
- resursă
- Resurse
- răspuns
- rezultat
- reveni
- reutilizarea
- reveni
- dreapta
- Risc
- Riscurile
- Rol
- sul
- Cameră
- Camere
- Runtime
- s
- sake
- acelaşi
- probă
- Economisiți
- Spune
- scenariu
- scenarii
- zgâria
- Seattle
- Al doilea
- Secțiune
- securitate
- riscuri de securitate
- vedea
- serverless
- serviciu
- Servicii
- set
- setări
- configurarea
- să
- indicat
- asemănător
- slot
- sloturi
- Instantaneu
- So
- până acum
- Numai
- soluţii
- ceva
- curând
- Sursă
- Spaţiu
- specific
- precizând
- stivui
- înscenare
- început
- Pornire
- Stat
- Declarație
- şedere
- ședere
- Pas
- paşi
- simplu
- raționalizate
- Şir
- subiect
- astfel de
- a sustine
- Suportat
- Sprijină
- sisteme
- TAG
- vizate
- echipă
- Tehnic
- tehnici de
- Tehnologii
- șablon
- şabloane
- temporar
- test
- Testarea
- decât
- acea
- Viitorul
- Sursa
- lor
- Lor
- apoi
- Acolo.
- prin urmare
- Acestea
- Al treilea
- acest
- aceste
- Prin
- timp
- la
- subiecte
- Transforma
- adevărat
- Două
- tip
- Tipuri
- tipic
- în
- înţelege
- înţelegere
- până la
- Actualizează
- actualizat
- actualizări
- actualizarea
- us
- utilizare
- utilizat
- util
- Utilizator
- utilizatorii
- folosind
- VALIDA
- valoare
- Valori
- versiune
- Versiunile
- de
- Virtual
- vrea
- Cale..
- we
- web
- servicii web
- website
- săptămână
- BINE
- Ce
- cand
- oriunde
- dacă
- care
- întreg
- voi
- cu
- în
- fără
- Apartamente
- flux de lucru
- ar
- scris
- yaml
- Tu
- Ta
- zephyrnet