อเมซอน เล็กซ์ เป็นบริการสำหรับสร้างอินเทอร์เฟซการสนทนาในแอปพลิเคชันใด ๆ โดยใช้เสียงและข้อความ ด้วย Amazon Lex คุณสามารถสร้างภาษาที่เป็นธรรมชาติ บอทสนทนา (แชทบ็อต) ตัวแทนเสมือน และระบบตอบสนองด้วยเสียงแบบโต้ตอบ (IVR) ได้อย่างง่ายดาย ตอนนี้คุณสามารถใช้ไวยากรณ์ของอุตสาหกรรมเพื่อเร่งการพัฒนา IVR บน Amazon Lex โดยเป็นส่วนหนึ่งของความพยายามในการย้าย IVR ของคุณ ไวยากรณ์อุตสาหกรรมคือชุดของไฟล์ XML ที่มีให้ในรูปแบบa ประเภทสล็อตไวยากรณ์. คุณสามารถเลือกจากไวยากรณ์อุตสาหกรรมที่สร้างไว้ล่วงหน้ามากมายในโดเมนต่างๆ เช่น บริการทางการเงิน ประกันภัย และโทรคมนาคม ในโพสต์นี้ เราจะตรวจสอบไวยากรณ์ของอุตสาหกรรมสำหรับอุตสาหกรรมเหล่านี้ และใช้เพื่อสร้างประสบการณ์ IVR
บริการทางการเงิน
คุณสามารถใช้ Amazon Lex ในโดเมนบริการทางการเงินเพื่อทำให้การบริการลูกค้าเป็นไปอย่างอัตโนมัติ เช่น การชำระเงินด้วยบัตรเครดิต การสมัครสินเชื่อจำนอง สถานะพอร์ตโฟลิโอ และการอัปเดตบัญชี ในระหว่างการโต้ตอบเหล่านี้ โฟลว์ IVR จำเป็นต้องรวบรวมรายละเอียดหลายอย่าง รวมถึงหมายเลขบัตรเครดิต รหัสสินเชื่อจำนอง และรายละเอียดพอร์ตโฟลิโอ เพื่อตอบสนองคำขอของผู้ใช้ เราใช้ไวยากรณ์ของอุตสาหกรรมบริการทางการเงินในการสนทนาตัวอย่างต่อไปนี้:
ตัวแทน: ยินดีต้อนรับสู่ธนาคาร ACME ในการเริ่มต้น ฉันจะขอรหัสบัญชีของคุณได้ไหม
ผู้ใช้: ใช่ มันคือ AB12345
IVR: เข้าใจแล้ว ฉันจะช่วยคุณได้อย่างไร?
ผู้ใช้: ฉันต้องการโอนเงินเข้าบัญชีออมทรัพย์ของฉัน
IVR: แน่นอน คุณต้องการโอนเท่าไหร่?
ผู้ใช้: $100
IVR: เยี่ยมมาก ขอบคุณ
ไวยากรณ์ต่อไปนี้ได้รับการสนับสนุนสำหรับบริการทางการเงิน: รหัสบัญชี หมายเลขบัตรเครดิต จำนวนเงินที่โอน และรูปแบบวันที่ที่แตกต่างกัน เช่น วันที่หมดอายุ (ดด/ปป) และวันที่ชำระเงิน (วว/วว)
มาดูตัวอย่างกัน หมายเลขบัญชี ไวยากรณ์. คุณสามารถอ้างถึงไวยากรณ์อื่น ๆ ใน เอกสาร.
<?xml version="1.0" encoding="UTF-8" ?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/06/grammar http://www.w3.org/TR/speech-grammar/grammar.xsd" xml:lang="en-US" version="1.0" root="main" mode="voice" tag-format="semantics/1.0"> <!-- Test Cases Grammar will support the following inputs: Scenario 1: Input: My account number is A B C 1 2 3 4 Output: ABC1234 Scenario 2: Input: My account number is 1 2 3 4 A B C Output: 1234ABC Scenario 3: Input: Hmm My account number is 1 2 3 4 A B C 1 Output: 123ABC1 --> <rule id="main" scope="public"> <tag>out=""</tag> <item><ruleref uri="#alphanumeric"/><tag>out += rules.alphanumeric.alphanum;</tag></item> <item repeat="0-1"><ruleref uri="#alphabets"/><tag>out += rules.alphabets.letters;</tag></item> <item repeat="0-1"><ruleref uri="#digits"/><tag>out += rules.digits.numbers</tag></item> </rule> <rule id="text"> <item repeat="0-1"><ruleref uri="#hesitation"/></item> <one-of> <item repeat="0-1">account number is</item> <item repeat="0-1">Account Number</item> <item repeat="0-1">Here is my Account Number </item> <item repeat="0-1">Yes, It is</item> <item repeat="0-1">Yes It is</item> <item repeat="0-1">Yes It's</item> <item repeat="0-1">My account Id is</item> <item repeat="0-1">This is the account Id</item> <item repeat="0-1">account Id</item> </one-of> </rule> <rule id="hesitation"> <one-of> <item>Hmm</item> <item>Mmm</item> <item>My</item> </one-of> </rule> <rule id="alphanumeric" scope="public"> <tag>out.alphanum=""</tag> <item><ruleref uri="#alphabets"/><tag>out.alphanum += rules.alphabets.letters;</tag></item> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.alphanum += rules.digits.numbers</tag></item> </rule> <rule id="alphabets"> <item repeat="0-1"><ruleref uri="#text"/></item> <tag>out.letters=""</tag> <tag>out.firstOccurence=""</tag> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.firstOccurence += rules.digits.numbers; out.letters += out.firstOccurence;</tag></item> <item repeat="1-"> <one-of> <item>A<tag>out.letters+='A';</tag></item> <item>B<tag>out.letters+='B';</tag></item> <item>C<tag>out.letters+='C';</tag></item> <item>D<tag>out.letters+='D';</tag></item> <item>E<tag>out.letters+='E';</tag></item> <item>F<tag>out.letters+='F';</tag></item> <item>G<tag>out.letters+='G';</tag></item> <item>H<tag>out.letters+='H';</tag></item> <item>I<tag>out.letters+='I';</tag></item> <item>J<tag>out.letters+='J';</tag></item> <item>K<tag>out.letters+='K';</tag></item> <item>L<tag>out.letters+='L';</tag></item> <item>M<tag>out.letters+='M';</tag></item> <item>N<tag>out.letters+='N';</tag></item> <item>O<tag>out.letters+='O';</tag></item> <item>P<tag>out.letters+='P';</tag></item> <item>Q<tag>out.letters+='Q';</tag></item> <item>R<tag>out.letters+='R';</tag></item> <item>S<tag>out.letters+='S';</tag></item> <item>T<tag>out.letters+='T';</tag></item> <item>U<tag>out.letters+='U';</tag></item> <item>V<tag>out.letters+='V';</tag></item> <item>W<tag>out.letters+='W';</tag></item> <item>X<tag>out.letters+='X';</tag></item> <item>Y<tag>out.letters+='Y';</tag></item> <item>Z<tag>out.letters+='Z';</tag></item> </one-of> </item> </rule> <rule id="digits"> <item repeat="0-1"><ruleref uri="#text"/></item> <tag>out.numbers=""</tag> <item repeat="1-10"> <one-of> <item>0<tag>out.numbers+=0;</tag></item> <item>1<tag>out.numbers+=1;</tag></item> <item>2<tag>out.numbers+=2;</tag></item> <item>3<tag>out.numbers+=3;</tag></item> <item>4<tag>out.numbers+=4;</tag></item> <item>5<tag>out.numbers+=5;</tag></item> <item>6<tag>out.numbers+=6;</tag></item> <item>7<tag>out.numbers+=7;</tag></item> <item>8<tag>out.numbers+=8;</tag></item> <item>9<tag>out.numbers+=9;</tag></item> </one-of> </item> </rule>
</grammar>
การใช้ไวยากรณ์อุตสาหกรรมสำหรับบริการทางการเงิน
ในการสร้างบ็อตตัวอย่างและเพิ่มไวยากรณ์ ให้ทำตามขั้นตอนต่อไปนี้ สิ่งนี้จะสร้างบ็อต Amazon Lex ที่เรียกว่า Financialbot
และเพิ่มไวยากรณ์สำหรับบริการทางการเงินที่เราจัดเก็บใน บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (อเมซอน S3):
- ดาวน์โหลดบอท Amazon Lex คำนิยาม.
- บนคอนโซล Amazon Lex ให้เลือก สถานะ แล้วเลือก นำเข้า.
- เลือก
Financialbot.zip
ไฟล์ที่คุณดาวน์โหลดแล้วเลือก นำเข้า.
- คัดลอก ไฟล์ XML ไวยากรณ์ สำหรับบริการทางการเงินที่ระบุไว้ในหัวข้อก่อนหน้านี้
- บนคอนโซล Amazon S3 ให้อัปโหลดไฟล์ XML
- ไปที่ประเภทสล็อตบนคอนโซล Amazon Lex แล้วเลือก
accountID
ประเภทสล็อตเพื่อให้คุณสามารถเชื่อมโยง fin_accountNumber.grxml
ไฟล์
- ในประเภทสล็อต ให้ป้อนลิงก์ Amazon S3 สำหรับไฟล์ XML และคีย์อ็อบเจ็กต์
- Choose บันทึกประเภทสล็อต.
พื้นที่ AWS Identity และการจัดการการเข้าถึง บทบาท (IAM) ที่ใช้สร้างบอทต้องมีสิทธิ์อ่านไฟล์จากบัคเก็ต S3
- ทำซ้ำขั้นตอนที่ 6–8 สำหรับ
transferFunds
ประเภทสล็อตด้วย fin_transferAmount.grxml
.
- หลังจากคุณบันทึกไวยากรณ์แล้ว ให้เลือก สร้าง.
- ดาวน์โหลดบริการทางการเงิน ติดต่อไหล เพื่อรวมเข้ากับบอท Amazon Lex ผ่าน อเมซอน คอนเนค.
- บนคอนโซล Amazon Connect ให้เลือก ช่องทางการติดต่อ.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร อเมซอน เล็กซ์ เลือกบ็อต Amazon Lex ของคุณและทำให้พร้อมใช้งานในโฟลว์การติดต่อของ Amazon Connect
- เลือกโฟลว์ผู้ติดต่อเพื่อโหลดลงในแอปพลิเคชัน
- ทดสอบกระแส IVR โดยโทรไปที่หมายเลขโทรศัพท์
ประกันภัย
คุณสามารถใช้ Amazon Lex ในโดเมนประกันภัยเพื่อทำให้การบริการลูกค้าเป็นไปอย่างอัตโนมัติ เช่น การประมวลผลการเคลม การจัดการนโยบาย และการชำระเงินพรีเมียม ในระหว่างการโต้ตอบเหล่านี้ โฟลว์ IVR จำเป็นต้องรวบรวมรายละเอียดหลายอย่าง รวมถึง ID กรมธรรม์ ป้ายทะเบียน และจำนวนเงินพรีเมียม เพื่อตอบสนองคำขอของผู้ถือกรมธรรม์ เราใช้ไวยากรณ์ของอุตสาหกรรมประกันภัยในการสนทนาตัวอย่างต่อไปนี้:
ตัวแทน: ยินดีต้อนรับสู่บริษัทประกันภัย ACME ในการเริ่มต้น ฉันจะขอ ID กรมธรรม์ของคุณได้ไหม
ผู้โทร: ใช่ AB1234567
IVR: เข้าใจแล้ว ฉันจะช่วยคุณได้อย่างไร?
ผู้โทร: ฉันต้องการยื่นคำร้อง
IVR: แน่นอน การอ้างสิทธิ์นี้เกี่ยวข้องกับนโยบายรถยนต์หรือนโยบายของเจ้าของบ้านหรือไม่
ผู้โทร: อัตโนมัติ
IVR: ป้ายทะเบียนรถคืออะไร?
ผู้โทร: ABCD1234
IVR: ขอบคุณ และค่าสินไหมทดแทนเท่าไหร่?
ผู้โทร: $900
IVR: วันที่และเวลาที่เกิดอุบัติเหตุคืออะไร?
ผู้โทร : 1 มีนาคม 2 น.
IVR: ขอบคุณ ฉันมีสิ่งนั้นเริ่มต้นสำหรับคุณ ใครบางคนจากสำนักงานของเราจะติดต่อคุณในไม่ช้า รหัสการเรียกร้องของคุณคือ 12345
ไวยากรณ์ต่อไปนี้ได้รับการสนับสนุนสำหรับโดเมนประกันภัย: รหัสกรมธรรม์ ใบขับขี่ หมายเลขประกันสังคม ป้ายทะเบียน หมายเลขเคลม และวันที่ต่ออายุ
มาดูตัวอย่างกัน เรียกร้องวันที่เวลา ไวยากรณ์. คุณสามารถอ้างถึงไวยากรณ์อื่น ๆ ใน เอกสาร.
<?xml version="1.0" encoding="UTF-8" ?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/06/grammar http://www.w3.org/TR/speech-grammar/grammar.xsd" xml:lang="en-US" version="1.0" root="main" mode="voice" tag-format="semantics/1.0"> <!-- Test Cases Grammar will support the following inputs: Scenario 1: Input: The accident occured at july three at five am Output: july 3 5am Scenario 2: Input: Damage was reported at july three at five am Output: july 3 5am Scenario 3: Input: Schedule virtual inspection for july three at five am Output: july 3 5am --> <rule id="main" scope="public"> <tag>out=""</tag> <item repeat="1-10"> <item><ruleref uri="#months"/><tag>out = out + rules.months + " ";</tag></item> <one-of> <item><ruleref uri="#digits"/><tag>out += rules.digits + " ";</tag></item> <item><ruleref uri="#teens"/><tag>out += rules.teens+ " ";</tag></item> <item><ruleref uri="#above_twenty"/><tag>out += rules.above_twenty+ " ";</tag></item> </one-of> <item><ruleref uri="#at"/><tag>out += rules.at.new;</tag></item> <item repeat="0-1"><ruleref uri="#mins"/><tag>out +=":" + rules.mins.min;</tag></item> <item><ruleref uri="#ampm"/><tag>out += rules.ampm;</tag></item> </item> <item repeat="0-1"><ruleref uri="#thanks"/></item> </rule> <rule id="text"> <one-of> <item repeat="0-1">The accident occured at</item> <item repeat="0-1">Time of accident is</item> <item repeat="0-1">Damage was reported at</item> <item repeat="0-1">Schedule virtual inspection for</item> </one-of> </rule> <rule id="thanks"> <one-of> <item>Thanks</item> <item>I think</item> </one-of> </rule> <rule id="months"> <item repeat="0-1"><ruleref uri="#text"/></item> <one-of> <item>january<tag>out="january";</tag></item> <item>february<tag>out="february";</tag></item> <item>march<tag>out="march";</tag></item> <item>april<tag>out="april";</tag></item> <item>may<tag>out="may";</tag></item> <item>june<tag>out="june";</tag></item> <item>july<tag>out="july";</tag></item> <item>august<tag>out="august";</tag></item> <item>september<tag>out="september";</tag></item> <item>october<tag>out="october";</tag></item> <item>november<tag>out="november";</tag></item> <item>december<tag>out="december";</tag></item> <item>jan<tag>out="january";</tag></item> <item>feb<tag>out="february";</tag></item> <item>aug<tag>out="august";</tag></item> <item>sept<tag>out="september";</tag></item> <item>oct<tag>out="october";</tag></item> <item>nov<tag>out="november";</tag></item> <item>dec<tag>out="december";</tag></item> </one-of> </rule> <rule id="digits"> <one-of> <item>0<tag>out=0;</tag></item> <item>1<tag>out=1;</tag></item> <item>2<tag>out=2;</tag></item> <item>3<tag>out=3;</tag></item> <item>4<tag>out=4;</tag></item> <item>5<tag>out=5;</tag></item> <item>6<tag>out=6;</tag></item> <item>7<tag>out=7;</tag></item> <item>8<tag>out=8;</tag></item> <item>9<tag>out=9;</tag></item> <item>first<tag>out=1;</tag></item> <item>second<tag>out=2;</tag></item> <item>third<tag>out=3;</tag></item> <item>fourth<tag>out=4;</tag></item> <item>fifth<tag>out=5;</tag></item> <item>sixth<tag>out=6;</tag></item> <item>seventh<tag>out=7;</tag></item> <item>eighth<tag>out=8;</tag></item> <item>ninth<tag>out=9;</tag></item> <item>one<tag>out=1;</tag></item> <item>two<tag>out=2;</tag></item> <item>three<tag>out=3;</tag></item> <item>four<tag>out=4;</tag></item> <item>five<tag>out=5;</tag></item> <item>six<tag>out=6;</tag></item> <item>seven<tag>out=7;</tag></item> <item>eight<tag>out=8;</tag></item> <item>nine<tag>out=9;</tag></item> </one-of> </rule> <rule id="at"> <tag>out.new=""</tag> <item>at</item> <one-of> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.new+= rules.digits</tag></item> <item repeat="0-1"><ruleref uri="#teens"/><tag>out.new+= rules.teens</tag></item> </one-of> </rule> <rule id="mins"> <tag>out.min=""</tag> <item repeat="0-1">:</item> <item repeat="0-1">and</item> <one-of> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.min+= rules.digits</tag></item> <item repeat="0-1"><ruleref uri="#teens"/><tag>out.min+= rules.teens</tag></item> <item repeat="0-1"><ruleref uri="#above_twenty"/><tag>out.min+= rules.above_twenty</tag></item> </one-of> </rule> <rule id="ampm"> <tag>out=""</tag> <one-of> <item>AM<tag>out="am";</tag></item> <item>PM<tag>out="pm";</tag></item> <item>am<tag>out="am";</tag></item> <item>pm<tag>out="pm";</tag></item> </one-of> </rule> <rule id="teens"> <one-of> <item>ten<tag>out=10;</tag></item> <item>tenth<tag>out=10;</tag></item> <item>eleven<tag>out=11;</tag></item> <item>twelve<tag>out=12;</tag></item> <item>thirteen<tag>out=13;</tag></item> <item>fourteen<tag>out=14;</tag></item> <item>fifteen<tag>out=15;</tag></item> <item>sixteen<tag>out=16;</tag></item> <item>seventeen<tag>out=17;</tag></item> <item>eighteen<tag>out=18;</tag></item> <item>nineteen<tag>out=19;</tag></item> <item>tenth<tag>out=10;</tag></item> <item>eleventh<tag>out=11;</tag></item> <item>twelveth<tag>out=12;</tag></item> <item>thirteenth<tag>out=13;</tag></item> <item>fourteenth<tag>out=14;</tag></item> <item>fifteenth<tag>out=15;</tag></item> <item>sixteenth<tag>out=16;</tag></item> <item>seventeenth<tag>out=17;</tag></item> <item>eighteenth<tag>out=18;</tag></item> <item>nineteenth<tag>out=19;</tag></item> </one-of> </rule> <rule id="above_twenty"> <one-of> <item>twenty<tag>out=20;</tag></item> <item>thirty<tag>out=30;</tag></item> </one-of> <item repeat="0-1"><ruleref uri="#digits"/><tag>out += rules.digits;</tag></item> </rule>
</grammar>
การใช้ไวยากรณ์อุตสาหกรรมเพื่อการประกันภัย
ในการสร้างบ็อตตัวอย่างและเพิ่มไวยากรณ์ ให้ทำตามขั้นตอนต่อไปนี้ สิ่งนี้จะสร้างบ็อต Amazon Lex ที่เรียกว่า InsuranceBot
และเพิ่มไวยากรณ์สำหรับโดเมนประกัน:
- ดาวน์โหลดบอท Amazon Lex คำนิยาม.
- บนคอนโซล Amazon Lex ให้เลือก สถานะแล้วเลือก นำเข้า.
- เลือก
InsuranceBot.zip file
ที่คุณดาวน์โหลดแล้วเลือก นำเข้า.
- คัดลอก ไฟล์ XML ไวยากรณ์ สำหรับการประกันภัยที่ระบุไว้ในส่วนก่อนหน้า
- บนคอนโซล Amazon S3 ให้อัปโหลดไฟล์ XML
- ไปที่ประเภทสล็อตบนคอนโซล Amazon Lex แล้วเลือก
policyID
ประเภทสล็อตเพื่อให้คุณสามารถเชื่อมโยง ins_policyNumber.grxml
ไฟล์ไวยากรณ์
- ในประเภทสล็อต ให้ป้อนลิงก์ Amazon S3 สำหรับไฟล์ XML และคีย์อ็อบเจ็กต์
- Choose บันทึกประเภทสล็อต.
บทบาท IAM ที่ใช้สร้างบ็อตต้องได้รับอนุญาตให้อ่านไฟล์จากบัคเก็ต S3
- ทำซ้ำขั้นตอนที่ 6–8 สำหรับ
licensePlate
ประเภทสล็อต (ins_NJ_licensePlateNumber.grxml
) and dateTime
ประเภทสล็อต (ins_claimDateTime.grxml
).
- หลังจากคุณบันทึกไวยากรณ์แล้ว ให้เลือก สร้าง.
- ดาวน์โหลดประกันภัย ติดต่อไหล เพื่อรวมเข้ากับบ็อต Amazon Lex
- บนคอนโซล Amazon Connect ให้เลือก ช่องทางการติดต่อ.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร อเมซอน เล็กซ์ และเลือกบ็อต Lex ของคุณและทำให้พร้อมใช้งานในโฟลว์การติดต่อของ Amazon Connect
- เลือกโฟลว์ผู้ติดต่อเพื่อโหลดลงในแอปพลิเคชัน
- ทดสอบกระแส IVR โดยโทรไปที่หมายเลขโทรศัพท์
เทเลคอม
คุณสามารถใช้ Amazon Lex ในโดเมนโทรคมนาคมเพื่อทำให้การบริการลูกค้าเป็นไปอย่างอัตโนมัติ เช่น การเปิดใช้งานบริการ การชำระค่าใช้จ่าย และการจัดการการติดตั้งอุปกรณ์ ในระหว่างการโต้ตอบเหล่านี้ โฟลว์ IVR จำเป็นต้องรวบรวมรายละเอียดหลายอย่าง รวมถึงหมายเลขซิม รหัสไปรษณีย์ และวันที่เริ่มต้นบริการ เพื่อตอบสนองคำขอของผู้ใช้ เราใช้ไวยากรณ์ของอุตสาหกรรมบริการทางการเงินในการสนทนาตัวอย่างต่อไปนี้:
ตัวแทน: ยินดีต้อนรับสู่ ACME เซลลูลาร์ ในการเริ่มต้น ขอหมายเลขโทรศัพท์ที่เชื่อมโยงกับบัญชีของคุณได้ไหม
ผู้ใช้: ใช่ 123 456 7890
IVR: ขอบคุณ ฉันจะช่วยคุณได้อย่างไร?
ผู้ใช้: ฉันกำลังโทรเพื่อเปิดใช้งานบริการของฉัน
IVR: แน่นอน หมายเลขซิมบนอุปกรณ์คืออะไร?
ระบบ IVR: 12345ABC
IVR: โอเค และขอรหัสไปรษณีย์ได้ไหม
ผู้ใช้: 12345
IVR: เยี่ยมมาก ขอบคุณ เปิดใช้งานอุปกรณ์แล้ว
ไวยากรณ์ต่อไปนี้ได้รับการสนับสนุนสำหรับโทรคมนาคม: หมายเลขซิม หมายเลขซีเรียลของอุปกรณ์ รหัสไปรษณีย์ หมายเลขโทรศัพท์ วันที่เริ่มต้นบริการ และลำดับ
มาดูตัวอย่างกัน ซิมเบอร์ ไวยากรณ์. คุณสามารถอ้างถึงไวยากรณ์อื่น ๆ ใน เอกสาร.
<?xml version="1.0" encoding="UTF-8" ?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/06/grammar http://www.w3.org/TR/speech-grammar/grammar.xsd" xml:lang="en-US" version="1.0" root="main" mode="voice" tag-format="semantics/1.0"> <!-- Test Cases Grammar will support the following inputs: Scenario 1: Input: My SIM number is A B C 1 2 3 4 Output: ABC1234 Scenario 2: Input: My SIM number is 1 2 3 4 A B C Output: 1234ABC Scenario 3: Input: My SIM number is 1 2 3 4 A B C 1 Output: 123ABC1 --> <rule id="main" scope="public"> <tag>out=""</tag> <item><ruleref uri="#alphanumeric"/><tag>out += rules.alphanumeric.alphanum;</tag></item> <item repeat="0-1"><ruleref uri="#alphabets"/><tag>out += rules.alphabets.letters;</tag></item> <item repeat="0-1"><ruleref uri="#digits"/><tag>out += rules.digits.numbers</tag></item> </rule> <rule id="text"> <item repeat="0-1"><ruleref uri="#hesitation"/></item> <one-of> <item repeat="0-1">My SIM number is</item> <item repeat="0-1">SIM number is</item> </one-of> </rule> <rule id="hesitation"> <one-of> <item>Hmm</item> <item>Mmm</item> <item>My</item> </one-of> </rule> <rule id="alphanumeric" scope="public"> <tag>out.alphanum=""</tag> <item><ruleref uri="#alphabets"/><tag>out.alphanum += rules.alphabets.letters;</tag></item> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.alphanum += rules.digits.numbers</tag></item> </rule> <rule id="alphabets"> <item repeat="0-1"><ruleref uri="#text"/></item> <tag>out.letters=""</tag> <tag>out.firstOccurence=""</tag> <item repeat="0-1"><ruleref uri="#digits"/><tag>out.firstOccurence += rules.digits.numbers; out.letters += out.firstOccurence;</tag></item> <item repeat="1-"> <one-of> <item>A<tag>out.letters+='A';</tag></item> <item>B<tag>out.letters+='B';</tag></item> <item>C<tag>out.letters+='C';</tag></item> <item>D<tag>out.letters+='D';</tag></item> <item>E<tag>out.letters+='E';</tag></item> <item>F<tag>out.letters+='F';</tag></item> <item>G<tag>out.letters+='G';</tag></item> <item>H<tag>out.letters+='H';</tag></item> <item>I<tag>out.letters+='I';</tag></item> <item>J<tag>out.letters+='J';</tag></item> <item>K<tag>out.letters+='K';</tag></item> <item>L<tag>out.letters+='L';</tag></item> <item>M<tag>out.letters+='M';</tag></item> <item>N<tag>out.letters+='N';</tag></item> <item>O<tag>out.letters+='O';</tag></item> <item>P<tag>out.letters+='P';</tag></item> <item>Q<tag>out.letters+='Q';</tag></item> <item>R<tag>out.letters+='R';</tag></item> <item>S<tag>out.letters+='S';</tag></item> <item>T<tag>out.letters+='T';</tag></item> <item>U<tag>out.letters+='U';</tag></item> <item>V<tag>out.letters+='V';</tag></item> <item>W<tag>out.letters+='W';</tag></item> <item>X<tag>out.letters+='X';</tag></item> <item>Y<tag>out.letters+='Y';</tag></item> <item>Z<tag>out.letters+='Z';</tag></item> </one-of> </item> </rule> <rule id="digits"> <item repeat="0-1"><ruleref uri="#text"/></item> <tag>out.numbers=""</tag> <item repeat="1-10"> <one-of> <item>0<tag>out.numbers+=0;</tag></item> <item>1<tag>out.numbers+=1;</tag></item> <item>2<tag>out.numbers+=2;</tag></item> <item>3<tag>out.numbers+=3;</tag></item> <item>4<tag>out.numbers+=4;</tag></item> <item>5<tag>out.numbers+=5;</tag></item> <item>6<tag>out.numbers+=6;</tag></item> <item>7<tag>out.numbers+=7;</tag></item> <item>8<tag>out.numbers+=8;</tag></item> <item>9<tag>out.numbers+=9;</tag></item> </one-of> </item> </rule>
</grammar>
การใช้ไวยากรณ์อุตสาหกรรมสำหรับโทรคมนาคม
ในการสร้างบ็อตตัวอย่างและเพิ่มไวยากรณ์ ให้ทำตามขั้นตอนต่อไปนี้ สิ่งนี้จะสร้างบ็อต Amazon Lex ที่เรียกว่า TelecomBot
และเพิ่มไวยากรณ์สำหรับโทรคมนาคม:
- ดาวน์โหลดบอท Amazon Lex คำนิยาม.
- บนคอนโซล Amazon Lex ให้เลือก สถานะแล้วเลือก นำเข้า.
- เลือก
TelecomBot.zip
ไฟล์ที่คุณดาวน์โหลดแล้วเลือก นำเข้า.
- คัดลอก ไฟล์ XML ไวยากรณ์ สำหรับโดเมนโทรคมนาคมที่แสดงไว้ในส่วนก่อนหน้า
- บนคอนโซล Amazon S3 ให้อัปโหลดไฟล์ XML
- ไปที่ประเภทสล็อตบนคอนโซล Amazon Lex แล้วเลือก
phoneNumber
เพื่อให้คุณสามารถเชื่อมโยง tel_phoneNumber.grxml
ไวยากรณ์.
- ในประเภทสล็อต ให้ป้อนลิงก์ Amazon S3 สำหรับไฟล์ XML และคีย์อ็อบเจ็กต์
- Choose บันทึกประเภทสล็อต.
บทบาท IAM ที่ใช้สร้างบ็อตต้องได้รับอนุญาตให้อ่านไฟล์จากบัคเก็ต S3
- ทำซ้ำขั้นตอนที่ 6–8 สำหรับประเภทสล็อต
SIM number
(tel_simNumber.grxml
) and zipcode
(tel_usZipcode.grxml
).
- หลังจากคุณบันทึกไวยากรณ์แล้ว ให้เลือก สร้าง.
- ดาวน์โหลดประกันภัย ติดต่อไหล เพื่อรวมเข้ากับบ็อต Amazon Lex
- บนคอนโซล Amazon Connect ให้เลือก ช่องทางการติดต่อ.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร อเมซอน เล็กซ์ และเลือกบ็อต Amazon Lex ของคุณและทำให้พร้อมใช้งานในโฟลว์การติดต่อของ Amazon Connect
- เลือกโฟลว์ผู้ติดต่อเพื่อโหลดลงในแอปพลิเคชัน
- ทดสอบกระแส IVR โดยโทรไปที่หมายเลขโทรศัพท์
ทดสอบวิธีแก้ปัญหา
คุณสามารถโทรเข้าหมายเลขโทรศัพท์ Amazon Connect และโต้ตอบกับบอทได้ คุณยังสามารถทดสอบโซลูชันได้โดยตรงบนคอนโซล Amazon Lex V2 โดยใช้เสียงหรือข้อความ
สรุป
ไวยากรณ์ของอุตสาหกรรมมีชุดไฟล์ XML ที่สร้างไว้ล่วงหน้าซึ่งคุณสามารถใช้เพื่อสร้างโฟลว์ IVR ได้อย่างรวดเร็ว คุณสามารถเลือกไวยากรณ์เพื่อเปิดใช้งานการสนทนาการบริการลูกค้าสำหรับกรณีการใช้งานในบริการทางการเงิน การประกันภัย และโทรคมนาคม ไวยากรณ์มีให้บริการเป็น ประเภทสล็อตไวยากรณ์ และใช้ในการกำหนดค่าบอท Amazon Lex ได้ คุณสามารถดาวน์โหลดไวยากรณ์และเปิดใช้งานสิ่งเหล่านี้ได้ผ่านคอนโซล Amazon Lex V2 หรือ SDK ความสามารถนี้มีให้บริการในทุกภูมิภาคของ AWS ที่ Amazon Lex ดำเนินการในภาษาอังกฤษ (ออสเตรเลีย), อังกฤษ (สหราชอาณาจักร) และอังกฤษ (สหรัฐอเมริกา)
ดูข้อมูลเพิ่มเติมได้ที่ การใช้ประเภทสล็อตไวยากรณ์ที่กำหนดเอง.
เกี่ยวกับผู้เขียน
จอห์น ฮีตเตอร์ มีประสบการณ์มากกว่า 15 ปีในด้าน AI และระบบอัตโนมัติ ในฐานะ SVP of the Contact Center Practice ที่ NeuraFlash เขาเป็นผู้นำในการนำเทคนิค AI และการทำงานอัตโนมัติล่าสุดมาใช้สำหรับกลุ่มผลิตภัณฑ์และโซลูชันของลูกค้า
แสนดีพ ศรีนิวาสาร เป็นผู้จัดการผลิตภัณฑ์ในทีม Amazon Lex ในฐานะที่เป็นผู้สังเกตพฤติกรรมมนุษย์ที่กระตือรือร้น เขาหลงใหลเกี่ยวกับประสบการณ์ของลูกค้า เขาใช้เวลาหลายชั่วโมงในการตื่นอยู่ท่ามกลางผู้คน เทคโนโลยี และอนาคต