Inicio rápido: Creación de un recurso de varios servicios para los servicios de Azure AI

Aprenda a crear y administrar un recurso de varios servicios para los servicios de Azure AI. Un recurso de varios servicios le permite acceder a varios servicios de Azure AI con una sola clave y un punto de conexión. También consolida la facturación de los servicios que usa.

Puede acceder a los servicios de Azure AI mediante dos recursos distintos: Un recurso de varios servicios o uno de un único servicio.

  • Recurso de varios servicios:
    • Acceda a varias instancias de servicios de Azure AI con una sola clave y un punto de conexión.
    • Consolida la facturación de los servicios que usa.
  • Recurso de servicio único:
    • Acceda a una único servicio de Azure AI con una clave y un punto de conexión únicos para cada servicio creado.
    • La mayoría de los servicios de Azure AI ofrecen un nivel gratuito para probarlo.

Los servicios de Azure AI son recursos de Azure que ha creado bajo su suscripción de Azure. Después de crear un recurso, puede usar las claves y el punto de conexión generados para autenticar las aplicaciones.

Servicios admitidos con un recurso de varios servicios

El recurso de varios servicios permite el acceso a los siguientes servicios de Azure AI con una sola clave y un punto de conexión. Use estos vínculos para buscar artículos de inicio rápido, ejemplos y mucho más para empezar a usar el recurso.

Servicio Descripción
Icono de Content ModeratorContent Moderator (retirado) Detectar contenidos potencialmente ofensivos o no deseados.
Icono de Custom VisionCustom Vision Personalizar el reconocimiento de imágenes para adaptarlo a su empresa.
Icono de Documento de inteligenciaDocumento de inteligencia Convertir los documentos en soluciones inteligentes controladas por datos.
Icono de FaceFace Detección e identificación de personas y emociones en imágenes.
Icono de LenguajeLenguaje Creación de aplicaciones con funcionalidades de reconocimiento del lenguaje natural líderes del sector.
icono de VozVoz Conversión de voz en texto, texto a voz, traducción y reconocimiento del hablante.
Icono de TraductorTraductor Use la tecnología de traducción con tecnología de inteligencia artificial para traducir más de 100 idiomas y dialectos en peligro de uso.
Icono de VisiónVisión Análisis de contenido en imágenes y vídeos.

Requisitos previos

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.

Creación de un nuevo recurso de varios servicios

El recurso de varios servicios se muestra en Servicios de Azure AI>Cuenta de varios servicios de Azure AI en el portal. Para crear un recurso de varios servicios, siga estas instrucciones:

  1. Seleccione este vínculo para crear un recurso de varios servicios: https://portal.azure.com/#create/Microsoft.CognitiveServicesAllInOne

  2. En la página Crear, proporcione la siguiente información:

    Detalles del proyecto Descripción
    Suscripción Seleccione una de las suscripciones de Azure disponibles.
    Grupos de recursos El grupo de recursos de Azure que contendrá su recurso de servicios de Azure AI. Puede crear un nuevo grupo o agregarlo a uno ya existente.
    Región Ubicación de la instancia de servicio de Azure AI. Las diferentes ubicaciones pueden crear latencias, pero no tienen ningún impacto en la disponibilidad del tiempo de ejecución del recurso.
    Nombre Nombre descriptivo para el recurso de servicios de Azure AI. Por ejemplo, MyCognitiveServicesResource.
    Plan de tarifa Costo de la cuenta de servicios de Azure AI, que depende del uso y de las opciones que elija. Para obtener más información, consulte los detalles de los precios.

    Pantalla de creación de un recurso de varios servicios

  3. Configure otras opciones para el recurso según sea necesario, lea y acepte las condiciones (según corresponda) y, a continuación, seleccione Revisar y crear.

Sugerencia

Si la suscripción no permite crear un recurso de los servicios de Azure AI, puede que tenga que habilitar el privilegio de ese proveedor de recursos de Azure con Azure Portal, un comando de PowerShell o un comando de la CLI de Azure. Si no es el propietario de la suscripción, pida al propietario de la suscripción o a alguien con un rol de administrador que complete el registro en su nombre o solicite que se le concedan privilegios de registro y acción a su cuenta.

Obtención de las claves del recurso

  1. Una vez que el recurso se haya implementado correctamente, seleccione Pasos siguientes>Ir al recurso.

    Pantalla Obtener claves de recursos

  2. En el panel de inicio rápido que se abre, puede acceder al punto de conexión y administrar las claves.

Configuración de una variable de entorno para la autenticación

La aplicación debe autenticarse para acceder a los recursos de servicios de Azure AI. Para establecer la variable de entorno para la clave de recurso, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno COGNITIVE_SERVICE_KEY, reemplace your-key por una de las claves del recurso.

Para producción, use una forma segura de almacenar y acceder a sus credenciales, como un almacén de secretos protegido con contraseña. Para la prueba, la escritura en una variable de entorno es una práctica estándar, pero tenga en cuenta que las variables de entorno se almacenan en texto no cifrado en el equipo local.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de Seguridad de servicios de Azure AI para ver más opciones de autenticación, como Azure Key Vault.

PowerShell incluye una solución extensible, Administración de secretos, para almacenar cadenas seguras en plataformas como Secret Store o Azure KeyVault.

Para configurar un almacén de secretos para hospedar cadenas seguras, consulte el artículo Introducción al uso del almacén de secretos. A continuación, use los ejemplos siguientes para almacenar las claves de API.

Set-Secret -Name COGNITIVE_SERVICE_KEY -value your-key

En entornos de prueba, puede usar la sintaxis $Env: de PowerShell para establecer una variable de entorno solo para la sesión actual o el comando setx para conservar la variable entre sesiones. Recuerde que estos valores se almacenan en texto no cifrado en las claves del Registro de Windows.

$Env:COGNITIVE_SERVICE_KEY = your-key
setx COGNITIVE_SERVICE_KEY your-key

Después de agregar la variable de entorno mediante setx, puede que tenga que reiniciar todas las consolas o demás programas en ejecución que necesiten leer la variable de entorno. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca COGNITIVE_SERVICE_REGION en la región del recurso. Por ejemplo, westus.

Limpieza de recursos

Si desea limpiar y eliminar una suscripción de servicios de Azure AI, podría eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos incluidos en el grupo.

  1. En Azure Portal, expanda el menú de la izquierda para abrir el menú de servicios y elija Grupos de recursos para ver una lista con sus grupos de recursos.
  2. Busque el grupo de recursos que contiene el recurso que quiere eliminar.
  3. Si quiere eliminar todo el grupo de recursos, seleccione el nombre del grupo de recursos. En la página siguiente, seleccione Eliminar grupo de recursos y confirme.
  4. Si quiere eliminar solo el recurso de servicios de Azure AI, seleccione el grupo de recursos para ver todos los recursos que contiene. En la página siguiente, seleccione el recurso que quiere eliminar, seleccione el menú de puntos suspensivos de esa fila y seleccione Eliminar.

Siga esta guía de inicio rápido para crear un recurso de servicios de Azure AI con los comandos de la Interfaz de la línea de comandos de Azure (CLI). Después de crear el recurso, use las claves y el punto de conexión generados para autenticar las aplicaciones.

Servicios de Azure AI es un servicio de inteligencia artificial (IA) basado en la nube que ayuda a los desarrolladores a crear inteligencia cognitiva en las aplicaciones sin tener aptitudes o conocimientos directos de IA o ciencia de datos. Están disponibles a través de las API de REST y los SDK de la biblioteca cliente en lenguajes de desarrollo populares. Servicios de Azure AI permite a los desarrolladores agregar fácilmente características cognitivas en sus aplicaciones con soluciones cognitivas que pueden ver, oír, hablar y analizar.

Prerrequisitos

  • Una suscripción de Azure válida: cree una de forma gratuita.
  • La CLI de Azure
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Instale la CLI de Azure e inicie sesión.

Instale la CLI de Azure. Para iniciar sesión en la instalación local de la CLI, ejecute el comando az login:

az login

También puede usar el botón verde Probar para ejecutar estos comandos en su navegador.

Creación de un nuevo grupo de recursos de servicios de Azure AI

Antes de crear un recurso de servicios de Azure AI, debe tener un grupo de recursos de Azure que contenga el recurso. Al crear un nuevo recurso, puede elegir entre crear un grupo de recursos o usar uno existente. En este artículo se muestra cómo crear un nuevo grupo de recursos.

Elija la ubicación de su grupo de recursos

Para crear un recurso, necesitará una de las ubicaciones de Azure disponibles para su suscripción. Puede recuperar una lista de ubicaciones disponibles con el comando az account list-locations. Se puede acceder a la mayoría de los servicios de Azure AI desde varias ubicaciones. Elija el más cercano a usted o consulte las ubicaciones que están disponibles para el servicio.

Importante

  • No olvide su ubicación de Azure, ya que la necesitará cuando llame a los recursos de servicios de Azure AI.
  • La disponibilidad de algunas instancias de servicios de Azure AI puede variar según la región. Para obtener más información, consulte Productos de Azure disponibles por región.
az account list-locations --query "[].{Region:name}" --out table

Una vez que tenga su ubicación de Azure, cree un grupo de recursos en la CLI de Azure mediante el comando az group create. En el ejemplo que tiene a continuación, reemplace la ubicación de Azure westus2 con una de las ubicaciones de Azure disponibles para su suscripción.

az group create --name ai-services-resource-group --location westus2

Creación de un grupo de recursos de servicios de Azure AI

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el tipo de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso.

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Puede encontrar una lista de "tipos" de servicios de Azure AI disponibles con el comando az cognitiveservices list-kinds:

az cognitiveservices account list-kinds

Agregar un nuevo recurso al grupo de recursos

Para crear y suscribirse a un nuevo recurso de servicios de Azure AI, use el comando az cognitiveservices account create. Este comando agrega un nuevo recurso facturable al grupo de recursos creado anteriormente. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, el plan de tarifa (o SKU) y la ubicación de Azure:

Puede crear un recurso de varios servicios estándar S0 denominado multi-service-resource con el comando siguiente.

az cognitiveservices account create --name multi-service-resource --resource-group ai-services-resource-group  --kind CognitiveServices --sku F0 --location westus2 --yes

Sugerencia

Si la suscripción no permite crear un recurso de los servicios de Azure AI, puede que tenga que habilitar el privilegio de ese proveedor de recursos de Azure con Azure Portal, un comando de PowerShell o un comando de la CLI de Azure. Si no es el propietario de la suscripción, pida al propietario de la suscripción o a alguien con un rol de administrador que complete el registro en su nombre o solicite que se le concedan privilegios de registro y acción a su cuenta.

Obtención de las claves del recurso

Para iniciar sesión en su instalación local de la interfaz de línea de comandos (CLI), use el comando az login.

az login

Use el comando az cognitiveservices account keys list para obtener las claves de su recurso.

az cognitiveservices account keys list  --name multi-service-resource --resource-group ai-services-resource-group

Configuración de una variable de entorno para la autenticación

La aplicación debe autenticarse para acceder a los recursos de servicios de Azure AI. Para establecer la variable de entorno para la clave de recurso, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno COGNITIVE_SERVICE_KEY, reemplace your-key por una de las claves del recurso.

Para producción, use una forma segura de almacenar y acceder a sus credenciales, como un almacén de secretos protegido con contraseña. Para la prueba, la escritura en una variable de entorno es una práctica estándar, pero tenga en cuenta que las variables de entorno se almacenan en texto no cifrado en el equipo local.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de Seguridad de servicios de Azure AI para ver más opciones de autenticación, como Azure Key Vault.

PowerShell incluye una solución extensible, Administración de secretos, para almacenar cadenas seguras en plataformas como Secret Store o Azure KeyVault.

Para configurar un almacén de secretos para hospedar cadenas seguras, consulte el artículo Introducción al uso del almacén de secretos. A continuación, use los ejemplos siguientes para almacenar las claves de API.

Set-Secret -Name COGNITIVE_SERVICE_KEY -value your-key

En entornos de prueba, puede usar la sintaxis $Env: de PowerShell para establecer una variable de entorno solo para la sesión actual o el comando setx para conservar la variable entre sesiones. Recuerde que estos valores se almacenan en texto no cifrado en las claves del Registro de Windows.

$Env:COGNITIVE_SERVICE_KEY = your-key
setx COGNITIVE_SERVICE_KEY your-key

Después de agregar la variable de entorno mediante setx, puede que tenga que reiniciar todas las consolas o demás programas en ejecución que necesiten leer la variable de entorno. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca COGNITIVE_SERVICE_REGION en la región del recurso. Por ejemplo, westus.

Planes de tarifas y facturación

Los planes de tarifas (y la cantidad que se factura) se basan en el número de transacciones que se envían con la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • El número máximo de transacciones permitidas por segundo (TPS).
  • las características de servicio habilitadas en el plan de tarifa.
  • El costo de una cantidad predefinida de transacciones. Por encima de esta cantidad se producirá un cargo adicional, tal como se especifica en los detalles de precios del servicio.

Obtener el uso de la cuota actual del recurso

Use el comando az cognitiveservices account list-usage para obtener el uso del recurso.

az cognitiveservices account list-usage --name multi-service-resource --resource-group ai-services-resource-group --subscription subscription-name

Limpieza de recursos

Si quiere limpiar y eliminar un recurso de servicios de Azure AI, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos incluidos en el grupo.

Para eliminar el grupo de recursos y sus recursos asociados, use el comando az group delete.

az group delete --name ai-services-resource-group

Siga esta guía de inicio rápido para crear un recurso de servicios de Azure AI con los comandos de Azure PowerShell. Después de crear el recurso, use las claves y el punto de conexión generados para autenticar las aplicaciones.

Servicios de Azure AI es un servicio de inteligencia artificial (IA) basado en la nube que ayuda a los desarrolladores a crear inteligencia cognitiva en las aplicaciones sin tener aptitudes o conocimientos directos de IA o ciencia de datos. Están disponibles a través de las API de REST y los SDK de la biblioteca cliente en lenguajes de desarrollo populares. Servicios de Azure AI permite a los desarrolladores agregar fácilmente características cognitivas en sus aplicaciones con soluciones cognitivas que pueden ver, oír, hablar y analizar.

Prerrequisitos

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • Azure PowerShell
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Instale Azure PowerShell e inicie sesión

Instale Azure PowerShell. Para iniciar sesión, ejecute el comando Connect-AzAccount:

Connect-AzAccount

También puede usar el botón verde Probar para ejecutar estos comandos en su navegador.

Creación de un nuevo grupo de recursos de servicios de Azure AI

Antes de crear un recurso de servicios de Azure AI, debe tener un grupo de recursos de Azure que contenga el recurso. Al crear un nuevo recurso, puede elegir entre crear un grupo de recursos o usar uno existente. En este artículo se muestra cómo crear un nuevo grupo de recursos.

Elija la ubicación de su grupo de recursos

Para crear un recurso, necesitará una de las ubicaciones de Azure disponibles para su suscripción. Puede recuperar una lista de ubicaciones disponibles con el comando Get-AzLocation. Se puede acceder a la mayoría de los servicios de Azure AI desde varias ubicaciones. Elija el más cercano a usted o consulte las ubicaciones que están disponibles para el servicio.

Importante

  • No olvide su ubicación de Azure, ya que la necesitará cuando llame a los recursos de servicios de Azure AI.
  • La disponibilidad de algunas instancias de servicios de Azure AI puede variar según la región. Para obtener más información, consulte Productos de Azure disponibles por región.
Get-AzLocation | Select-Object -Property Location, DisplayName

Una vez que tenga la ubicación de Azure, cree un nuevo grupo de recursos en Azure PowerShell mediante el comando New-AzResourceGroup. En el ejemplo que tiene a continuación, reemplace la ubicación de Azure westus2 con una de las ubicaciones de Azure disponibles para su suscripción.

New-AzResourceGroup -Name ai-services-resource-group -Location westus2

Creación de un grupo de recursos de servicios de Azure AI

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el tipo de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso.

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Puede encontrar una lista de "tipos" de servicios de Azure AI disponibles con el comandoGet-AzCognitiveServicesAccountType:

Get-AzCognitiveServicesAccountType

Agregar un nuevo recurso al grupo de recursos

Para crear y suscribirse a un nuevo recurso de servicios de Azure AI, use el comando New-AzCognitiveServicesAccount. Este comando agrega un nuevo recurso facturable al grupo de recursos creado anteriormente. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, el plan de tarifa (o SKU) y la ubicación de Azure:

Puede crear un recurso de varios servicios estándar S0 denominado multi-service-resource con el comando siguiente.

New-AzCognitiveServicesAccount -ResourceGroupName ai-services-resource-group -Name multi-service-resource -Type CognitiveServices -SkuName F0 -Location westus2

Sugerencia

Si la suscripción no permite crear un recurso de los servicios de Azure AI, puede que tenga que habilitar el privilegio de ese proveedor de recursos de Azure mediante Azure Portal, un comando de Azure PowerShell o bien, un comando de la CLI de Azure. Si no es el propietario de la suscripción, pida al propietario de la suscripción o a alguien con un rol de administrador que complete el registro en su nombre o solicite que se le concedan privilegios de registro y acción a su cuenta.

Obtención de las claves del recurso

Use el comando Get-AzCognitiveServicesAccountKey para obtener las claves del recurso.

Get-AzCognitiveServicesAccountKey -Name multi-service-resource -ResourceGroupName ai-services-resource-group

Configuración de una variable de entorno para la autenticación

La aplicación debe autenticarse para acceder a los recursos de servicios de Azure AI. Para establecer la variable de entorno para la clave de recurso, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno COGNITIVE_SERVICE_KEY, reemplace your-key por una de las claves del recurso.

Para producción, use una forma segura de almacenar y acceder a sus credenciales, como un almacén de secretos protegido con contraseña. Para la prueba, la escritura en una variable de entorno es una práctica estándar, pero tenga en cuenta que las variables de entorno se almacenan en texto no cifrado en el equipo local.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de Seguridad de servicios de Azure AI para ver más opciones de autenticación, como Azure Key Vault.

PowerShell incluye una solución extensible, Administración de secretos, para almacenar cadenas seguras en plataformas como Secret Store o Azure KeyVault.

Para configurar un almacén de secretos para hospedar cadenas seguras, consulte el artículo Introducción al uso del almacén de secretos. A continuación, use los ejemplos siguientes para almacenar las claves de API.

Set-Secret -Name COGNITIVE_SERVICE_KEY -value your-key

En entornos de prueba, puede usar la sintaxis $Env: de PowerShell para establecer una variable de entorno solo para la sesión actual o el comando setx para conservar la variable entre sesiones. Recuerde que estos valores se almacenan en texto no cifrado en las claves del Registro de Windows.

$Env:COGNITIVE_SERVICE_KEY = your-key
setx COGNITIVE_SERVICE_KEY your-key

Después de agregar la variable de entorno mediante setx, puede que tenga que reiniciar todas las consolas o demás programas en ejecución que necesiten leer la variable de entorno. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca COGNITIVE_SERVICE_REGION en la región del recurso. Por ejemplo, westus.

Planes de tarifas y facturación

Los planes de tarifas (y la cantidad que se factura) se basan en el número de transacciones que se envían con la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • El número máximo de transacciones permitidas por segundo (TPS).
  • las características de servicio habilitadas en el plan de tarifa.
  • El costo de una cantidad predefinida de transacciones. Por encima de esta cantidad se producirá un cargo adicional, tal como se especifica en los detalles de precios del servicio.

Obtener el uso de la cuota actual del recurso

Use el comando Get-AzCognitiveServicesAccountKey para obtener el uso del recurso.

Get-AzCognitiveServicesAccountUsage -ResourceGroupName ai-services-resource-group -Name multi-service-resource

Limpieza de recursos

Si quiere limpiar y eliminar un recurso de servicios de Azure AI, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos incluidos en el grupo.

Para eliminar el grupo de recursos y sus recursos asociados, use el comando Remove-AzResourceGroup.

Remove-AzResourceGroup -Name ai-services-resource-group

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

Requisitos previos de C#

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • La versión actual de .NET Core.
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Creación de una entidad de servicio de Azure

Para que la aplicación interactúe con su cuenta de Azure, necesita una entidad de servicio de Azure para administrar los permisos. Siga las instrucciones de Creación de una entidad de servicio de Azure.

Al crear una entidad de servicio, verá que tiene un valor secreto, un identificador y un identificador de aplicación. Guarde el identificador de aplicación y el secreto en una ubicación temporal para los pasos posteriores.

Crear un grupo de recursos

Antes de crear un recurso de servicios de Azure AI, la cuenta debe tener un grupo de recursos de Azure que contenga el recurso. Si aún no tiene un grupo de recursos, créelo en Azure Portal antes de continuar.

Creación de una aplicación de C#

Cree una aplicación de .NET Core. 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 azure-management-quickstart. Este comando crea un sencillo proyecto de C#, "Hola mundo", con un solo archivo de origen: program.cs.

dotnet new console -n azure-management-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)
...

Instalación de la biblioteca cliente

En el directorio de aplicaciones, instale la biblioteca cliente de Administración de Azure para .NET con el siguiente comando:

dotnet add package Azure.ResourceManager.CognitiveServices
dotnet add package Microsoft.Azure.Management.Fluent
dotnet add package Microsoft.Azure.Management.ResourceManager.Fluent

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

Importación de bibliotecas

Abra program.cs y agregue las siguientes instruccionesusing a la parte superior del archivo:

using System;
using Microsoft.Azure.Management.Fluent;
using Microsoft.Azure.Management.ResourceManager.Fluent;
using Microsoft.Azure.Management.ResourceManager.Fluent.Authentication;
using Microsoft.Azure.Management.CognitiveServices;
using Microsoft.Azure.Management.CognitiveServices.Models;

Autenticar el cliente

Agregue los campos siguientes a la raíz de program.cs y rellene sus valores con la entidad de servicio que creó y la información de su cuenta de Azure.

const string  service_principal_application_id = "PASTE_YOUR_SERVICE_PRINCIPAL_APPLICATION_ID_HERE";
const string  service_principal_secret = "PASTE_YOUR_SERVICE_PRINCIPAL_SECRET_HERE";

/* The ID of your Azure subscription. You can find this in the Azure Dashboard under Home > Subscriptions. */
const string  subscription_id = "PASTE_YOUR_SUBSCRIPTION_ID_HERE";

/* The Active Directory tenant ID. You can find this in the Azure Dashboard under Home > Azure Active Directory. */
const string  tenant_id = "PASTE_YOUR_TENANT_ID_HERE";

/* The name of the Azure resource group in which you want to create the resource.
You can find resource groups in the Azure Dashboard under Home > Resource groups. */
const string  resource_group_name = "PASTE_YOUR_RESOURCE_GROUP_NAME_HERE";

/* The name of the custom subdomain to use when you create the resource. This is optional.
For example, if you create a Bing Search v7 resource with the custom subdomain name 'my-search-resource',
your resource would have the endpoint https://my-search-resource.cognitiveservices.azure.com/.
Note not all Cognitive Services allow custom subdomain names. */
const string subdomain_name = "PASTE_YOUR_SUBDOMAIN_NAME_HERE";

Luego, en el método Main, use estos valores para construir un objeto CognitiveServicesManagementClient. Este objeto es necesario para todas las operaciones de Administración de Azure.

var service_principal_credentials = new ServicePrincipalLoginInformation ();
service_principal_credentials.ClientId = service_principal_application_id;
service_principal_credentials.ClientSecret = service_principal_secret;

var credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(service_principal_application_id, service_principal_secret, tenant_id, AzureEnvironment.AzureGlobalCloud);
var client = new CognitiveServicesManagementClient(credentials);
client.SubscriptionId = subscription_id;

Métodos de administración de llamada

Agregue el código siguiente al método Main para enumerar los recursos disponibles, crear un recurso de ejemplo, enumerar los recursos que posee y, después, eliminar el recurso de ejemplo. Estos métodos los definirá en los siguientes pasos.

    // Uncomment to list all available resource kinds, SKUs, and locations for your Azure account:
    //list_available_kinds_skus_locations(client);

    // Create a resource with kind TextTranslation, F0 (free tier), location global.
    create_resource(client, "test_resource", "TextTranslation", "F0", "Global");

    // List all resources for your Azure account and resource group:
    list_resources(client);

    // Delete the resource.
    delete_resource(client, "test_resource");

    Console.WriteLine("Press any key to exit.");
    Console.ReadKey();

Creación de un grupo de recursos de servicios de Azure AI (C#)

Para crear un recurso de servicios de Azure AI y suscribirse a él, use el método Create. Este método agrega un nuevo recurso facturable al grupo de recursos que se pasa. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, junto con su plan de tarifa (o SKU) y una ubicación de Azure. El siguiente método usa todos estos valores como argumentos y crea un recurso.

static void create_resource(CognitiveServicesManagementClient client, string resource_name, string kind, string account_tier, string location)
{
    Console.WriteLine("Creating resource: " + resource_name + "...");
    /* NOTE If you do not want to use a custom subdomain name, remove the customSubDomainName
    property from CognitiveServicesAccountProperties. */
    CognitiveServicesAccount parameters = 
        new CognitiveServicesAccount(null, null, kind, location, resource_name, new CognitiveServicesAccountProperties(customSubDomainName : subdomain_name), new Sku(account_tier));
    var result = client.Accounts.Create(resource_group_name, resource_name, parameters);
    Console.WriteLine("Resource created.");
    Console.WriteLine("ID: " + result.Id);
    Console.WriteLine("Kind: " + result.Kind);
    Console.WriteLine();
}

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el "tipo" de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso. Puede encontrar una lista de los "tipos" de servicios de Azure AI disponibles llamando al siguiente método en el script:

static void list_available_kinds_skus_locations(CognitiveServicesManagementClient client)
{

    Console.WriteLine("Available SKUs:");
    var result = client.ResourceSkus.List();
    Console.WriteLine("Kind\tSKU Name\tSKU Tier\tLocations");
    foreach (var x in result) {
        var locations = "";
        foreach (var region in x.Locations)
        {
            locations += region;
        }
        Console.WriteLine(x.Kind + "\t" + x.Name + "\t" + x.Tier + "\t" + locations);
    };
}

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Visualización de los recursos

Para ver todos los recursos de su cuenta de Azure (de todos los grupos de recursos), use el siguiente método:

static void list_resources(CognitiveServicesManagementClient client)
{
    Console.WriteLine("Resources in resource group: " + resource_group_name);
    var result = client.Accounts.ListByResourceGroup(resource_group_name);
    foreach (var x in result)
    {
        Console.WriteLine("ID: " + x.Id);
        Console.WriteLine("Name: " + x.Name);
        Console.WriteLine("Type: " + x.Type);
        Console.WriteLine("Kind: " + x.Kind);
        Console.WriteLine();
    }
}

Eliminación de un recurso

El método siguiente elimina el recurso especificado del grupo de recursos dado.

static void delete_resource(CognitiveServicesManagementClient client, string resource_name)
{
    Console.WriteLine("Deleting resource: " + resource_name + "...");
    client.Accounts.Delete (resource_group_name, resource_name);

    Console.WriteLine("Resource deleted.");
    Console.WriteLine();
}

Ejecución de la aplicación

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

dotnet run

Documentación de referencia | Código fuente de la biblioteca | Paquete (Maven)

Requisitos previos de Java

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • La versión actual de Java Development Kit (JDK)
  • La herramienta de compilación de Gradle u otro administrador de dependencias.
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Creación de una entidad de servicio de Azure

Para que la aplicación interactúe con su cuenta de Azure, necesita una entidad de servicio de Azure para administrar los permisos. Siga las instrucciones de Creación de una entidad de servicio de Azure.

Al crear una entidad de servicio, verá que tiene un valor secreto, un identificador y un identificador de aplicación. Guarde el identificador de aplicación y el secreto en una ubicación temporal para los pasos posteriores.

Crear un grupo de recursos

Antes de crear un recurso de servicios de Azure AI, la cuenta debe tener un grupo de recursos de Azure que contenga el recurso. Si aún no tiene un grupo de recursos, créelo en Azure Portal antes de continuar.

Creación de una aplicación Java

En una ventana de la consola (como cmd, PowerShell o Bash), cree un directorio para la aplicación y vaya a él.

mkdir myapp && cd myapp

Ejecute el comando gradle init desde el directorio de trabajo. Este comando creará archivos de compilación esenciales para Gradle, como build.gradle.kts, que se usa en el runtime para crear y configurar la aplicación.

gradle init --type basic

Cuando se le solicite que elija un DSL, seleccione Kotlin.

En el directorio de trabajo, ejecute el siguiente comando:

mkdir -p src/main/java

Instalación de la biblioteca cliente

En este inicio rápido se usa el administrador de dependencias Gradle. Puede encontrar la biblioteca de cliente y la información de otros administradores de dependencias en el repositorio central de Maven.

En el archivo build.gradle.kts del proyecto, incluya la biblioteca cliente como una instrucción implementation, junto con los complementos y la configuración necesarios.

plugins {
    java
    application
}
application {
    mainClass.set("FormRecognizer")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.microsoft.azure", name = "azure-mgmt-cognitiveservices", version = "1.10.0-beta")
}

Importación de bibliotecas

Vaya a la nueva carpeta src/main/java y cree un archivo denominado Management.java. Ábralo en el editor o el IDE que prefiera y agregue las siguientes instrucciones import:

import com.azure.core.management.*;
import com.azure.core.management.profile.*;
import com.azure.identity.*;
import com.azure.resourcemanager.cognitiveservices.*;
import com.azure.resourcemanager.cognitiveservices.implementation.*;
import com.azure.resourcemanager.cognitiveservices.models.*;

import java.io.*;
import java.lang.Object.*;
import java.util.*;
import java.net.*;

Autenticar el cliente

Agregue una clase en Management.java y, luego, agregue dentro de ella los siguientes campos y sus valores. Rellene sus valores mediante la entidad de servicio que creó y la otra información de la cuenta de Azure.

/*
Be sure to use the service pricipal application ID, not simply the ID. 
*/

private static String applicationId = "PASTE_YOUR_SERVICE_PRINCIPAL_APPLICATION_ID_HERE";
private static String applicationSecret = "PASTE_YOUR_SERVICE_PRINCIPAL_SECRET_HERE";

/* The ID of your Azure subscription. You can find this in the Azure Dashboard under Home > Subscriptions. */
private static String subscriptionId = "PASTE_YOUR_SUBSCRIPTION_ID_HERE";

/* The Active Directory tenant ID. You can find this in the Azure Dashboard under Home > Azure Active Directory. */
private static String tenantId = "PASTE_YOUR_TENANT_ID_HERE";

/* The name of the Azure resource group in which you want to create the resource.
You can find resource groups in the Azure Dashboard under Home > Resource groups. */
private static String resourceGroupName = "PASTE_YOUR_RESOURCE_GROUP_NAME_HERE";

/* The name of the custom subdomain to use when you create the resource. This is optional.
For example, if you create a Bing Search v7 resource with the custom subdomain name 'my-search-resource',
your resource would have the endpoint https://my-search-resource.cognitiveservices.azure.com/.
Note not all Cognitive Services allow custom subdomain names. */
private static String subDomainName = "PASTE_YOUR_SUBDOMAIN_NAME_HERE";

Luego, en el método main, use estos valores para construir un objeto CognitiveServicesManager. Este objeto es necesario para todas las operaciones de Administración de Azure.

/* For more information see:
https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/AUTH.md
*/

ClientSecretCredential credential = new ClientSecretCredentialBuilder()
    .clientId(applicationId)
    .clientSecret(applicationSecret)
    .tenantId(tenantId)
    .build();
AzureProfile profile = new AzureProfile(tenantId, subscriptionId, AzureEnvironment.AZURE);

CognitiveServicesManager client = CognitiveServicesManager.authenticate(credential, profile);

Métodos de administración de llamada

Agregue el código siguiente al método Main para enumerar los recursos disponibles, crear un recurso de ejemplo, enumerar los recursos que posee y, después, eliminar el recurso de ejemplo. Estos métodos los definirá en los siguientes pasos.

String resourceName = "test_resource";
String resourceKind = "TextTranslation";
String resourceSku = "F0";
Region resourceRegion = Region.US_WEST;

// Uncomment to list all available resource kinds, SKUs, and locations for your Azure account.
// list_available_kinds_skus_locations (client);

// Create a resource with kind Text Translation, SKU F0 (free tier), location US West.
String resourceId = create_resource (client, resourceName, resourceGroupName, resourceKind, resourceSku, resourceRegion);

// Uncomment this to list all resources for your Azure account.
// list_resources (client, resourceGroupName);

// Delete the resource.
delete_resource (client, resourceId);

/* NOTE: When you delete a resource, it is only soft-deleted. You must also purge it. Otherwise, if you try to create another
resource with the same name or custom subdomain, you will receive an error stating that such a resource already exists. */
purge_resource (client, resourceName, resourceGroupName, resourceRegion);

Creación de un recurso de servicios de Azure AI (Java)

Para crear un recurso de servicios de Azure AI y suscribirse a él, use el método create. Este método agrega un nuevo recurso facturable al grupo de recursos que se pasa. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, junto con su plan de tarifa (o SKU) y una ubicación de Azure. El siguiente método usa todos estos valores como argumentos y crea un recurso.

public static String create_resource (CognitiveServicesManager client, String resourceName, String resourceGroupName, String resourceKind, String resourceSku, Region resourceRegion) {
    System.out.println ("Creating resource: " + resourceName + "...");

    /* NOTE: If you do not want to use a custom subdomain name, remove the withCustomSubDomainName
    setter from the AccountProperties object. */
    Account result = client.accounts().define(resourceName)
        .withExistingResourceGroup(resourceGroupName)
        // Note: Do not call withRegion() first, as it does not exist on the Blank interface returned by define().
        .withRegion(resourceRegion)
        .withKind(resourceKind)
        .withSku(new Sku().withName(resourceSku))
        .withProperties(new AccountProperties().withCustomSubDomainName(subDomainName))
        .create();

    System.out.println ("Resource created.");
    System.out.println ("ID: " + result.id());
    System.out.println ("Provisioning state: " + result.properties().provisioningState().toString());
    System.out.println ();

    return result.id();
}

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el "tipo" de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso. Puede encontrar una lista de los "tipos" de servicios de Azure AI disponibles llamando al siguiente método:

public static void list_available_kinds_skus_locations (CognitiveServicesManager client) {
    System.out.println ("Available SKUs:");
    System.out.println("Kind\tSKU Name\tSKU Tier\tLocations");
    ResourceSkus skus = client.resourceSkus();
    for (ResourceSku sku : skus.list()) {
        String locations = String.join (",", sku.locations());
        System.out.println (sku.kind() + "\t" + sku.name() + "\t" + sku.tier() + "\t" + locations);
    }
}

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Visualización de los recursos

Para ver todos los recursos de su cuenta de Azure (de todos los grupos de recursos), use el siguiente método:

public static void list_resources (CognitiveServicesManager client, String resourceGroupName) {
    System.out.println ("Resources in resource group: " + resourceGroupName);
    // Note Azure resources are also sometimes referred to as accounts.
    Accounts accounts = client.accounts();
    for (Account account : accounts.listByResourceGroup(resourceGroupName)) {
        System.out.println ("ID: " + account.id());
        System.out.println ("Kind: " + account.kind ());
        System.out.println ("SKU Name: " + account.sku().name());
        System.out.println ("Custom subdomain name: " + account.properties().customSubDomainName());
        System.out.println ();
    }
}

Eliminación de un recurso

El método siguiente elimina el recurso especificado del grupo de recursos dado.

public static void delete_resource (CognitiveServicesManager client, String resourceId) {
    System.out.println ("Deleting resource: " + resourceId + "...");
    client.accounts().deleteById (resourceId);
    System.out.println ("Resource deleted.");
    System.out.println ();
}

Documentación de referencia | Código fuente de la biblioteca | Paquete (npm) | Ejemplos

Requisitos previos de JavaScript

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • La versión actual de Node.js
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Creación de una entidad de servicio de Azure

Para que la aplicación interactúe con su cuenta de Azure, necesita una entidad de servicio de Azure para administrar los permisos. Siga las instrucciones de Creación de una entidad de servicio de Azure.

Al crear una entidad de servicio, verá que tiene un valor secreto, un identificador y un identificador de aplicación. Guarde el identificador de aplicación y el secreto en una ubicación temporal para los pasos posteriores.

Crear un grupo de recursos

Antes de crear un recurso de servicios de Azure AI, la cuenta debe tener un grupo de recursos de Azure que contenga el recurso. Si aún no tiene un grupo de recursos, créelo en Azure Portal antes de continuar.

Creación de una aplicación Node.js

En una ventana de la consola (como cmd, PowerShell o Bash), cree un directorio para la aplicación y vaya a él.

mkdir myapp && cd myapp

Ejecute el comando init para crear una aplicación de nodo con un archivo package.json.

 init

Cree un archivo denominado index.js antes de continuar.

Instalación de la biblioteca cliente

Instale los siguientes paquetes npm:

npm install @azure/arm-cognitiveservices
npm install @azure/identity

el archivo package.json de la aplicación se actualizará con las dependencias.

Importación de bibliotecas

Abra el script index.js e importe las siguientes bibliotecas.

"use strict";

/* To run this sample, install the following modules.
 * npm install @azure/arm-cognitiveservices @azure/identity
 */
var Arm = require("@azure/arm-cognitiveservices");
var Identity = require("@azure/identity");

Autenticar el cliente

Agregue los campos siguientes a la raíz del script y rellene sus valores, para lo que debe usar la entidad de servicio que creó y la información de su cuenta de Azure.

const service_principal_application_id =
  "PASTE_YOUR_SERVICE_PRINCIPAL_APPLICATION_ID_HERE";
const service_principal_secret = "PASTE_YOUR_SERVICE_PRINCIPAL_SECRET_HERE";

/* The ID of your Azure subscription. You can find this in the Azure Dashboard under Home > Subscriptions. */
const subscription_id = "PASTE_YOUR_SUBSCRIPTION_ID_HERE";

/* The Active Directory tenant ID. You can find this in the Azure Dashboard under Home > Azure Active Directory. */
const tenant_id = "PASTE_YOUR_TENANT_ID_HERE";

/* The name of the Azure resource group in which you want to create the resource.
You can find resource groups in the Azure Dashboard under Home > Resource groups. */
const resource_group_name = "PASTE_YOUR_RESOURCE_GROUP_NAME_HERE";

/* The name of the custom subdomain to use when you create the resource. This is optional.
For example, if you create a Bing Search v7 resource with the custom subdomain name 'my-search-resource',
your resource would have the endpoint https://my-search-resource.cognitiveservices.azure.com/.
Note not all Cognitive Services allow custom subdomain names.
*/
const subdomain_name = "PASTE_YOUR_SUBDOMAIN_NAME_HERE";

A continuación, agregue la siguiente función quickstart para controlar el trabajo principal del programa. El primer bloque de código construye un objeto CognitiveServicesManagementClient, para lo que usa las variables de credenciales que especificó anteriormente. Este objeto es necesario para todas las operaciones de Administración de Azure.

async function quickstart() {
  /* For more information see:
https://www.npmjs.com/package/@azure/arm-cognitiveservices/v/6.0.0
https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-a-client-secret
*/
  const credentials = new Identity.ClientSecretCredential(
    tenant_id,
    service_principal_application_id,
    service_principal_secret
  );
  const client = new Arm.CognitiveServicesManagementClient(
    credentials,
    subscription_id
  );
  // Note Azure resources are also sometimes referred to as accounts.
  const accounts_client = client.accounts;
  const resource_skus_client = client.resourceSkus;
  const deleted_accounts_client = client.deletedAccounts;

Funciones de administración de llamadas

Agregue el código siguiente al final de la función quickstart para enumerar los recursos disponibles, crear un recurso de ejemplo, enumerar los recursos que posee y, después, eliminar el recurso de ejemplo. Estas funciones las definirá en los siguientes pasos.

Creación de un recurso de servicios de Azure AI (Node.js)

Para crear un recurso de servicios de Azure AI y suscribirse a él, use la función Create. Esta función agrega un nuevo recurso facturable al grupo de recursos que se pasa. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, el plan de tarifa (o SKU) y la ubicación de Azure. La siguiente función usa todos estos valores como argumentos y crea un recurso.

async function create_resource(
  client,
  resource_name,
  resource_kind,
  resource_sku,
  resource_region
) {
  console.log("Creating resource: " + resource_name + "...");
  /* NOTE If you do not want to use a custom subdomain name, remove the customSubDomainName
property from the properties object. */
  var parameters = {
    sku: { name: resource_sku },
    kind: resource_kind,
    location: resource_region,
    properties: { customSubDomainName: subdomain_name },
  };
  return client
    .beginCreateAndWait(resource_group_name, resource_name, parameters)
    .then((result) => {
      console.log("Resource created.");
      console.log();
      console.log("ID: " + result.id);
      console.log("Kind: " + result.kind);
      console.log();
    })
    .catch((err) => {
      console.log(err);
    });
}

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el "tipo" de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso. La siguiente función enumera los "tipos" de servicios de Azure AI disponibles.

async function list_available_kinds_skus_locations(client) {
  console.log("Available SKUs:");
  var result = client.list();
  console.log("Kind\tSKU Name\tSKU Tier\tLocations");
  for await (let item of result) {
    var locations = item.locations.join(",");
    console.log(item.kind + "\t" + item.name + "\t" + item.tier + "\t" + locations);
  }
}

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Visualización de los recursos

Para ver todos los recursos de su cuenta de Azure (de todos los grupos de recursos), use la siguiente función:

async function list_resources(client) {
  console.log("Resources in resource group: " + resource_group_name);
  var result = client.listByResourceGroup(resource_group_name);
  for await (let item of result) {
    console.log(item);
    console.log();
  }
}

Eliminar un recurso

La función siguiente elimina el recurso especificado del grupo de recursos dado.

async function delete_resource(client, resource_name) {
  console.log("Deleting resource: " + resource_name + "...");
  await client.beginDeleteAndWait(resource_group_name, resource_name);
  console.log("Resource deleted.");
  console.log();
}

Ejecución de la aplicación

Agregue el siguiente código al final del script para llamar a la función quickstart principal con control de errores.

try {
  quickstart();
} catch (error) {
  console.log(error);
}

Luego, en la ventana de consola, ejecute la aplicación con el comando node.

node index.js

Documentación de referencia | Código fuente de la biblioteca | Paquete (PyPi) | Ejemplos

Requisitos previos de Python

  • Una suscripción a Azure válida: cree una de manera gratuita.
  • Python 3.x
  • La cuenta de Azure debe tener asignado un rol Cognitive Services Contributor a fin de que pueda aceptar los términos de IA responsable y crear un recurso. Para asignar este rol a su cuenta, siga los pasos descritos en la documentación Asignación de roles o póngase en contacto con el administrador.
  • Si tiene previsto usar el análisis espacial en Visión de Azure AI o Análisis de texto para la salud en Lenguaje de Azure AI, debe crear sus primeros recursos de Visión o Lenguaje desde Azure Portal para que pueda revisar y confirmar los términos y condiciones. Puede hacerlo aquí: Lenguaje de Azure AI, Visión de Azure AI. Después, puede crear recursos posteriores mediante cualquier herramienta de implementación (por ejemplo, SDK, CLI o plantilla de ARM) en la misma suscripción de Azure.

Creación de una entidad de servicio de Azure

Para que la aplicación interactúe con su cuenta de Azure, necesita una entidad de servicio de Azure para administrar los permisos. Siga las instrucciones de Creación de una entidad de servicio de Azure.

Al crear una entidad de servicio, verá que tiene un valor secreto, un identificador y un identificador de aplicación. Guarde el identificador de aplicación y el secreto en una ubicación temporal para los pasos posteriores.

Crear un grupo de recursos

Antes de crear un recurso de servicios de Azure AI, la cuenta debe tener un grupo de recursos de Azure que contenga el recurso. Si aún no tiene un grupo de recursos, créelo en Azure Portal antes de continuar.

Creación de una nueva aplicación de Python

Cree una aplicación de Python en el editor o IDE que prefiera y vaya al proyecto en una ventana de consola.

Instalación de la biblioteca cliente

Puede instalar la biblioteca cliente con lo siguiente:

pip install azure-mgmt-cognitiveservices

Instale también la biblioteca de identidades de Azure para la compatibilidad con la autenticación de tokens de Microsoft Entra.

pip install azure-identity

Importación de bibliotecas

Abra el script de Python e importe las siguientes bibliotecas.

import time
from azure.identity import ClientSecretCredential
from azure.mgmt.cognitiveservices import CognitiveServicesManagementClient
from azure.mgmt.cognitiveservices.models import Account, Sku

Autenticar el cliente

Agregue los campos siguientes a la raíz del script y rellene sus valores, para lo que debe usar la entidad de servicio que creó y la información de su cuenta de Azure.

# Be sure to use the service pricipal application ID, not simply the ID. 
service_principal_application_id = "PASTE_YOUR_SERVICE_PRINCIPAL_APPLICATION_ID_HERE"
service_principal_secret = "PASTE_YOUR_SERVICE_PRINCIPAL_SECRET_HERE"

# The ID of your Azure subscription. You can find this in the Azure Dashboard under Home > Subscriptions.
subscription_id = "PASTE_YOUR_SUBSCRIPTION_ID_HERE"

# The Active Directory tenant ID. You can find this in the Azure Dashboard under Home > Azure Active Directory.
tenant_id = "PASTE_YOUR_TENANT_ID_HERE"

# The name of the Azure resource group in which you want to create the resource.
# You can find resource groups in the Azure Dashboard under Home > Resource groups.
resource_group_name = "PASTE_YOUR_RESOURCE_GROUP_NAME_HERE"

# The name of the custom subdomain to use when you create the resource. This is optional.
# For example, if you create a Bing Search v7 resource with the custom subdomain name 'my-search-resource',
# your resource would have the endpoint https://my-search-resource.cognitiveservices.azure.com/.
# Note not all Cognitive Services allow custom subdomain names.
subdomain_name = "PASTE_YOUR_SUBDOMAIN_NAME_HERE"

# How many seconds to wait between checking the status of an async operation.
wait_time = 10

Luego, agregue el siguiente código para construir un objeto CognitiveServicesManagementClient. Este objeto es necesario para todas las operaciones de Administración de Azure.

credential = ClientSecretCredential(tenant_id, service_principal_application_id, service_principal_secret)
client = CognitiveServicesManagementClient(credential, subscription_id)

Creación de un recurso de servicios de Azure AI (Python)

Para crear un recurso de servicios de Azure AI y suscribirse a él, use la función Create. Esta función agrega un nuevo recurso facturable al grupo de recursos que se pasa. Cuando cree el recurso, deberá conocer el "tipo" de servicio que desea usar, el plan de tarifa (o SKU) y la ubicación de Azure. La siguiente función usa todos estos valores como argumentos y crea un recurso.

def create_resource (resource_name, kind, sku_name, location) :
    print("Creating resource: " + resource_name + "...")

# NOTE If you do not want to use a custom subdomain name, remove the customSubDomainName
# property from the properties object.
    parameters = Account(sku=Sku(name=sku_name), kind=kind, location=location, properties={ 'custom_sub_domain_name' : subdomain_name })

    poller = client.accounts.begin_create(resource_group_name, resource_name, parameters)
    while (False == poller.done ()) :
        print ("Waiting {wait_time} seconds for operation to finish.".format (wait_time = wait_time))
        time.sleep (wait_time)
# This will raise an exception if the server responded with an error.
    result = poller.result ()

    print("Resource created.")
    print()
    print("ID: " + result.id)
    print("Name: " + result.name)
    print("Type: " + result.type)
    print()

Elección de un servicio y un plan de tarifa

Al crear un recurso, necesitará conocer el "tipo" de servicio que desea usar y el plan de tarifa (o la SKU) que desee. Usará esta y otra información como parámetros al crear el recurso. La siguiente función enumera los "tipos" de servicios de Azure AI disponibles.

def list_available_kinds_skus_locations():
    print("Available SKUs:")
    result = client.resource_skus.list()
    print("Kind\tSKU Name\tSKU Tier\tLocations")
    for x in result:
        locations = ",".join(x.locations)
        print(x.kind + "\t" + x.name + "\t" + x.tier + "\t" + locations)

En las tablas siguientes se proporciona información sobre los productos y los precios de los servicios de Azure AI.

Varios servicios

Servicio Clase
Varios servicios Consulte la página de preciospara más información. CognitiveServices

Visión

Servicio Clase
Visión ComputerVision
Custom Vision: Prediction CustomVision.Prediction
Custom Vision: Training CustomVision.Training
Caras Face
Document Intelligence FormRecognizer

Voz

Servicio Clase
Voz SpeechServices

Lenguaje

Servicio Clase
Language Understanding (LUIS) LUIS
QnA Maker QnAMaker
Lenguaje TextAnalytics
Traducción del texto TextTranslation

Decisión

Servicio Clase
Anomaly Detector AnomalyDetector
Content Moderator ContentModerator
Personalizer Personalizer

Azure OpenAI

Servicio Clase
Azure OpenAI OpenAI

Planes de tarifas y facturación

Los planes de tarifa (y la cantidad facturada) se basan en el número de transacciones que envía mediante la información de autenticación. Cada plan de tarifa especifica lo siguiente:

  • Número máximo de transacciones permitidas por segundo (TPS).
  • Características de servicio habilitadas dentro del plan de tarifa.
  • Costo de un número predefinido de transacciones. Al ir por encima de este número, se producirá un cargo adicional, como se especifica en los detalles de precios del servicio.

Nota:

Muchos de los servicios de Azure AI tienen un nivel gratuito que puede usar para probar el servicio. Para usar el nivel gratis, use F0 como plan de tarifa para el recurso.

Visualización de los recursos

Para ver todos los recursos de su cuenta de Azure (de todos los grupos de recursos), use la siguiente función:

def list_resources():
    print("Resources in resource group: " + resource_group_name)
    result = client.accounts.list_by_resource_group(resource_group_name)
    for x in result:
        print(x.name)
        print(x)
        print()

Eliminar un recurso

La función siguiente elimina el recurso especificado del grupo de recursos dado.

def delete_resource(resource_name) :
    print("Deleting resource: " + resource_name + "...")

    poller = client.accounts.begin_delete(resource_group_name, resource_name)
    while (False == poller.done ()) :
        print ("Waiting {wait_time} seconds for operation to finish.".format (wait_time = wait_time))
        time.sleep (wait_time)
# This will raise an exception if the server responded with an error.
    result = poller.result ()

    print("Resource deleted.")

Funciones de administración de llamadas

Agregue el siguiente código al final del script para llamar a las funciones anteriores. En este código se muestran los recursos disponibles, se crea un recurso de ejemplo, se enumeran los recursos que posee y, después, se elimina el recurso de ejemplo.

resource_name = "test_resource"
resource_kind = "TextTranslation"
resource_sku = "F0"
resource_location = "Global"

# Uncomment this to list all available resource kinds, SKUs, and locations for your Azure account.
#list_available_kinds_skus_locations ()

# Create a resource with kind Text Translation, SKU F0 (free tier), location global.
create_resource(resource_name, resource_kind, resource_sku, resource_location)

# Uncomment this to list all resources for your Azure account.
#list_resources()

# Delete the resource.
delete_resource(resource_name)

# NOTE: Deleting a resource only soft-deletes it. To delete it permanently, you must purge it.
# Otherwise, if you later try to create a resource with the same name, you will receive the following error:
# azure.core.exceptions.ResourceExistsError: (FlagMustBeSetForRestore) An existing resource with ID '<your resource ID>' has been soft-deleted. To restore the resource, you must specify 'restore' to be 'true' in the property. If you don't want to restore existing resource, please purge it first.
# Code: FlagMustBeSetForRestore

# Purge the resource.
purge_resource(resource_name, resource_location)

Ejecución de la aplicación

Ejecute la aplicación desde la línea de comandos con el comando python.

python <your-script-name>.py

Pasos siguientes