Szinonimatérkép létrehozása (Azure AI Search REST API)
Az Azure AI Search szinonimatérképe tartalmazza a keresési lekérdezések egyenértékű kifejezésekre való kiterjesztésére vagy újraírására vonatkozó szabályok listáját.
A kérelemhez használhatJA a POST vagy a PUT elemet. Mindkét esetben a kérelem törzsében található JSON-dokumentum biztosítja az objektumdefiníciót.
POST https://[service name].search.windows.net/synonymmaps?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
Másik lehetőségként használhatja a PUT parancsot, és megadhatja a szinonimatérkép nevét az URI-n.
PUT https://[service name].search.windows.net/synonymmaps/[synonymmap name]?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
MINDEN szolgáltatáskéréshez HTTPS szükséges. Ha a szinonimatérkép nem létezik, létrejön. Ha már létezik, az új definícióra frissül.
Megjegyzés
A létrehozható szinonimatérképek maximális száma a tarifacsomagtól függően változik. További információ: Szolgáltatáskorlátok.
URI-paraméterek
Paraméter | Leírás |
---|---|
szolgáltatásnév | Kötelező. Állítsa be ezt a keresési szolgáltatás egyedi, felhasználó által definiált nevére. |
szinonimatérkép neve | Put használata esetén az URI-n kötelező megadni. A névnek kisbetűnek kell lennie, betűvel vagy számmal kell kezdődnie, nincsenek perjelei vagy pontjai, és 128 karakternél kevesebbnek kell lennie. Ha a nevet betűvel vagy számmal kezdi, a név többi része bármilyen betűt, számot és kötőjelet tartalmazhat, feltéve, hogy a kötőjelek nem egymást követőek. |
api-verzió | Kötelező. A jelenlegi stabil verzió a következő api-version=2020-06-30 : . További verziókért lásd: API-verziók . |
Kérelemfejlécek
Az alábbi táblázat a szükséges és nem kötelező kérésfejléceket ismerteti.
Mezők | Description |
---|---|
Content-Type | Kötelező. Állítsa a következőre: application/json |
api-key | Nem kötelező , ha Azure-szerepköröket használ, és egy tulajdonosi jogkivonatot ad meg a kéréshez, ellenkező esetben kulcsra van szükség. Az API-kulcs egy egyedi, rendszer által generált sztring, amely hitelesíti a kérést a keresési szolgáltatásnak. A létrehozási kérelmeknek tartalmazniuk kell egy api-key , a rendszergazdai kulcsra beállított fejlécet (a lekérdezési kulcs helyett). A részletekért lásd: Csatlakozás az Azure AI Search szolgáltatáshoz kulcshitelesítés használatával . |
Kérelem törzse
A kérelem törzse tartalmaz egy szinonimatérkép-definíciót, amely tartalmazza a szinonimatérkép formátumát és a szabályok listáját a megadott formátumban.
A következő JSON a definíció fő részeinek magas szintű ábrázolása.
{
"name" : (optional on PUT; required on POST) "Name of the synonym map",
"format" : (required) "Only Apache Solr format ('solr') is currently supported.",
"synonyms" : (required) "Synonym rules separated by the new line ('\n') character.",
"encryptionKey":(optional) { See below for details }
}
A kérelem a következő tulajdonságokat tartalmazza:
Tulajdonság | Leírás |
---|---|
name | Kötelező. A szinonimatérkép neve. A szinonimák leképezésének neve csak kisbetűket, számjegyeket vagy kötőjeleket tartalmazhat, nem indítható el és nem végződhet kötőjelekkel, és legfeljebb 128 karakter hosszúságú lehet. |
Formátum | Kötelező. Jelenleg csak az Apache Solr formátum (solr ) támogatott. |
Szinonimák | Kötelező. Szinonimaszabályok az új sor (\n) karakterével elválasztva. |
encryptionKey | Választható. Szinonimatérkép titkosítására szolgál, saját kulcsokkal, az Azure Key Vault felügyelve. A 2019-01-01-en vagy azt követően létrehozott számlázható keresési szolgáltatásokhoz érhető el.
A encryptionKey szakasz tartalmaz egy felhasználó által definiált keyVaultKeyName (kötelező), egy rendszer által létrehozott keyVaultKeyVersion (kötelező) és egy keyVaultUri kulcsot (kötelező, más néven DNS-nevet). Példa URI-ra: "https://my-keyvault-name.vault.azure.net".
Igény szerint megadhatja accessCredentials , hogy nem felügyelt rendszeridentitást használ-e.
accessCredentials A következők applicationId tulajdonságai: (Az Azure Active Directory alkalmazásazonosítója, amely hozzáférési engedélyeket kapott a megadott Azure Key Vault) és applicationSecret (a megadott Azure AD alkalmazás hitelesítési kulcsa). A következő szakaszban egy példa szemlélteti a szintaxist. |
Reagálás
Sikeres kérés esetén: 201 Létrehozva.
Példák
Példa: Az egyenértékű és explicit leképezéseket tartalmazó szinonimák listája.
Az egyenértékű leképezési szabály vesszővel elválasztott egyenértékű kifejezéseket vagy kifejezéseket sorol fel ("USA, Egyesült Államok, amerika Egyesült Államok"). A szabály kiterjeszti a keresést az összes egyenértékű kifejezésre vagy kifejezésre. Például egy olyan keresési dokumentum, amely a USA
kifejezést USA
vagy kifejezéseket tartalmazó lekérdezésekben "United States"
egyezik, vagy "United States of America"
.
Az explicit leképezést egy nyíl =>
jelöli ("USA, USA, USA, Egyesült Államok, Egyesült Államok Amerika => USA"). Ha meg van adva, a keresési lekérdezés bal oldalának =>
megfelelő kifejezéssorozatot a jobb oldalon lévő alternatívákra cseréli a rendszer. A szabály alapján a keresési lekérdezések U.S.
vagy "United States"
az összes újra lesz írva a következőre: USA
. Az explicit leképezés csak a megadott irányba vonatkozik, és ebben az esetben nem írja át a lekérdezést USA
"United States"
. Figyelje meg, hogy a "Egyesült Államok" egy idézőjeles kifejezéses lekérdezés. Ha a teljes kifejezésen egyezést szeretne, a lekérdezési sztringet idézőjelek közé kell tenni. Ellenkező esetben a "United" és az "States" kifejezéseket külön értékelik ki.
{
"name" : "synonymmap1",
"format" : "solr",
"synonyms" : "United States, United States of America, USA\n
Washington, Wash. => WA"
}
Példa: Titkosítási kulcsok
A titkosítási kulcsok az ügyfél által felügyelt kulcsok, amelyeket a további titkosításhoz használnak. További információ: Titkosítás ügyfél által felügyelt kulcsokkal az Azure Key Vault.
{
"name" : "synonymmap1",
"format" : "solr",
"synonyms" : "United States, United States of America, USA\n
Washington, Wash. => WA",
"encryptionKey": (optional) {
"keyVaultKeyName": "Name of the Azure Key Vault key used for encryption",
"keyVaultKeyVersion": "Version of the Azure Key Vault key",
"keyVaultUri": "URI of Azure Key Vault, also referred to as DNS name, that provides the key. An example URI might be https://my-keyvault-name.vault.azure.net",
"accessCredentials": (optional, only if not using managed system identity) {
"applicationId": "Azure AD Application ID that was granted access permissions to your specified Azure Key Vault",
"applicationSecret": "Authentication key of the specified Azure AD application)"
}
}
}
Lásd még
- C#-kódminta
- Szinonimák C#-oktatóanyaga a szinonimákról.
- Szinonimák az Azure AI Searchben