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