ประเภท

ประเภทช่วยให้คุณกำหนดค่าเครื่องมือ 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

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีลบล้างประเภทบิลด์ได้จากคู่มือเว็บฮุค