Inicio rápido: Creación de un conjunto de aptitudes cognitivas de Azure Cognitive Search en Azure PortalQuickstart: Create an Azure Cognitive Search cognitive skillset in the Azure portal

Un conjunto de aptitudes es una característica de inteligencia artificial que extrae la información y la estructura de grandes archivos de texto no diferenciados o de imágenes, y permite que se puedan indexar y realizar búsquedas con consultas de búsqueda de texto completo en Azure Cognitive Search.A skillset is an AI feature that extracts information and structure from large undifferentiated text or image files, and makes it indexable and searchable for full text search queries in Azure Cognitive Search.

En este inicio rápido, combinará servicios y datos en la nube de Azure para crear el conjunto de aptitudes.In this quickstart, you'll combine services and data in the Azure cloud to create the skillset. Una vez que todo esté en orden, ejecutará el Asistente para la importación de datos en el portal para extraer toda la información al mismo tiempo.Once everything is in place, you'll run the Import data wizard in the portal to pull it all together. El resultado final es un índice en el que se pueden realizar búsquedas y que se ha rellenado con los datos creados con el procesamiento de inteligencia artificial que puede consultar en el portal (Explorador de búsqueda).The end result is a searchable index populated with data created by AI processing that you can query in the portal (Search explorer).

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

Creación de servicios y carga de datosCreate services and load data

En este inicio rápido, se usa Azure Cognitive Search, Azure Blob Storage y Azure Cognitive Services para la inteligencia artificial.This quickstart uses Azure Cognitive Search, Azure Blob storage, and Azure Cognitive Services for the AI.

Dado que la carga de trabajo es tan pequeña, Cognitive Services se aprovecha en segundo plano para proporcionar el procesamiento gratuito de hasta 20 transacciones al día, cuando se invoca desde Azure Cognitive Search.Because the workload is so small, Cognitive Services is tapped behind the scenes to provide free processing for up to 20 transactions daily when invoked from Azure Cognitive Search. Siempre que use los datos de ejemplo que se proporcionan, puede omitir la creación o asociación de un recurso de Cognitive Services.As long as you use the sample data we provide, you can skip creating or attaching a Cognitive Services resource.

  1. Descargue los datos de ejemplo que están formados por un pequeño conjunto de archivos de diferentes tipos.Download sample data consisting of a small file set of different types. Descomprima los archivos.Unzip the files.

  2. Cree una cuenta de Azure Storage o busque una cuenta existente.Create an Azure storage account or find an existing account.

    Elija la misma región de Azure Cognitive Search.Choose the same region as Azure Cognitive Search. Elija el tipo de cuenta StorageV2 (de uso general V2) si desea probar la característica almacén de conocimiento más adelante, en otro tutorial.Choose the StorageV2 (general purpose V2) account type if you want to try out the knowledge store feature later, in another walkthrough. De lo contrario, elija cualquier tipo.Otherwise, choose any type.

  3. Abra las páginas de Blob service y cree un contenedor.Open the Blob services pages and create a container. Puede usar el nivel de acceso público predeterminado.You can use the default public access level.

  4. En el contenedor, haga clic en Cargar para cargar los archivos de ejemplo que descargó en el primer paso.In container, click Upload to upload the sample files you downloaded in the first step. Tenga en cuenta que dispone de una amplia gama de tipos de contenido, como imágenes y archivos de aplicación, en los que no se pueden realizar búsquedas de texto completo en sus formatos nativos.Notice that you have a wide range of content types, including images and application files that are not full text searchable in their native formats.

    Archivos de origen en Azure Blob Storage

  5. Cree un servicio de Azure Cognitive Search o busque un servicio existente.Create an Azure Cognitive Search service or find an existing service. Puede usar un servicio gratuito para este inicio rápido.You can use a free service for this quickstart.

Ahora ya está preparado para continuar con el Asistente para la importación de datos.You are now ready to move on the Import data wizard.

Ejecutar el Asistente para la importación de datosRun the Import data wizard

En la página de información general del servicio de búsqueda, haga clic en Importar datos en la barra de comandos para configurar el enriquecimiento cognitivo en cuatro pasos.In the search service Overview page, click Import data on the command bar to set up cognitive enrichment in four steps.

Comando de importación de datos

Paso 1: Creación de un origen de datosStep 1: Create a data source

  1. En Conectarse a los datos, elija Azure Blob Storage y seleccione la cuenta de Storage y el contenedor que creó.In Connect to your data, choose Azure Blob storage, select the Storage account and container you created. Asigne un nombre al origen de datos y use los valores predeterminados para el resto.Give the data source a name, and use default values for the rest.

    Configuración de blobs de Azure

  2. Continúe en la siguiente página.Continue to the next page.

Paso 2: Agregar conocimientos cognitivosStep 2: Add cognitive skills

A continuación, agregue aptitudes cognitivas para invocar el procesamiento de lenguaje natural.Next, add cognitive skills to invoke natural language processing. Los datos de ejemplo se componen de 12 archivos, por lo que la cobertura gratuita de 20 transacciones de Cognitive Services es suficiente para este inicio rápido.The sample data consists of 12 files, so the free allotment of 20 transaction on Cognitive Services is sufficient for this quickstart. Dado que no usamos OCR, solo aquellos archivos que no sean de imagen se contarán, descifrarán y emplearán en este proceso.Because we aren't using OCR, only the non-image files will be counted, cracked, and used in this process.

  1. En este inicio rápido, se usará el recurso Free de Cognitive Services.For this quickstart, we are using the Free Cognitive Services resource.

    Adjuntar Cognitive Services

  2. Expanda Agregar aptitudes y seleccione las aptitudes que realizan el procesamiento de lenguaje natural.Expand Add skills and select skills that perform natural language processing. En esta guía de inicio rápido, elija el reconocimiento de entidades para los contactos, las organizaciones y las ubicaciones.For this quickstart, choose entity recognition for people, organizations, and locations.

    Adjuntar Cognitive Services

  3. Acepte el campo de origen predeterminado: content.Accept the default source field: content. Esto puede parecer un objetivo pequeño, pero para los blobs de Azure, el campo content contiene la mayor parte del documento de blobs (por ejemplo, un documento de Word o unas diapositivas de PowerPoint), lo cual hace que resulte un buen candidato.This might seem like a small target, but for Azure blobs the content field contains most of the blob document (for example, a Word doc or PowerPoint deck), which makes it a good candidate.

  4. Continúe en la siguiente página.Continue to the next page.

Nota

Las aptitudes de procesamiento de lenguaje natural operan en el contenido de texto que se encuentra en el conjunto de datos de ejemplo.Natural language processing skills operate over text content in the sample data set. Puesto que no seleccionamos ninguna opción de OCR, los archivos JPEG y PNG que se encontraron en el conjunto de datos de ejemplo no se procesarán en este artículo de inicio rápido.Since we didn't select the OCR option, the JPEG and PNG files found in the sample data set won't be processed in this quickstart.

Paso 3: Configuración del índiceStep 3: Configure the index

En Azure Cognitive Search, un índice contiene el contenido en el que se pueden realizar búsquedas y el Asistente para la importación de datos puede crear normalmente el esquema mediante el muestreo del origen de datos.In Azure Cognitive Search, an index contains your searchable content and the Import data wizard can usually create the schema for you by sampling the data source. En este paso, repase el esquema generado y revise la configuración.In this step, review the generated schema and potentially revise any settings. A continuación se ofrece el esquema predeterminado que se creó para el conjunto de datos de blob de demostración.Below is the default schema created for the demo Blob data set.

En esta guía de inicio rápido, el asistente realiza un trabajo remarcable a la hora de configurar valores predeterminados razonables:For this quickstart, the wizard does a good job setting reasonable defaults:

  • El nombre predeterminado es azureblob-index basado en el tipo de origen de datos.Default name is azureblob-index based on the data source type.

  • Los campos predeterminados se basan en el campo de datos de origen original (content), además de los campos de salida (people, organizations y locations) creados por las aptitudes cognitivas.Default fields are based on the original source data field (content), plus the output fields (people, organizations, and locations) created by the cognitive skills. Los tipos de datos predeterminados se deducen del muestreo de datos y metadatos.Default data types are inferred from metadata and data sampling.

  • La clave de documento predeterminada es metadata_storage_path (se ha seleccionado porque el campo contiene valores únicos).Default document key is metadata_storage_path (selected because the field contains unique values).

  • Los atributos predeterminados son Retrievable (Recuperable) y Searchable (Permite búsquedas) para estos campos.Default attributes are Retrievable and Searchable for these fields. El atributo Searchable indica que se puede buscar un campo.Searchable indicates a field can be searched. El atributo Retrievable indica que un valor puede aparecer en los resultados.Retrievable means it can be returned in results. El asistente da por supuesto que desea que estos campos se puedan recuperar y permitan búsquedas porque los creó a través de un conjunto de aptitudes.The wizard assumes you want these fields to be retrievable and searchable because you created them via a skillset.

    Campos de índice

Observe el tachado y el signo de interrogación en el atributo Retrievable del campo content.Notice the strikethrough and question mark on the Retrievable attribute by the content field. En el caso de los documentos blob con mucho texto, el campo content contiene la mayor parte del archivo, posiblemente con miles de líneas.For text-heavy blob documents, the content field contains the bulk of the file, potentially running into thousands of lines. Si tiene que pasar el contenido del archivo al código de cliente, asegúrese de que Retrievable sigue seleccionado.If you need to pass file contents to client code, make sure that Retrievable stays selected. De lo contrario, considere la posibilidad de borrar este atributo en content si los elementos extraídos (people, organizations y locations) son suficientes para sus fines.Otherwise, consider clearing this attribute on content if the extracted elements (people, organizations, and locations) are sufficient for your purposes.

Marcar un campo como Retrievable no significa que el campo debe esté presente en los resultados de búsqueda.Marking a field as Retrievable does not mean that the field must be present in the search results. Puede controlar con precisión la composición de los resultados de búsqueda si usa el parámetro de consulta $select para especificar qué campos desea incluir.You can precisely control search results composition by using the $select query parameter to specify which fields to include. En el caso de campos con mucho texto como content, el parámetro $select es la solución para proporcionar resultados de búsqueda fáciles de administrar a los usuarios de la aplicación, al tiempo que se asegura de que el código de cliente tenga acceso a toda la información que necesita a través del atributo Retrievable.For text-heavy fields like content, the $select parameter is your solution for providing manageable search results to the human users of your application, while ensuring client code has access to all the information it needs via the Retrievable attribute.

Continúe en la siguiente página.Continue to the next page.

Paso 4: Configurar el indexadorStep 4: Configure the indexer

El indexador es un recurso de alto nivel que controla el proceso de indexación.The indexer is a high-level resource that drives the indexing process. Asimismo, especifica el nombre del origen de datos, un índice de destino y la frecuencia de ejecución.It specifies the data source name, a target index, and frequency of execution. El Asistente para la importación de datos crea varios objetos y entre ellos hay siempre un indexador que se puede ejecutar repetidamente.The Import data wizard creates several objects, and of them is always an indexer that you can run repeatedly.

  1. En la página Indizador, puede aceptar el nombre predeterminado y hacer clic en la opción de programación Una vez para ejecutarlo inmediatamente.In the Indexer page, you can accept the default name and click the Once schedule option to run it immediately.

    Definición del indexador

  2. Haga clic en Enviar para crear y ejecutar simultáneamente el indexador.Click Submit to create and simultaneously run the indexer.

Supervisión de estadoMonitor status

La indexación cognitiva de aptitudes tarda más en completarse que la indexación típica basada en texto.Cognitive skills indexing takes longer to complete than typical text-based indexing. Para supervisar el progreso, vaya a la página de información general y haga clic en Indizadores en medio de la página.To monitor progress, go to the Overview page and click Indexers in the middle of page.

La advertencia se produce porque hay archivos de imagen JPG y PNG en el origen de datos y se ha omitido la aptitud de OCR de esta canalización.The warning occurs because JPG and PNG image files are in the data source, and we omitted the OCR skill from this pipeline. También encontrará notificaciones de truncamiento.You'll also find truncation notifications. La extracción está limitada a 32 000 caracteres en el nivel Gratis.Extraction is limited to 32,000 characters on the Free tier.

Notificación de Azure Cognitive Search

Los procesos de enriquecimiento e indexación pueden tardar cierto tiempo y, por ello, se recomienda usar conjuntos de datos más pequeños para poder realizar una exploración temprana.Indexing and enrichment can take time, which is why smaller data sets are recommended for early exploration.

En Azure Portal, puede también supervisar el registro de actividad de notificaciones para obtener un vínculo de estado Notificación de Azure Cognitive Search en el que se pueda hacer clic.In the Azure portal, you can also monitor the Notifications activity log for a clickable Azure Cognitive Search notification status link. La ejecución puede tardar varios minutos en completarse.Execution may take several minutes to complete.

Consulta en el Explorador de búsquedaQuery in Search explorer

Después de crear un índice, puede enviar consultas para devolver documentos desde el índice.After an index is created, you can submit queries to return documents from the index. En el portal, utilice el Explorador de búsqueda para ejecutar consultas y ver los resultados.In the portal, use Search explorer to run queries and view results.

  1. En la página del panel del servicio de búsqueda, haga clic en el Explorador de búsqueda en la barra de comandos.On the search service dashboard page, click Search explorer on the command bar.

  2. Seleccione Cambiar índice en la parte superior para seleccionar el índice que haya creado.Select Change Index at the top to select the index you created.

  3. Escriba una cadena de búsqueda para consultar el índice como, por ejemplo, search=Microsoft&searchFields=Organizations.Enter a search string to query the index, such as search=Microsoft&searchFields=Organizations.

Los resultados se devuelven en formato JSON, que suele ser detallado y difícil de leer, especialmente si se trata de documentos de gran tamaño que se crean en los blobs de Azure.Results are returned in JSON, which can be verbose and hard to read, especially in large documents originating from Azure blobs. Si no puede examinar los resultados con facilidad, utilice CTRL-F para buscar dentro de los documentos.If you can't scan results easily, use CTRL-F to search within documents. Para esta consulta, puede buscar términos específicos en JSON.For this query, you could search within the JSON for specific terms.

CTRL-F también puede ayudarle a determinar cuántos documentos hay en un determinado conjunto de resultados.CTRL-F can also help you determine how many documents are in a given result set. En cuanto a los blobs de Azure, el portal elige "metadata_storage_path" como clave, ya que cada valor es único en el documento.For Azure blobs, the portal chooses "metadata_storage_path" as the key because each value is unique to the document. Use CTRL-F y busque "metadata_storage_path" para obtener un recuento de los documentos.Using CTRL-F, search for "metadata_storage_path" to get a count of documents.

Ejemplo del Explorador de búsquedas

Puntos claveTakeaways

Ahora ha creado su primer conjunto de aptitudes y ha aprendido conceptos importantes útiles para crear prototipos de una solución de búsqueda enriquecida mediante sus propios datos.You've now created your first skillset and learned important concepts useful for prototyping an enriched search solution using your own data.

Algunos conceptos clave que esperamos que haya tenido en cuenta incluyen la dependencia de los orígenes de datos de Azure.Some key concepts that we hope you picked up include the dependency on Azure data sources. Un conjunto de aptitudes está enlazado a un indexador y los indexadores son de Azure y específicos del origen.A skillset is bound to an indexer, and indexers are Azure and source-specific. Aunque esta guía de inicio rápido usa Azure Blob Storage, también se pueden usar otros orígenes de datos de Azure.Although this quickstart uses Azure Blob storage, other Azure data sources are possible. Para más información, consulte Indexadores de Azure Cognitive Search.For more information, see Indexers in Azure Cognitive Search.

Otro concepto importante es que las aptitudes operan sobre los campos de entrada.Another important concept is that skills operate over input fields. En el portal, debe elegir un solo campo de origen para todas las aptitudes.In the portal, you have to choose a single source field for all the skills. En el código, las entradas pueden ser otros campos o la salida de una aptitud ascendente.In code, inputs can be other fields, or the output of an upstream skill.

La salida se dirige a un índice de búsqueda y hay una asignación entre los pares nombre y valor que se crearon durante la indexación y los campos individuales del índice.Output is directed to a search index, and there is a mapping between name-value pairs created during indexing and individual fields in your index. De forma interna, el portal establece las anotaciones y define un conjunto de aptitudes que establece el orden de las operaciones y el flujo general.Internally, the portal sets up annotations and defines a skillset, establishing the order of operations and general flow. Estos pasos están ocultos en el portal, pero recuerde que estos conceptos serán importantes cuando comience a escribir el código.These steps are hidden in the portal, but when you start writing code, these concepts become important.

Por último, aprendió que se puede comprobar el contenido consultando el índice.Finally, you learned that can verify content by querying the index. Al final, lo que proporciona Azure Cognitive Search es un índice de búsqueda que puede consultar mediante la sintaxis de consulta simple o totalmente extendida.In the end, what Azure Cognitive Search provides is a searchable index, which you can query using either the simple or fully extended query syntax. Un índice que contenga campos enriquecidos es como cualquier otro.An index containing enriched fields is like any other. Si desea incorporar analizadores personalizados o estándar, perfiles de puntuación, sinónimos, filtros con facetas, búsquedas geográficas o cualquier otra característica de Azure Cognitive Search, puede hacerlo cuando quiera.If you want to incorporate standard or custom analyzers, scoring profiles, synonyms, faceted filters, geo-search, or any other Azure Cognitive Search feature, you can certainly do so.

Limpieza de recursosClean up resources

Cuando trabaje con su propia suscripción, es una buena idea al final de un proyecto identificar si todavía se necesitan los recursos que ha creado.When you're working in your own subscription, it's a good idea at the end of a project to identify whether you still need the resources you created. Los recursos que se dejan en ejecución pueden costarle mucho dinero.Resources left running can cost you money. Puede eliminar los recursos de forma individual o eliminar el grupo de recursos para eliminar todo el conjunto de recursos.You can delete resources individually or delete the resource group to delete the entire set of resources.

Puede encontrar y administrar recursos en el portal, mediante el vínculo Todos los recursos o Grupos de recursos en el panel de navegación izquierdo.You can find and manage resources in the portal, using the All resources or Resource groups link in the left-navigation pane.

Si está usando un servicio gratuito, recuerde que está limitado a tres índices, indexadores y orígenes de datos.If you are using a free service, remember that you are limited to three indexes, indexers, and data sources. Puede eliminar elementos individuales en el portal para mantenerse por debajo del límite.You can delete individual items in the portal to stay under the limit.

Sugerencia

Si desea repetir este ejercicio o probar otro tutorial de enriquecimiento con inteligencia artificial, elimine el indexador del portal.If you want to repeat this exercise or try a different AI enrichment walkthrough, delete the indexer in the portal. La eliminación del indexador restablece el contador de transacciones diarias gratis a cero para el procesamiento de Cognitive Services.Deleting the indexer resets the free daily transaction counter back to zero for Cognitive Services processing.

Pasos siguientesNext steps

Para crear estos conjuntos de aptitudes, puede usar el portal, el SDK de .NET o la API REST.You can create skillsets using the portal, .NET SDK, or REST API. Para ampliar sus conocimientos, pruebe la API REST con Postman y más datos de ejemplo.To further your knowledge, try the REST API using Postman and more sample data.