Simplesimilarity adalah kerangka kerja yang mudah digunakan untuk pencarian teks semantik.
Saya sarankan untuk tidak menggunakan perpustakaan ini lagi di iOS 18. Fitur -fiturnya sekarang tersedia sebagai layanan sistem dalam sorotan inti. Silakan periksa video WWDC 2024 Sesi Apple "Dukungan Pencarian Semantik dengan Core Spotlight".
Pertama, Anda harus membuat corpus teks. Saat corpus diisi, Anda dapat menjalankan kueri melawannya. Metode ini adalah bagian dari kelas pencocokan.
Corpus teks terdiri dari jumlah (besar) TextualData Structs. Struct TextualData adalah teks ditambah beberapa metadata. Anda membuat instance TextualData dan meneruskannya ke mesin yang cocok:
let textualData = allFeedItems.map { (feedItem) -> TextualData in
return TextualData(inputString: feedItem.title, origin: nil, originObject: feedItem)
}
matchingEngine.fillMatchingEngine(with: textualData, onlyRemoveFrequentStopwords: true, completion: completion)
Seperti disebutkan sebelum pembuatan corpus teks terjadi pada utas latar belakang, jadi Anda harus lewat di blok penyelesaian untuk diawali ketika penciptaan corpus selesai.
Setelah corpus dibuat, Anda dapat menanyakannya. Simplesimilarity tidak harus dioptimalkan untuk pertanyaan pendek atau entri pendek di corpus teks. Kueri harus berisi setidaknya 2 kata. Entri dalam corpus teks harus kalimat.
Untuk pencarian tekstual, Anda memiliki beberapa opsi:
try? matchingEngine.result(betterThan: 0.005, for: query, resultsFound: resultsFound)
Hasil Hasil sekali lagi merupakan blok penyelesaian yang lewat dalam hasil yang ditemukan.
Jadi karena Anda dapat melihat API sangat sederhana dan mudah digunakan.
Membuat corpus teks dengan 15000 entri membutuhkan waktu sekitar 20 detik pada iPhone 6s.
Kontribusi Anda sangat disambut.