Simplesimilarity เป็นเฟรมเวิร์กที่ใช้งานง่ายสำหรับการค้นหาข้อความความหมาย
ฉันไม่แนะนำให้ใช้ห้องสมุดนี้อีกต่อไปใน iOS 18 ตอนนี้คุณสมบัติของมันมีให้บริการเป็นบริการระบบใน Core Spotlight โปรดตรวจสอบวิดีโอเซสชัน WWDC 2024 ของ Apple "สนับสนุนการค้นหาความหมายด้วย Core Spotlight"
ก่อนอื่นคุณต้องสร้างคลังข้อความ เมื่อคลังข้อมูลเต็มคุณสามารถเรียกใช้การสืบค้นกับมันได้ วิธีการเหล่านี้เป็นส่วนหนึ่งของคลาส MatchingEngine
คลังข้อความประกอบด้วยโครงสร้าง textualdata จำนวนมาก โครงสร้าง TextualData เป็นข้อความบวกกับข้อมูลเมตาบางส่วน คุณสร้างอินสแตนซ์ TextualData และส่งผ่านไปยังเอ็นจิ้นที่ตรงกัน:
let textualData = allFeedItems.map { (feedItem) -> TextualData in
return TextualData(inputString: feedItem.title, origin: nil, originObject: feedItem)
}
matchingEngine.fillMatchingEngine(with: textualData, onlyRemoveFrequentStopwords: true, completion: completion)
ตามที่ระบุไว้ก่อนที่การสร้างคลังข้อความจะเกิดขึ้นบนเธรดพื้นหลังดังนั้นคุณต้องส่งผ่านในบล็อกที่เสร็จสมบูรณ์เพื่อให้ไม่ได้เกิดขึ้นเมื่อการสร้างคลังข้อมูลเสร็จสิ้น
หลังจากสร้างคลังข้อมูลแล้วคุณสามารถสืบค้นได้ Simplesimilarity ไม่จำเป็นต้องปรับให้เหมาะสมสำหรับการสืบค้นสั้น ๆ หรือรายการสั้น ๆ ในคลังข้อความ แบบสอบถามควรมีอย่างน้อย 2 คำ รายการในคลังข้อความควรเป็นประโยค
สำหรับการค้นหาข้อความคุณมีหลายตัวเลือก:
try? matchingEngine.result(betterThan: 0.005, for: query, resultsFound: resultsFound)
ResultsFound เป็นบล็อกความสำเร็จอีกครั้งที่ผ่านผลลัพธ์ที่พบ
ดังนั้นอย่างที่คุณเห็น API นั้นง่ายและใช้งานง่าย
การสร้างคลังข้อความที่มี 15,000 รายการใช้เวลาประมาณ 20 วินาทีใน iPhone 6s
การมีส่วนร่วมของคุณยินดีต้อนรับมากที่สุด