
Trong thế giới ngày nay của dữ liệu không cấu trúc và đầu vào người dùng không đồng nhất, các kết quả chính xác trong các hoạt động tìm kiếm thường không đạt yêu cầu. Dù bạn đang làm việc trên một hệ thống quản lý tài liệu, công cụ phân tích nội dung, hay động cơ tìm kiếm doanh nghiệp, việc triển khai tìm kiếm mờ cho phép bạn truy xuất các kết quả liên quan ngay cả khi truy vấn tìm kiếm có lỗi chính tả, biến thể chính tả, hoặc sự khác biệt nhỏ. Trong bài viết blog này, chúng ta sẽ khám phá cách triển khai tìm kiếm mờ trong C# sử dụng Conholdate.Total cho .NET SDK. Bạn sẽ học cách tìm kiếm trên nhiều tệp được lưu trữ trong các thư mục khác nhau sử dụng mức độ tương đồng điều chỉnh để đạt được độ chính xác và linh hoạt cao hơn.
Tại sao sử dụng tìm kiếm mờ?
Tìm kiếm gần đúng là một tính năng thiết yếu cho bất kỳ ứng dụng hiện đại nào xử lý nội dung do người dùng tạo ra hoặc làm việc với các nguồn văn bản đa dạng. Khác với tìm kiếm chính xác, chỉ trả về các kết quả khớp chính xác với truy vấn, tìm kiếm gần đúng lấy lại các tài liệu gần giống với truy vấn tìm kiếm dựa trên mức độ tương đồng được xác định. Cách tiếp cận này cải thiện đáng kể trải nghiệm của người dùng bằng cách tính đến các lỗi đánh máy, sự không nhất quán trong chính tả hoặc những thay đổi ngôn ngữ nhỏ.
Ví dụ, trong một kịch bản nơi người dùng tìm kiếm từ "reciept" thay vì "receipt," một tìm kiếm chính xác sẽ thất bại, trong khi một tìm kiếm mờ vẫn sẽ trả về các kết quả liên quan. Điều này đặc biệt hữu ích trong các lĩnh vực như truy xuất tài liệu pháp lý, nghiên cứu học thuật và khai thác dữ liệu doanh nghiệp, nơi độ chính xác và tính linh hoạt đều rất quan trọng.
Tìm kiếm mờ - Cấu hình .NET
Bạn cần cài đặt Conholdate.Total cho .NET với lệnh cài đặt NuGet sau đây:
Install-Package Conholdate.Total
Tìm kiếm mờ qua nhiều tệp và thư mục trong C#
Bạn có thể thực hiện tìm kiếm fuzzy trên một tập hợp rộng lớn các tài liệu được lưu trữ trong các thư mục khác nhau. Bạn có thể dễ dàng cấu hình các mức độ tương đồng và định nghĩa cấu trúc cho việc lập chỉ mục và tìm kiếm.
// Creating an index folder and add document's folder to it
Index index = new Index("indexing-folder-path");
index.Add("path/parent-folder");
SearchOptions options = new SearchOptions();
options.FuzzySearch.Enabled = true; // Enabling the fuzzy search
options.FuzzySearch.FuzzyAlgorithm = new SimilarityLevel(0.7);
string query = "nulla"; // search approximate matches of the provided query
SearchResult result = index.Search(query, options);
Trong đoạn mã này:
Một chỉ mục mới được tạo ra trỏ đến thư mục được sử dụng để lập chỉ mục.
Một thư mục cha chứa tất cả các tài liệu đã được thêm vào chỉ mục này.
Tìm kiếm mờ được kích hoạt thông qua lớp SearchOptions.
The SimilarityLevel is set to 0.7, which corresponds to a 70% match or 30% error tolerance.
Truy vấn tìm kiếm "nulla" được truyền vào, và hệ thống lấy kết quả đáp ứng ngưỡng tương tự.
Bạn có thể điều chỉnh mức độ tương tự tùy thuộc vào việc bạn muốn kết quả tìm kiếm nghiêm ngặt hay linh hoạt hơn. Một ngưỡng thấp cho phép linh hoạt hơn, trong khi một ngưỡng cao hơn đảm bảo sự phù hợp chặt chẽ hơn.
Lợi ích của Mức Độ Tương Tự Tùy Chỉnh
Một trong những tính năng nổi bật của Conholdate.Total cho .NET SDK là khả năng kiểm soát ngưỡng độ tương đồng cho tìm kiếm mờ. Mức độ tùy chỉnh này cung cấp sự kiểm soát tinh vi đối với quá trình khớp, đảm bảo rằng các kết quả đều liên quan và đáng tin cậy.
Tương đồng cao (ví dụ, 0.9): Sử dụng khi độ chính xác là rất quan trọng, và bạn muốn kết quả rất gần với truy vấn gốc.
Sự tương đồng thấp (ví dụ: 0.6): Thích hợp cho các tìm kiếm khám phá hoặc khi người dùng có thể nhập dữ liệu với nhiều lỗi thường xuyên.
Việc có thể thay đổi giá trị này theo chương trình mang lại cho các nhà phát triển sự linh hoạt để thích ứng với các trường hợp sử dụng kinh doanh khác nhau mà không cần phải lập chỉ mục lại hoặc cấu hình lại toàn bộ hệ thống.
Giấy phép đánh giá miễn phí
Bạn có thể nhận một giấy phép tạm thời miễn phí để tránh các giới hạn dùng thử của SDK và có thể kiểm tra nó ở công suất đầy đủ.
Kết luận
Tìm kiếm mờ là một tính năng quan trọng cho các ứng dụng cần cung cấp khả năng tìm kiếm thông minh, khoan dung và thân thiện với người dùng. Bằng cách sử dụng Conholdate.Total cho .NET SDK, các nhà phát triển có thể tích hợp chức năng tìm kiếm mờ mạnh mẽ vào các ứng dụng C# của họ với nỗ lực tối thiểu. Dù bạn đang tìm kiếm hàng nghìn tài liệu pháp lý hay quét qua nội dung do người dùng tạo, SDK này cung cấp các công cụ để xử lý nó một cách chính xác và linh hoạt. Điều chỉnh mức độ tương đồng, tìm kiếm qua các thư mục và lấy lại những kết quả phù hợp nhất, ngay cả khi đầu vào không hoàn hảo.