Inicio rápido: Uso de la biblioteca cliente de Bing Autosuggest

Advertencia

El 30 de octubre de 2020, las API de Bing Search se trasladaron de los servicios de Azure AI a los servicios de Bing Search. Esta documentación se proporciona solo como referencia. Para obtener documentación actualizada, consulte la documentación de Bing Search API. Para obtener instrucciones sobre cómo crear nuevos recursos de Azure para Bing Search, consulte el artículo sobre la creación de un recurso de Bing Search a través de Azure Marketplace.

Introducción a la biblioteca cliente de Bing Autosuggest para .NET. Siga estos pasos para instalar el paquete y probar el código de ejemplo para realizar tareas básicas.

Use la biblioteca cliente de Bing Autosuggest para .NET para obtener sugerencias de búsqueda basadas en cadenas de consulta parciales.

Documentación de referencia | Código fuente de la biblioteca | Paquete (NuGet) | Ejemplo de código

Requisitos previos

Creación de un recurso de Azure

Comience a usar Bing Autosuggest API mediante la creación de uno de los recursos de Azure que se indican a continuación.

Recurso de Bing Autosuggest

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.
  • Bing Autosuggest también se ofrece en los niveles de pago del recurso Bing Search, versión 7.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Creación de variables de entorno

Nota

Los puntos de conexión de los recursos creados después del 1 de julio de 2019 usan el formato de subdominio personalizado que se muestra a continuación. Para obtener más información y una lista completa de puntos finales regionales, consulte Nombres de subdominios personalizados para los servicios de Azure AI.

Con la clave y el punto de conexión del recurso que ha creado, cree dos variables de entorno para la autenticación:

  • AUTOSUGGEST_SUBSCRIPTION_KEY: la clave de recurso para autenticar las solicitudes.
  • AUTOSUGGEST_ENDPOINT: el punto de conexión del recurso para enviar solicitudes de API. Debería ser parecido a este: https://<your-custom-subdomain>.api.cognitive.microsoft.com.

Siga las instrucciones adecuadas para su sistema operativo.

setx AUTOSUGGEST_SUBSCRIPTION_KEY <replace-with-your-autosuggest-api-key>
setx AUTOSUGGEST_ENDPOINT <replace-with-your-autosuggest-api-endpoint>

Después de agregar la variable de entorno, reinicie la ventana de la consola.

Creación de una aplicación de C#

Cree una nueva aplicación de consola de .NET Core en el IDE o editor que prefiera.

En una ventana de consola (por ejemplo, cmd, PowerShell o Bash), use el comando dotnet new para crear una nueva aplicación de consola con el nombre bing-autosuggest-quickstart. Este comando crea un sencillo proyecto de C#, "Hola mundo", con un solo archivo de origen: program.cs.

dotnet new console -n bing-autosuggest-quickstart

Cambie el directorio a la carpeta de aplicaciones recién creada. Para compilar la aplicación:

dotnet build

La salida de la compilación no debe contener advertencias ni errores.

...
Build succeeded.
 0 Warning(s)
 0 Error(s)
...

En el directorio del proyecto, abra el archivo program.cs en el editor o IDE que prefiera. Agregue las siguientes directivas using:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

En la clase Program, cree variables para el punto de conexión y la clave de Azure del recurso. Si ha creado la variable de entorno después de haber iniciado la aplicación, tendrá que cerrar y volver a abrir el editor, el IDE o el shell que lo ejecuta para acceder a la variable.

private const string key_var = "AUTOSUGGEST_SUBSCRIPTION_KEY";
private static readonly string subscription_key = Environment.GetEnvironmentVariable(key_var);

// Note you must use the same region as you used to get your subscription key.
private const string endpoint_var = "AUTOSUGGEST_ENDPOINT";
private static readonly string endpoint = Environment.GetEnvironmentVariable(endpoint_var);

En el método Main de la aplicación, agregue las siguientes llamadas de método que definirá más adelante.

static void Main(string[] args)
{
    Task.WaitAll(RunQuickstart());
    Console.WriteLine("Press any key to exit.");
    Console.Read();
}

Instalación de la biblioteca cliente

Dentro del directorio de aplicaciones, instale la biblioteca cliente de Bing Autosuggest para .NET con el siguiente comando:

dotnet add package Microsoft.Azure.CognitiveServices.Search.AutoSuggest --version 2.0.0

Si usa el IDE de Visual Studio, la biblioteca cliente estará disponible como un paquete de NuGet descargable.

Ejemplos de código

Estos fragmentos de código muestran cómo realizar las siguientes tareas con la biblioteca cliente de Bing Autosuggest para .NET:

Autenticar el cliente

Nota

En este inicio rápido se da por supuesto que ha creado una variable de entorno para la clave de Bing Autosuggest, denominada AUTOSUGGEST_SUBSCRIPTION_KEY, y una para el punto de conexión denominada AUTOSUGGEST_ENDPOINT.

En un nuevo método asincrónico, cree una instancia de un cliente con la clave y el punto de conexión. Cree un objeto ApiKeyServiceClientCredentials con la clave y úselo con el punto de conexión para crear un objeto AutosuggestClient.

async static Task RunQuickstart()
{
    // Generate the credentials and create the client.
    var credentials = new Microsoft.Azure.CognitiveServices.Search.AutoSuggest.ApiKeyServiceClientCredentials(subscription_key);
    var client = new AutoSuggestClient(credentials, new System.Net.Http.DelegatingHandler[] { })
    {
        Endpoint = endpoint
    };
}

Envío de una solicitud de sugerencias automáticas

En el mismo método, utilice el método AutoSuggestMethodAsync para enviar una consulta a Bing. Itere sobre la respuesta de Suggestions e imprima la primera sugerencia.

var result = await client.AutoSuggestMethodAsync("xb");
var groups = result.SuggestionGroups;
if (groups.Count > 0) {
    var group = groups[0];
    Console.Write("First suggestion group: {0}\n", group.Name);
    var suggestions = group.SearchSuggestions;
    if (suggestions.Count > 0)
    {
        Console.WriteLine("First suggestion:");
        Console.WriteLine("Query: {0}", suggestions[0].Query);
        Console.WriteLine("Display text: {0}", suggestions[0].DisplayText);
    }
    else
    {
        Console.WriteLine("No suggestions found in this group.");
    }
}
else
{
    Console.WriteLine("No suggestions found.");
}

Ejecución de la aplicación

Ejecute la aplicación desde el directorio de la aplicación con el comando dotnet run.

dotnet run

Limpieza de recursos

Si quiere limpiar y eliminar una suscripción de servicios de Azure AI, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él:

Pasos siguientes

Consulte también

Introducción a la biblioteca cliente de Bing Autosuggest para Go. Siga estos pasos para instalar la biblioteca y probar los ejemplos para realizar tareas básicas.

Use la biblioteca cliente de Bing Autosuggest para Go para obtener sugerencias de búsqueda basadas en cadenas de consulta parciales.

Documentación de referencia | Ejemplo de código

Requisitos previos

Comience a usar la biblioteca de cliente de Bing Autosuggest mediante la creación de un recurso de Azure. Elija el tipo de recurso que le resulte más adecuado:

Creación de un recurso de Azure

Comience a usar Bing Autosuggest API mediante la creación de uno de los recursos de Azure que se indican a continuación.

Recurso de Bing Autosuggest

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.
  • Bing Autosuggest también se ofrece en los niveles de pago del recurso Bing Search, versión 7.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Creación de variables de entorno

Nota

Los puntos de conexión de los recursos creados después del 1 de julio de 2019 usan el formato de subdominio personalizado que se muestra a continuación. Para obtener más información y una lista completa de puntos finales regionales, consulte Nombres de subdominios personalizados para los servicios de Azure AI.

Con la clave y el punto de conexión del recurso que ha creado, cree dos variables de entorno para la autenticación:

  • AUTOSUGGEST_SUBSCRIPTION_KEY: la clave de recurso para autenticar las solicitudes.
  • AUTOSUGGEST_ENDPOINT: el punto de conexión del recurso para enviar solicitudes de API. Debería ser parecido a este: https://<your-custom-subdomain>.api.cognitive.microsoft.com.

Siga las instrucciones adecuadas para su sistema operativo.

setx BING_AUTOSUGGEST_SUBSCRIPTION_KEY <replace-with-your-autosuggest-api-key>
setx BING_AUTOSUGGEST_ENDPOINT <replace-with-your-autosuggest-api-endpoint>

Después de agregar la variable de entorno, reinicie la ventana de la consola.

Creación de un nuevo proyecto de Go

En una ventana de consola (cmd, PowerShell, Terminal, Bash), cree una nueva área de trabajo para el proyecto de Go y vaya hasta ella. El área de trabajo contendrá tres carpetas:

  • src: este directorio contiene código fuente y paquetes. Todos los paquetes instalados con el comando go get residirán aquí.
  • pkg: este directorio contiene objetos de paquete de Go compilados. Todos estos archivos tienen la extensión .a.
  • bin: este directorio contiene los archivos ejecutables binarios que se crean al ejecutar go install.

Sugerencia

Obtenga más información sobre la estructura de un área de trabajo de Go. En esta guía se incluye información para establecer $GOPATH y $GOROOT.

Vamos a crear un área de trabajo llamada my-app y los subdirectorios necesarios para src, pkg y bin:

$ mkdir -p my-app/{src, bin, pkg}  
$ cd my-app

Instalación de la biblioteca cliente para Go

Instalemos a continuación la biblioteca cliente para Go:

$ go get -u <library-location-or-url>

O, si usa dep, dentro de su repositorio ejecute:

$ dep ensure -add <library-location-or-url>

Creación de la aplicación de Go

A continuación, vamos a crear un archivo denominado src/sample-app.go:

$ cd src
$ touch sample-app.go

Abra sample-app.go, agregue el nombre del paquete e importe las siguientes bibliotecas:

package main

import (
    "context"
    "fmt"
    "github.com/Azure/azure-sdk-for-go/services/cognitiveservices/v1.0/autosuggest"
    "github.com/Azure/go-autorest/autorest"
    "log"
    "os"
)

Cree una función denominada main. A continuación, cree las variables de entorno para la clave y el punto de conexión de Bing Autosuggest:

func main() {
    // Add your Bing Autosuggest subscription key to your environment variables.
    if "" == os.Getenv("BING_AUTOSUGGEST_SUBSCRIPTION_KEY") {
        log.Fatal("Please set/export the environment variable BING_AUTOSUGGEST_SUBSCRIPTION_KEY.")
    }
    // Add your Bing Autosuggest endpoint to your environment variables.
    var subscription_key string = os.Getenv("BING_AUTOSUGGEST_ENDPOINT")
    if "" == os.Getenv("BING_AUTOSUGGEST_ENDPOINT") {
        log.Fatal("Please set/export the environment variable BING_AUTOSUGGEST_ENDPOINT.")
    }
    var endpoint string = os.Getenv("BING_AUTOSUGGEST_ENDPOINT")
}

Ejemplos de código

En estos ejemplos de código se muestra cómo realizar tareas básicas con la biblioteca cliente de Bing Autosuggest para Go:

Autenticar el cliente

Nota

En este inicio rápido se da por supuesto que ha creado una variable de entorno para la clave de Bing Autosuggest, denominada BING_AUTOSUGGEST_SUBSCRIPTION_KEY, y una para el punto de conexión denominada BING_AUTOSUGGEST_ENDPOINT.

En la función main(), cree una instancia de un cliente con la clave y el punto de conexión.

// Get the context, which is required by the SDK methods.
ctx := context.Background()

client := autosuggest.New()
// Set the subscription key on the client.
client.Authorizer = autorest.NewCognitiveServicesAuthorizer(subscription_key)
client.Endpoint = endpoint

Envío de una solicitud de API

En el mismo método, utilice el método AutoSuggestMethodAsync para enviar una consulta a Bing. Itere sobre la respuesta de Suggestions e imprima la primera sugerencia.

// This should return the query suggestion "xbox."
result, err := client.AutoSuggest (ctx, "xb", "", "", "", "", "", "", "", "", "", "", []autosuggest.ResponseFormat{"Json"})
if nil != err {
    log.Fatal(err)
}

groups := *result.SuggestionGroups
if len(groups) > 0 {
    group, _ := groups[0].AsSuggestionsSuggestionGroup()
    fmt.Printf ("First suggestion group: %s\n", (*group).Name)
    suggestions := *(*group).SearchSuggestions
    if len(suggestions) > 0 {
        fmt.Println("First suggestion:")
        fmt.Printf("Query: %s\n", *suggestions[0].Query)
        fmt.Printf("Display text: %s\n", *suggestions[0].DisplayText)
    } else {
        fmt.Println("No suggestions found in this group.")
    }
} else {
    fmt.Println("No suggestions found.")
}

Ejecución de la aplicación

Ejecute la aplicación Go con el comando go run [arguments] desde el directorio de la aplicación.

go run sample-app.go

Limpieza de recursos

Si quiere limpiar y eliminar una suscripción de servicios de Azure AI, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él.

Pasos siguientes

Consulte también