Hogyan hozhat létre keresési indexet a GroupDocs-szal és szinonima keresést .NET-ben
Ebben az útmutatóban megtanulja, hogyan hozhat létre keresési indexet a GroupDocs.Search segítségével, dokumentumokat ad hozzá az indexhez, és engedélyezi a szinonima keresést, hogy a felhasználók releváns tartalmat találjanak még akkor is, ha különböző terminológiát használnak. Akár jogi adattárat, vállalati tudásbázist vagy kutatási archívumot épít, az alábbi lépések egy termelésre kész megoldást nyújtanak, amely a .NET Framework 4.6.1+, .NET Core és .NET 5+ környezetekben működik.
Gyors válaszok
- Mi jelent a „create search index” kifejezés? Olyan kereshető katalógust épít a dokumentumairól, amely kinyert szöveget tárol egy optimalizált struktúrában ezredmásodperces lekérdezésekhez.
- Miért használjunk szinonima keresést? Kiterjeszti a lekérdezést olyan szavakra, amelyek ugyanazt jelentik, ezáltal a visszahívást akár 30 %-kal is növelheti a tipikus korpuszokban.
- Mik a fő előfeltételek? .NET 4.6.1+ (vagy .NET Core/5+), C# ismeretek, valamint a GroupDocs.Search + GroupDocs.Redaction NuGet csomagok.
- Szükségem van licencre? Egy ingyenes próba elegendő az értékeléshez; egy állandó licenc szükséges a termelési környezetekhez.
- Összekapcsolható a redakcióval? Igen— a GroupDocs.Redaction futtatható a keresés előtt vagy után az érzékeny adatok elrejtéséhez.
Mi az a „create search index”?
A search index egy adatstruktúra, amely minden dokumentumból kinyert szöveget és metaadatot tárol, lehetővé téve a motor számára, hogy azonnal megtalálja a megfelelő fájlokat. A GroupDocs.Search úgy építi fel ezt az indexet, hogy beolvassa a forrásmappát, feldolgozza a támogatott formátumokat, és kompakt indexfájlokat ír egy általad megadott könyvtárba.
Miért engedélyezzük a szinonima keresést?
A szinonima keresés automatikusan hozzáad alternatív kifejezéseket a felhasználó lekérdezéséhez, így a „improve” keresés például olyan dokumentumokat is visszaad, amelyek tartalmazzák a „enhance”, „upgrade” vagy „optimize” szavakat. Gyakorlatban ez 20‑35 %-kal növelheti a találati visszahívást, miközben a pontosság magas marad, mivel a beépített szinonima szótár minden nyelvre külön van összeállítva.
Előfeltételek
- .NET Framework 4.6.1 vagy újabb (vagy bármely .NET Core/5+ futtatókörnyezet).
- Alap C# fejlesztői készségek és Visual Studio (Community, Professional vagy Enterprise).
- GroupDocs.Search és GroupDocs.Redaction csomagok telepítve NuGet-en keresztül.
Telepítés
Telepítse a GroupDocs.Redaction-t .NET-hez az alábbi módszerek egyikével (a részletekért lásd a GroupDocs.Redaction .NET dokumentációt):
.NET CLI:
dotnet add package GroupDocs.Redaction
Package Manager Console:
Install-Package GroupDocs.Redaction
Alternatívaként használhatja a NuGet Package Manager UI-t a Visual Studio-ban a „GroupDocs.Redaction” kereséséhez és közvetlen telepítéséhez. Az API-referenciaért lásd a GroupDocs Redaction API oldalt.
Licenc beszerzése
- Ingyenes próba: Kezdje egy próbaverzióval, hogy felfedezze az összes funkciót.
- Ideiglenes licenc: Kérjen ideiglenes licencet a GroupDocs weboldalon, vagy kezelje licencét a GroupDocs License Management portálon.
- Teljes vásárlás: Amikor készen áll a termelésre, vásároljon teljes licencet, amely eltávolítja az összes értékelési korlátot.
Hogyan állítsuk be a GroupDocs.Redaction-t .NET-hez
A GroupDocs.Redaction biztosítja a fő funkciót az érzékeny tartalom redakciójához a keresés előtt vagy után. Egy Redactor osztályt tesz elérhetővé, amelyet licenccel és opcionális konfigurációs beállításokkal példányosít.
Az alábbi kód bemutatja, hogyan hozhatunk létre egy redaktor példányt és hogyan tölthetünk be egy licencfájlt:
// Definition anchor: the Redactor class provides methods to locate and mask text, images, or metadata.
var redactor = new GroupDocs.Redaction.Redactor();
using GroupDocs.Redaction;
// Initialize a new Redactor object with your document path
RedactorSettings settings = new RedactorSettings();
Redactor redactor = new Redactor("YOUR_DOCUMENT_PATH", settings);
A redaktor készen állva, később meghívhatja a redactor.Redact(...) metódust bármely dokumentumon, amelyet a keresési eredményekből kap.
Hogyan hozhatunk létre keresési indexet
A keresési index létrehozása magában foglalja egy mappa megadását, ahol az indexfájlok tárolódnak, majd a GroupDocs.Search Index osztályának inicializálását. Az index tartalmazni fogja az összes kereshető adatot, amely a forrásdokumentumokból lett kinyerve.
Először hozzon létre egy könyvtárat az indexhez, majd példányosítsa az Index objektumot:
// Definition anchor: the Index class represents the searchable container that holds all indexed documents.
var indexPath = @"C:\MySearchIndex";
var index = new GroupDocs.Search.Index(indexPath);
string indexFolder = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Searching/SynonymSearch";
Az index létrehozása bináris fájlok egy sorát írja a mappába; ezek a fájlok általában 200 KB alatt vannak 1 000 oldalanként, lehetővé téve, hogy milliók oldalát is skálázhassa anélkül, hogy a lemezhely kifogyna.
Hogyan adjon dokumentumokat az indexhez
A dokumentumok hozzáadása megköveteli, hogy az API-t a forrásfájlokat tartalmazó könyvtárra irányítsa, és az indexet utasítsa azok beolvasására. A folyamat minden támogatott formátumot feldolgoz, szöveget nyer ki, és az indexben tárolja a gyors lekérdezés érdekében.
Használja az alábbi kódot a forrásmappában lévő összes fájl indexeléséhez:
// Definition anchor: DocumentSource tells the index where to read files from and which formats to accept.
var sourceFolder = @"C:\MyDocuments";
index.Add(sourceFolder);
using GroupDocs.Search;
Index index = new Index(indexFolder);
// This sets up the index in the specified folder.
A GroupDocs.Search 30+ bemeneti formátumot támogat—beleértve a DOCX, PDF, PPTX, HTML és általános képformátumokat—így gyakorlatilag bármely vállalati archívumot indexelhet további konverterek nélkül.
Hogyan engedélyezzük és futtassuk a szinonima keresést
A szinonima kezelés a SearchOptions segítségével kapcsolható be. Engedélyezés után minden lekérdezés automatikusan kibővül a szótár szinonimáival, növelve a visszahívást anélkül, hogy a pontosság csökkenne.
A szinonima keresés engedélyezése az alábbi kódrészlettel:
var options = new GroupDocs.Search.SearchOptions()
{
UseSynonyms = true
};
var result = index.Search("improve", options);
string documentsFolder = "YOUR_DOCUMENT_DIRECTORY";
Az alapértelmezett szinonima szótár több mint 5 000 kifejezéspárt tartalmaz angol nyelvre. Továbbá betölthet egy egyedi SynonymDictionary fájlt az iparágspecifikus zsargon támogatásához.
Egyedi szinonima szótár
Ha domén‑specifikus szinonimákra van szüksége, töltse be a saját szótárfájlját, és rendelje hozzá a SearchOptions-hoz a lekérdezés végrehajtása előtt.
options.SynonymDictionary = new SynonymDictionary(@"C:\mySynonyms.txt");
var result = index.Search("upgrade", options);
index.Add(documentsFolder);
// This step populates the index with content from your documents.
Gyakori hibaelhárítási tippek
- Útvonal problémák: Ellenőrizze, hogy az index és a forrásmappák elérhetők-e a folyamat fiókja által.
- Licenc korlátok: Egy nem licencelt build korlátozhatja az indexelt fájlok számát 100-ra.
- Nincs eredmény: Ellenőrizze, hogy a szinonima szótár be van-e töltve; a futásidőben megtekintheti a
options.SynonymDictionary.Countértékét.
Gyakorlati alkalmazások
- Jogi dokumentumkezelés: Keresse meg a jogeseteket jogi kifejezések és szinonimáik segítségével.
- Akademiai kutatás: Bővítse az irodalomkereséseket tudományos PDF-ek és Word fájlok között.
- Vállalati tudásbázisok: Hozza elő a belső irányelveket még akkor is, ha a felhasználók másként fogalmazzák meg a lekérdezéseket.
- Tartalomkezelő rendszerek: Biztosítson a szerkesztőknek gazdagabb felfedezést a cikkek címkézésekor.
- Ügyfélszolgálati jegykezelés: Párosítsa a jegyeket a ismert problémákkal szinonimákat tartalmazó leírások alapján.
Teljesítmény szempontok
- Index karbantartás: Újraindexelés tömeges frissítések után; az inkrementális indexelés akár 70 %-kal csökkenti a leállási időt.
- Erőforrás monitorozás: 10 GB-os köteg indexelése egy standard VM-en (2 vCPU, 8 GB RAM) körülbelül 1,2 GB RAM-ot használ; korlátozza a köteg méretét, ha a határokhoz közelít.
- Objektum felszabadítás: Hívja meg a
index.Dispose()ésredactor.Dispose()metódusokat, amint befejezte a munkát, hogy felszabadítsa a natív erőforrásokat.
Következtetés
Most már tudja, hogyan hozhat létre keresési indexet a GroupDocs-szal, hogyan adhat dokumentumokat az indexhez, és hogyan engedélyezheti a szinonima keresést egy intuitívabb felhasználói élményért. Ez az alap lehetővé teszi, hogy a redakciót, egyedi rangsorolást vagy fuzzy egyezést is hozzáadja egy robusztus keresőmotorhoz.
Következő lépések
- Kísérletezzen a
SearchOptions.FuzzySearchhasználatával a helyesírási hibák elkapásához. - Fedezze fel a
RankingAPI-t a prioritásos dokumentumok erősítéséhez. - Csatlakozzon a közösséghez a GroupDocs Fórumon vagy a Free Support Forum oldalon, hogy tippeket osszon meg és kérdéseket tegyen fel.
- Ellenőrizze a Legújabb GroupDocs kiadásokat a frissítések és új funkciókért.
Gyakran ismételt kérdések
Q: Mi a szinonima keresés?
A: A szinonima keresés kibővíti a felhasználó lekérdezését előre definiált alternatív kifejezésekkel, növelve annak esélyét, hogy releváns dokumentumokat találjon, amelyek eltérő megfogalmazást használnak.
Q: Hogyan frissíthetem a GroupDocs licencet?
A: Látogassa meg a GroupDocs License Management portált, és töltse fel az új licencfájlt a License.SetLicense("path/to/license.lic") segítségével.
Q: Használhatom a szinonima keresést többnyelvű környezetben?
A: Igen—töltsön be egy nyelvspecifikus SynonymDictionary fájlt minden támogatott nyelvhez, és a motor a lekérdezésenként a megfelelő szinonima készletet alkalmazza.
Q: Mik a leggyakoribb indexelési problémák?
A: A fájlhozzáférési jogosultságok, a nem támogatott formátumok és a próba‑verzió dokumentumkorlátjának túllépése a fejlesztők által leggyakrabban tapasztalt három probléma.
Q: Hogyan optimalizálhatom a teljesítményt nagyon nagy indexek esetén?
A: Használjon inkrementális indexelést, tárolja az indexet SSD-ken, és állítsa be a IndexingOptions.MaxDegreeOfParallelism értékét a CPU magok számához.
Last Updated: 2026-09-16
Tested With: GroupDocs.Search 23.10 for .NET
Author: GroupDocs
using GroupDocs.Search.Options;
SearchOptions options = new SearchOptions();
options.UseSynonymSearch = true; // Activate synonym search.
string query = "improve";
SearchResult result = index.Search(query, options);
// This operation returns documents matching 'improve' or its synonyms.