Megosztás a következőn keresztül:


Rövid útmutató: A Bing Entity Search ügyfélkódtár használata

Figyelmeztetés

2020. október 30-án a Bing Search API-k átkerültek az Azure AI-szolgáltatásokból a Bing Search Servicesbe. Ez a dokumentáció csak referenciaként szolgál. A frissített dokumentációt a Bing search API dokumentációjában találja. Az új Azure-erőforrások Bing-kereséshez való létrehozásával kapcsolatos útmutatásért lásd: Bing Search-erőforrás létrehozása a Azure Marketplace keresztül.

Ezzel a rövid útmutatóval megkezdheti az entitások keresését a C# Bing Entity Search ügyfélkódtárával. Bár a Bing Entity Search a legtöbb programozási nyelvvel kompatibilis REST API-val rendelkezik, az ügyfélkódtár segítségével egyszerűen integrálhatja a szolgáltatást az alkalmazásokba. A minta forráskódja a GitHubon található.

Előfeltételek

Ha hozzá szeretné adni a Bing Entity Search ügyfélkódtárat a Visual Studio-projekthez, használja a NuGet-csomagok kezelése lehetőséget Megoldáskezelő, és adja hozzá a Microsoft.Azure.CognitiveServices.Search.EntitySearch csomagot.

Azure-erőforrás létrehozása

Kezdje el használni a Bing Entity Search API-t az alábbi Azure-erőforrások egyikének létrehozásával.

Bing Entity Search-erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Az ingyenes tarifacsomag használatával próbálja ki a szolgáltatást, és frissítsen később egy fizetős szintre éles környezetben.
  • A Bing Entity Search a Bing Search v7-erőforrás fizetős szintjeiben is elérhető.

Többszolgáltatásos erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Azure AI-szolgáltatásban.

Alkalmazás létrehozása és inicializálása

  1. hozzon létre egy új C#-konzolmegoldást a Visual Studióban. Ezután adja hozzá a következőket a fő kódfájlhoz.

    using System;
    using System.Linq;
    using System.Text;
    using Microsoft.Azure.CognitiveServices.Search.EntitySearch;
    using Microsoft.Azure.CognitiveServices.Search.EntitySearch.Models;
    using Newtonsoft.Json;
    

Ügyfél létrehozása és keresési kérelem küldése

  1. Hozzon létre egy új keresési ügyfelet. Adja hozzá az előfizetési kulcsot egy új ApiKeyServiceClientCredentialslétrehozásával.

    var client = new EntitySearchClient(new ApiKeyServiceClientCredentials("YOUR-ACCESS-KEY"));
    
  2. A lekérdezés kereséséhez Entities.Search() használja az ügyfél függvényét:

    var entityData = client.Entities.Search(query: "Satya Nadella");
    

Entitás leírásának lekérése és nyomtatása

  1. Ha az API keresési eredményeket adott vissza, kérje le a fő entitást a forrásból entityData.

    var mainEntity = entityData.Entities.Value.Where(thing => thing.EntityPresentationInfo.EntityScenario == EntityScenario.DominantEntity).FirstOrDefault();
    
  2. A fő entitás leírásának nyomtatása

    Console.WriteLine(mainEntity.Description);
    

Következő lépések

Ezzel a rövid útmutatóval megkezdheti az entitások keresését a Java Bing Entity Search ügyfélkódtárával. Bár a Bing Entity Search a legtöbb programozási nyelvvel kompatibilis REST API-val rendelkezik, az ügyfélkódtár segítségével egyszerűen integrálhatja a szolgáltatást az alkalmazásokba. A minta forráskódja a GitHubon található.

Előfeltételek

Telepítse a Bing Entity Search ügyféloldali kódtár-függőségeit a Maven, a Gradle vagy más függőségkezelési rendszer használatával. A Maven POM-fájlhoz a következő deklarációra van szükség:

<dependency>
  <groupId>com.microsoft.azure.cognitiveservices</groupId>
  <artifactId>azure-cognitiveservices-entitysearch</artifactId>
  <version>1.0.2</version>
</dependency>

Azure-erőforrás létrehozása

Kezdje el használni a Bing Entity Search API-t az alábbi Azure-erőforrások egyikének létrehozásával.

Bing Entity Search-erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Az ingyenes tarifacsomag használatával próbálja ki a szolgáltatást, és frissítsen később egy fizetős szintre éles környezetben.
  • A Bing Entity Search a Bing Search v7-erőforrás fizetős szintjeiben is elérhető.

Többszolgáltatásos erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Azure AI-szolgáltatásban.

Projekt létrehozása és inicializálása

  1. Hozzon létre egy új Java-projektet a kedvenc IDE-környezetében vagy szerkesztőjében, és importálja az alábbi kódtárakat.

    import com.microsoft.azure.cognitiveservices.entitysearch.*;
    import com.microsoft.azure.cognitiveservices.entitysearch.implementation.EntitySearchAPIImpl;
    import com.microsoft.azure.cognitiveservices.entitysearch.implementation.SearchResponseInner;
    import com.microsoft.rest.credentials.ServiceClientCredentials;
    import okhttp3.Interceptor;
    import okhttp3.OkHttpClient;
    import okhttp3.Request;
    import okhttp3.Response;
    
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;
    
  2. Változó létrehozása az előfizetési kulcshoz

    String subscriptionKey = "your-key-here"
    

Keresési ügyfél létrehozása

  1. Implementálja az ügyfelet dominantEntityLookup , amelyhez az API-végpont és az ServiceClientCredentials osztály egy példánya szükséges. Használhatja az alábbi globális végpontot, vagy az erőforráshoz tartozó Azure Portal megjelenő egyéni altartományvégpontot.

    public static EntitySearchAPIImpl getClient(final String subscriptionKey) {
        return new EntitySearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/",
                new ServiceClientCredentials() {
                //...
                }
    )};
    

    A implementálásához kövesse az ServiceClientCredentialsalábbi lépéseket:

    1. felülbírálhatja a applyCredentialsFilter() függvényt, paraméterként pedig objektummal OkHttpClient.Builder .

      //...
      new ServiceClientCredentials() {
              @Override
              public void applyCredentialsFilter(OkHttpClient.Builder builder) {
              //...
              }
      //...
      
    2. A applyCredentialsFilter()területen belül hívja meg a parancsot builder.addNetworkInterceptor(). Hozzon létre egy új Interceptor objektumot, és felülbírálja annak metódusát intercept() , hogy elfogóobjektumot Chain vegyen fel.

      //...
      builder.addNetworkInterceptor(
          new Interceptor() {
              @Override
              public Response intercept(Chain chain) throws IOException {
              //...    
              }
          });
      ///...
      
    3. A függvényen intercept belül hozzon létre változókat a kéréshez. A használatával Request.Builder() létrehozhatja a kérést. Adja hozzá az előfizetési kulcsot a Ocp-Apim-Subscription-Key fejléchez, és térjen vissza chain.proceed() a kérelemobjektumra.

      //...
      public Response intercept(Chain chain) throws IOException {
          Request request = null;
          Request original = chain.request();
          Request.Builder requestBuilder = original.newBuilder()
                  .addHeader("Ocp-Apim-Subscription-Key", subscriptionKey);
          request = requestBuilder.build();
          return chain.proceed(request);
      }
      //...
      

Kérés küldése és válasz fogadása

  1. Hozzon létre egy új keresési ügyfelet az előfizetési kulccsal. használatával client.entities().search() keresési kérést küldhet a keresési lekérdezéshez satya nadella, és választ kaphat.

    EntitySearchAPIImpl client = getClient(subscriptionKey);
    SearchResponseInner entityData = client.entities().search(
            "satya nadella", null, null, null, null, null, null, "en-us", null, null, SafeSearch.STRICT, null);
    
  2. Ha bármelyik entitást visszaadta, konvertálja őket listává. Iterálja át őket, és nyomtassa ki a domináns entitást.

    if (entityData.entities().value().size() > 0){
        // Find the entity that represents the dominant entity
        List<Thing> entries = entityData.entities().value();
        Thing dominateEntry = null;
        for(Thing thing : entries) {
            if(thing.entityPresentationInfo().entityScenario() == EntityScenario.DOMINANT_ENTITY) {
                System.out.println("\r\nSearched for \"Satya Nadella\" and found a dominant entity with this description:");
                System.out.println(thing.description());
                break;
            }
        }
    }
    

Következő lépések

Ezzel a rövid útmutatóval megkezdheti az entitások keresését a JavaScripthez készült Bing Entity Search ügyfélkódtárban. Bár a Bing Entity Search a legtöbb programozási nyelvvel kompatibilis REST API-val rendelkezik, az ügyfélkódtár segítségével egyszerűen integrálhatja a szolgáltatást az alkalmazásokba. A minta forráskódja a GitHubon található.

Előfeltételek

  • A Node.js legújabb verziója.
  • A JavaScripthez készült Bing Entity Search SDK
    • A telepítéshez futtassa a npm install @azure/cognitiveservices-entitysearch
  • Az CognitiveServicesCredentials osztály a csomagból @azure/ms-rest-azure-js az ügyfél hitelesítéséhez.
    • A telepítéshez futtassa a npm install @azure/ms-rest-azure-js

Azure-erőforrás létrehozása

Kezdje el használni a Bing Entity Search API-t az alábbi Azure-erőforrások egyikének létrehozásával.

Bing Entity Search-erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Az ingyenes tarifacsomag használatával próbálja ki a szolgáltatást, és frissítsen később egy fizetős szintre éles környezetben.
  • A Bing Entity Search a Bing Search v7-erőforrás fizetős szintjeiben is elérhető.

Többszolgáltatásos erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Azure AI-szolgáltatásban.

Az alkalmazás létrehozása és inicializálása

  1. Hozzon létre egy új JavaScript-fájlt a kedvenc IDE-jében vagy szerkesztőjében, és adja hozzá a következő követelményeket.

    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    const EntitySearchAPIClient = require('@azure/cognitiveservices-entitysearch');
    
  2. Hozzon létre egy példányt az előfizetési CognitiveServicesCredentials kulcs használatával. Ezután hozza létre a keresési ügyfél egy példányát vele.

    let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY');
    let entitySearchApiClient = new EntitySearchAPIClient(credentials);
    

Kérés küldése és válasz fogadása

  1. Entitáskeresési kérés küldése a következővel: entitiesOperations.search(). A válasz beérkezése után nyomtassa ki a , a queryContextvisszaadott eredmények számát és az első eredmény leírását.

    entitySearchApiClient.entitiesOperations.search('seahawks').then((result) => {
        console.log(result.queryContext);
        console.log(result.entities.value);
        console.log(result.entities.value[0].description);
    }).catch((err) => {
        throw err;
    });
    

Következő lépések

Ezzel a rövid útmutatóval megkezdheti az entitások keresését a Pythonhoz készült Bing Entity Search ügyfélkódtárral. Bár a Bing Entity Search a legtöbb programozási nyelvvel kompatibilis REST API-val rendelkezik, az ügyfélkódtár segítségével egyszerűen integrálhatja a szolgáltatást az alkalmazásokba. A minta forráskódja a GitHubon található.

Előfeltételek

Javasoljuk, hogy pythonos virtuális környezetet használjon. Virtuális környezetet a venv modullal telepíthet és inicializálhat. A virtualenv a következőkkel telepíthető:

python -m venv mytestenv

Telepítse a Bing Entity Search ügyfélkódtárat a következővel:

cd mytestenv
python -m pip install azure-cognitiveservices-search-entitysearch

Azure-erőforrás létrehozása

Kezdje el használni a Bing Entity Search API-t az alábbi Azure-erőforrások egyikének létrehozásával.

Bing Entity Search-erőforrás

  • A Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Az ingyenes tarifacsomag használatával próbálja ki a szolgáltatást, és frissítsen később egy fizetős tarifacsomagra éles környezetben.
  • A Bing Entity Search a Bing Search v7-erőforrás fizetős szintjeiben is elérhető.

Többszolgáltatásos erőforrás

  • A Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Azure AI-szolgáltatásban.

Az alkalmazás létrehozása és inicializálása

  1. Hozzon létre egy új Python-fájlt a kedvenc IDE-jében vagy szerkesztőjében, és adja hozzá az alábbi importálási utasításokat.

    from azure.cognitiveservices.search.entitysearch import EntitySearchClient
    from azure.cognitiveservices.search.entitysearch.models import Place, ErrorResponseException
    from msrest.authentication import CognitiveServicesCredentials
    
  2. Hozzon létre egy változót az előfizetői azonosítóhoz és a végponthoz. Példányosíthatja az ügyfelet úgy, hogy létrehoz egy új CognitiveServicesCredentials objektumot a kulccsal.

    subscription_key = "YOUR-SUBSCRIPTION-KEY"
    endpoint = "YOUR-ENDPOINT"
    client = EntitySearchclient(endpoint=endpoint, credentials=CognitiveServicesCredentials(subscription_key))
    

Keresési kérés küldése és válasz fogadása

  1. Küldjön keresési kérést a Bing Entity Searchnek a következővel client.entities.search() : és egy keresési lekérdezés.

    entity_data = client.entities.search(query="Gibralter")
    
  2. Ha entitásokat ad vissza, konvertálja listává entity_data.entities.value , és nyomtassa ki az első eredményt.

    if entity_data.entities.value:
    
        main_entities = [entity for entity in entity_data.entities.value
                         if entity.entity_presentation_info.entity_scenario == "DominantEntity"]
    
        if main_entities:
            print(main_entities[0].description)
    

Következő lépések