การเติมข้อความอัตโนมัติของ Cloud Search จะช่วยผู้ใช้ด้วยการแนะนำคำเมื่อผู้ใช้กำลังพิมพ์คำค้นหา เช่น คำแนะนำอาจเป็นคำจากชื่อเอกสาร โอเปอเรเตอร์การค้นหา ค่าโอเปอเรเตอร์การค้นหา หรือชื่อและอีเมลจากองค์กร Google Workspace
การเติมข้อความอัตโนมัติจะดึงวลีจากชื่อเอกสารที่จัดทําดัชนีไว้ และใช้รูปแบบ n-gram เพื่อระบุคำแนะนำให้แสดงโดยใช้ Recommendation API วลีจากชื่อเอกสารจะแสดงในการเติมข้อความอัตโนมัติโดยค่าเริ่มต้น นอกจากนี้ คุณยังทำเครื่องหมายพร็อพเพอร์ตี้สคีมาและข้อความ enum เป็น is_suggestable
เพื่อเติมชื่อพร็อพเพอร์ตี้และค่าที่เกี่ยวข้องโดยอัตโนมัติได้ด้วย
Suggest API จะตรวจสอบคำค้นหาเพื่อดูคำแนะนำเกี่ยวกับภาษาของคำค้นหา เช่น อังกฤษหรือสเปน และจัดลำดับความสำคัญของผลการค้นหาตามนั้น นอกจากนี้ ช่อง languageCode
ของคำขอยังใช้เพื่อปรับปรุงคำแนะนำสำหรับแต่ละภาษาด้วย
สถานการณ์ตัวอย่าง
ตัวอย่างเช่น สมมติว่าคุณมีแหล่งข้อมูลต่อไปนี้ที่มีข้อมูลเกี่ยวกับภาพยนตร์
- แหล่งข้อมูลมีเอกสาร 2 ฉบับ
- เอกสารแต่ละรายการจะมีชื่อ (
ItemMetadata.title
) และพร็อพเพอร์ตี้ 2 รายการคือgenre
และcharacters
- เอกสารฉบับแรกมีชื่อว่า "Avengers Infinity War" โดยมี
genre=science fiction
และcharacters=Iron Man, Hulk
- เอกสารฉบับที่ 2 มีชื่อว่า "แฮร์รี่ พอตเตอร์" ที่มี
genre=Adventure, Fantasy and
characters=Hermione, Harry Potter"
รูปที่ 1 แสดงให้เห็นว่าคำแนะนำที่เติมข้อความอัตโนมัติดึงมาจากชื่อเอกสาร พร็อพเพอร์ตี้ และค่าพร็อพเพอร์ตี้ได้อย่างไร
จากเอกสารฉบับที่ 1 เราแยกตัวอักษร N แกรม (ไม่เกิน 3 ตัวอักษร) "อเวนเจอร์ส" "อินฟินิตี้" "สงคราม" "อเวนเจอร์สอินฟินิตี้" "อินฟินิตี้ วอร์ส" "อเวนเจอร์ส อินฟินิตี้ สงคราม" ในลักษณะเดียวกันจากเอกสารฉบับที่ 2 เราจะสร้าง "แฮร์รี่" "พอตเตอร์" "แฮร์รี่ พอตเตอร์"
เมื่อค้นหาแหล่งข้อมูลนี้ สมมติว่าผู้ใช้เริ่มด้วยการพิมพ์ "h" คำแนะนำที่แสดงให้ผู้ใช้เห็นจะเป็น
- CANNOT TRANSLATE
- เฮอร์ไมโอน
- ฮัลค์
- แฮร์รี่ พอตเตอร์
สมมติว่าผู้ใช้เลือกคำแนะนำที่เติมข้อความอัตโนมัติ "Hermione" และการกดแป้นพิมพ์ถัดไปจากผู้ใช้คืออักขระ "a" คำแนะนำที่เติมข้อความอัตโนมัติ ที่แสดงต่อผู้ใช้จะเป็นดังนี้
- เฮอร์มิโอน แอดเวนเจอร์
- เฮอร์ไมโอนีแอ็คชัน
- เฮอร์ไมโอน อเวนเจอร์ส
การเติมข้อความอัตโนมัติจะพยายามเติมคำสุดท้าย (หรือ ngram) ที่พิมพ์ให้สมบูรณ์ ในตัวอย่างก่อนหน้านี้ จะขยาย "a" เป็น "adventure", "action" และ "avengers" เนื่องจากไม่มีข้อความที่ขึ้นต้นด้วย "hermione a" ด้วยกัน คำแนะนำนี้เรียกว่าคำแนะนำส่วนหาง ซึ่งจะเติมอัตโนมัติเฉพาะคำ/n-gramสุดท้ายที่พิมพ์
การเติมข้อความอัตโนมัติของ Cloud Search จะแสดงคำแนะนำสูงสุด 5 รายการจากเนื้อหาเอกสารและคำแนะนำบุคคล 2 รายการ
วลีจากชื่อเอกสารจะแสดงในการเติมข้อความอัตโนมัติโดยค่าเริ่มต้น ต้องทำเครื่องหมายพร็อพเพอร์ตี้สคีมาเป็น is_suggestable
อย่างชัดแจ้งเพื่อให้ API การแนะนำใส่ค่าพร็อพเพอร์ตี้และค่าต่างๆ ที่เกี่ยวข้องโดยอัตโนมัติ
ผสานรวมกับ API เติมข้อความอัตโนมัติ
หากคุณใช้แอปพลิเคชันการค้นหาเริ่มต้นหรือวิดเจ็ตการค้นหาแบบฝังได้ ระบบจะรองรับฟีเจอร์เติมข้อความอัตโนมัติของ Cloud Search โดยไม่ต้องดำเนินการใดๆ เพิ่มเติม อย่าลืมว่าวลีจากชื่อเอกสาร
จะแสดงในการเติมข้อความอัตโนมัติโดยค่าเริ่มต้น คุณต้องทำเครื่องหมายพร็อพเพอร์ตี้สคีมาเป็น is_suggestable
อย่างชัดแจ้งเพื่อให้ API แนะนำเติมชื่อพร็อพเพอร์ตี้และค่าที่เกี่ยวข้องโดยอัตโนมัติ
หากคุณสร้างแอปพลิเคชันการค้นหาที่กำหนดเอง คุณจะใช้งานการเติมข้อความอัตโนมัติได้โดยการค้นหาปลายทาง API ของ /query/suggest
ข้อจำกัด
การเติมข้อความอัตโนมัติมีข้อจำกัดดังนี้
ระบบจะไม่รองรับการจำกัดวลีเติมข้อความอัตโนมัติของ Cloud Search โดยใช้
FilterOptions
ที่กำหนดไว้ในสคีมา ยกเว้นตัวกรองในตัว ได้แก่objectype
,mimetype
และตัวกรองประเภทระบบไม่รองรับคำแนะนำตามประวัติข้อความค้นหา (การค้นหาที่ผู้ใช้ทำก่อนหน้านี้ในแอปพลิเคชันการค้นหา)
ทำเครื่องหมายที่พักเป็น
is_suggestable
ได้สูงสุด 20 รายการ คุณเพิ่มขีดจำกัดนี้ได้โดยติดต่อทีมสนับสนุนของ Cloud Searchการเติมข้อความอัตโนมัติของโอเปอเรเตอร์การค้นหาใช้ไม่ได้กับพร็อพเพอร์ตี้ที่มี
exact_match_with_operator
การเติมข้อความอัตโนมัติของ Cloud Search จะแสดงคำแนะนำสูงสุด 5 รายการจากเนื้อหาเอกสารและคำแนะนำบุคคล 2 รายการ
การเติมข้อความอัตโนมัติของ Cloud Search จะแนะนำวลีจากเอกสารที่ผู้ใช้มีสิทธิ์เข้าถึงเท่านั้น