ประเภทช่วยให้คุณกำหนดค่าเครื่องมือ Assistant NLU (การทำความเข้าใจภาษาธรรมชาติ) เพื่อดึงข้อมูลที่มีโครงสร้างจากข้อมูลที่ผู้ใช้ป้อนได้ คุณสามารถใช้ประเภทในสถานการณ์ต่อไปนี้
ใน intent คุณจะใส่คำอธิบายประกอบให้กับวลีการฝึกด้วยประเภทเพื่อสร้างสล็อตได้ เมื่อผู้ใช้พูดบางอย่างที่ตรงกับสล็อต เครื่องมือ NLU จะดึงข้อมูลออกมาเป็นพารามิเตอร์แบบพิมพ์ เพื่อให้คุณประมวลผลในโหมดได้
ภายในระยะเติมช่องของฉาก คุณสามารถระบุช่องหลายๆ ช่องที่ต้องการให้ผู้ใช้ระบุก่อนที่จะเปลี่ยนหรือออกจากฉากได้
ภายในพื้นที่งานconditionsของฉาก คุณจะกำหนดตรรกะได้ว่าพารามิเตอร์มีค่าเฉพาะที่กำหนดไว้ในประเภทหรือไม่
ประเภทที่กำหนดเอง
ประเภทที่กำหนดเองช่วยให้คุณสร้างข้อกำหนดประเภทของคุณเองเพื่อแจ้งให้ NLU กำหนดชุดค่าให้กับคีย์เดียวได้ คุณสามารถระบุประเภทได้ หลายวิธีดังนี้
- คำและคำพ้องความหมายช่วยให้คุณจับคู่ค่าหลายค่ากับคีย์เดียวได้ ซึ่งเรียกว่า "รายการ" ประเภทของคุณอาจมีรายการเดียวหรือหลายรายการ หากเลือกตัวเลือกนี้ คุณจะเปิดใช้การตั้งค่า NLU ต่อไปนี้ได้
- เปิดใช้การจับคู่แบบคลุมเครือ - ฟีเจอร์นี้ช่วยให้รายการที่มีคำมากกว่า 1 คำสามารถจับคู่ได้ แม้ว่าการพูดดังกล่าวจะอยู่ในลำดับที่ต่างกันก็ตาม
- ยอมรับค่าที่ไม่รู้จัก - เมื่อคุณระบุค่าที่เป็นไปได้ทั้งหมดไม่ได้ ตัวประมวลผลภาษาจะยอมรับคำหรือวลีที่ไม่รู้จักตามข้อมูลการฝึกอินพุตและ Intent โดยรอบ เช่น สินค้าที่อาจเพิ่มลงในรายการของที่ต้องซื้อ
- นิพจน์ทั่วไปช่วยให้ประเภทสามารถจับคู่ค่าโดยใช้รูปแบบนิพจน์ทั่วไปโดยอิงตามมาตรฐาน RE2 ของ Google
- ข้อความรูปแบบอิสระช่วยให้ประเภทตรงกับข้อความที่ผู้ใช้พูด การใส่คำอธิบายประกอบ Intent ประเภทนี้ช่วยให้คุณใช้อินพุตทั้งหมดเป็นพารามิเตอร์ที่ส่งไปยัง NLU ของคุณเองได้
ประเภทระบบ
ประเภทระบบช่วยให้คุณใส่คำอธิบายประกอบและแยกข้อมูลที่เป็นที่รู้จักดีจากข้อมูลที่ผู้ใช้ป้อนเข้ามาโดยใช้ข้อมูลการฝึกและค่าต่างๆ ที่ได้จากระบบ ระบบรองรับระบบต่อไปนี้
Type | คำอธิบาย |
---|---|
actions.type.DateTime |
ประกอบด้วยวันที่ เวลา และเขตเวลาตามการตั้งค่าอุปกรณ์ของผู้ใช้ ใช้ได้สำหรับการกรอกช่องและการฝึกคำอธิบายประกอบวลี |
actions.type.Date |
วันที่เท่านั้น ใช้ได้สำหรับการเติมช่องเท่านั้น |
actions.type.Time |
มีเวลาเท่านั้น ใช้ได้สำหรับการเติมช่องเท่านั้น |
actions.type.Number |
ประเภท Number จะจับคู่เลขลำดับและเลข Cardinal |
การใช้งาน DateTime
, Date
และ Time
ประเภทข้างต้นจะทำงานแตกต่างกันไปตามตำแหน่งที่คุณใช้ประเภทและอินพุตของผู้ใช้ที่ตรงกับประเภท
การใช้งานด้วย Intent
การใส่คำอธิบายประกอบวลีการฝึกใน Intent รองรับเฉพาะประเภท DateTime
เท่านั้น ข้อมูลจากผู้ใช้ไม่จำเป็นต้องตรงกับค่า DateTime
ทั้งหมด เช่น หากผู้ใช้ระบุเฉพาะปี พารามิเตอร์เซสชันอาจมีลักษณะดังนี้
"date_time": {
"year": 2019
}
ใช้กับการเติมช่อง
การเติมช่องรองรับ DateTime
, Date
และ Time
- หากประเภทช่องโฆษณาคือ
DateTime
Assistant จะแจ้งผู้ใช้จนกว่าจะระบุค่าเต็ม - หากประเภทช่องคือ
Date
Assistant จะแจ้งผู้ใช้จนกว่าจะระบุค่าวันที่ เมื่อรวบรวมแล้ว พารามิเตอร์ที่คุณได้รับจะเป็นDateTime
แบบเต็มโดยมีการตั้งค่าเวลาเป็น 00:00 - หากประเภทช่องคือ
Time
Assistant จะแจ้งผู้ใช้จนกว่าจะระบุค่าเวลา เมื่อรวบรวมแล้ว พารามิเตอร์ที่คุณได้รับจะเป็นออบเจ็กต์DateTime
แบบเต็มซึ่งมีวันที่ตั้งเป็นวันที่ปัจจุบัน
ตัวอย่างเช่น สมมติว่าผู้ใช้ในลอสแอนเจลิสพูดว่า "Ok Google สร้างการช่วยเตือนสำหรับวันที่ 15 มกราคม 2024 เวลา 20.00 น." เมื่อมีการแยก DateTime
เป็นส่วนหนึ่งของกระบวนการเติมช่องโฆษณา พารามิเตอร์ทั้งหมดอาจมีลักษณะดังนี้
"date_time": {
"day": 15,
"hours": 20,
"minutes": 0,
"month": 1,
"nanos": 0,
"seconds": 0,
"time_zone": {
"id": "America/Los_Angeles"
},
"year": 2024
}
การใช้โดยมีเงื่อนไข
เงื่อนไขอนุญาตให้ใช้เฉพาะตัวเลขและสตริงเท่านั้น ดังนั้นการใช้พารามิเตอร์ DateTime
ระดับบนสุดจะให้ผลลัพธ์เป็น False สำหรับเงื่อนไข ตัวอย่างเช่น
$session.params.my_dateTime.day > 5
เป็นเงื่อนไขที่ถูกต้อง เนื่องจากค่าday
เป็นตัวเลขและระบบรองรับ$session.params.my_dateTime > "01-01-2010"
เป็นเงื่อนไขที่ไม่ถูกต้อง เนื่องจากออบเจ็กต์ "DateTime" ระดับบนสุดไม่ใช่ตัวเลขหรือสตริง
การลบล้างประเภทรันไทม์
การลบล้างประเภทรันไทม์ให้คุณสร้างหรือแก้ไขประเภทใน Fulfillment แบบไดนามิกได้ ฟีเจอร์นี้ให้คุณเพิ่มหรือแทนที่ข้อกำหนดประเภทหนึ่งๆ ขณะรันไทม์ได้ เช่น ตรวจสอบแหล่งข้อมูลแบ็กเอนด์เพื่อโหลดรายการในเมนูรายวันเป็นประเภท Fulfillment
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีลบล้างประเภทบิลด์ได้จากคู่มือเว็บฮุค