Compartir a través de


Inicio rápido: Análisis de sentimiento personalizado (versión preliminar)

[NOTA] El análisis de sentimiento personalizado (versión preliminar) se retirará el 10 de enero de 2025, realice la transición a otros servicios de entrenamiento de modelos personalizados, como la clasificación de texto personalizado en Lenguaje de Azure AI, antes de esa fecha. A partir de ahora y hasta el 10 de enero de 2025, podrá seguir usando el análisis de sentimiento personalizado (versión preliminar) en los proyectos existentes sin interrupciones. No puede crear nuevos proyectos. El 10 de enero de 2025: se eliminarán las cargas de trabajo que se ejecutan en el análisis de sentimiento personalizado (versión preliminar) y se perderán los datos del proyecto asociados.

Use este artículo para empezar a crear un proyecto de análisis de sentimiento personalizado donde puede entrenar modelos personalizados para detectar la opinión del texto. Un modelo es software de inteligencia artificial que se entrena para hacer una tarea determinada. Para este sistema, los modelos clasifican texto y se entrenan mediante el aprendizaje de datos etiquetados.

Requisitos previos

Creación de un recurso de idioma de Azure y una cuenta de almacenamiento de Azure

Para poder usar el análisis de sentimiento personalizado, deberá crear un recurso de idioma de Azure, que le dará las credenciales necesarias para crear un proyecto y empezar a entrenar un modelo. También necesitará una cuenta de almacenamiento de Azure, donde pueda cargar el conjunto de datos que se usará para compilar el modelo.

Importante

Para comenzar a trabajar rápidamente, se recomienda crear un recurso de idioma de Azure mediante los pasos que se proporcionan en este artículo. Con los pasos en este artículo podrá crear el recurso de idioma y la cuenta de almacenamiento al mismo tiempo, lo que resulta más fácil que hacerlo más tarde.

Creación de un nuevo recurso en Azure Portal

  1. Vaya a Azure Portal y cree un recurso de Lenguaje de Azure AI.

  2. En la ventana que aparece, seleccione este servicio de las características personalizadas. Seleccione Continuar para crear el recurso en la parte inferior de la pantalla.

    Captura de pantalla que muestra la clasificación de texto personalizada y el reconocimiento de entidades con nombre personalizado en Azure Portal.

  3. Cree un recurso de idioma con los detalles siguientes.

    Nombre Descripción
    Suscripción Su suscripción de Azure.
    Grupo de recursos Grupo de recursos que contendrá su recurso. Puede elegir uno existente o crear uno.
    Region La región del recurso de idioma. Por ejemplo, "Oeste de EE. UU. 2".
    Nombre Nombre del recurso.
    Plan de tarifa Plan de tarifa del recurso de idioma. Puede usar el nivel de servicio Gratis (F0) para probar el servicio.

    Nota

    Si recibe un mensaje que indica "la cuenta de inicio de sesión no es propietaria del grupo de recursos de la cuenta de almacenamiento seleccionada", la cuenta debe tener asignado un rol de propietario en el grupo de recursos para poder crear un recurso de idioma. Póngase en contacto con el propietario de la suscripción de Azure para obtener ayuda.

  4. En la sección de este servicio, seleccione una cuenta de almacenamiento existente o seleccione Nueva cuenta de almacenamiento. Estos valores son para ayudarle a empezar y no necesariamente los valores de la cuenta de almacenamiento que querrá usar en entornos de producción. Para evitar la latencia durante la compilación del proyecto, conéctese a cuentas de almacenamiento en la misma región que el recurso de idioma.

    Valor de la cuenta de almacenamiento Valor recomendado
    Nombre de la cuenta de almacenamiento Cualquier nombre
    Tipo de cuenta de almacenamiento LRS estándar
  5. Asegúrese de que el Aviso de IA responsable esté activado. Seleccione Revisar y crear en la parte inferior de la página y, luego, seleccione Crear.

Carga de los datos de ejemplo en el contenedor de blobs

Después de crear una cuenta de almacenamiento de Azure y conectarla al recurso de idioma, deberá cargar los documentos del conjunto de datos de muestra en el directorio raíz de su contenedor. Estos archivos se usarán más adelante para entrenar el modelo.

Empiece por descargar el conjunto de datos de ejemplo para proyectos de análisis de sentimiento personalizado. Abra el archivo .zip y extraiga la carpeta que contiene los documentos. El conjunto de datos de ejemplo proporcionado contiene documentos, cada uno de los cuales es un breve ejemplo de una revisión del cliente.

  1. Busque los archivos que se vayan a cargar en la cuenta de almacenamiento

  2. En Azure Portal, navegue hasta la cuenta de almacenamiento que ha creado y selecciónela.

  3. En la cuenta de almacenamiento, seleccione Contenedores en el menú de la izquierda, que se encuentra debajo de Almacenamiento de datos. En la pantalla que aparece, seleccione + Contenedor. Asigne al contenedor el nombre example-data y deje el Nivel de acceso público predeterminado.

    Captura de pantalla que muestra la página principal de una cuenta de almacenamiento.

  4. Una vez creado el contenedor, haga clic en él. A continuación, seleccione el botón Cargar para seleccionar los archivos .txt y .json que descargó anteriormente.

    Captura de pantalla que muestra el botón de la carga de archivos en la cuenta de almacenamiento.

Crear un proyecto de análisis de sentimiento personalizado

Una vez configurados el recurso y el contenedor de almacenamiento, cree un nuevo proyecto de análisis de sentimiento personalizado. Un proyecto es un área de trabajo para compilar modelos de Machine Learning personalizados basados en los datos. A su proyecto solo puede acceder usted y otros usuarios que tengan acceso al recurso de idioma que se usa.

  1. Inicie sesión en Language Studio. Aparecerá una ventana que le permitirá seleccionar la suscripción y el recurso de idioma. Seleccione el recurso de idioma que creó en el paso anterior.

  2. Seleccione la característica que desee usar en Language Studio.

  3. Seleccione Create new project (Crear proyecto) en el menú superior de la página de proyectos. La creación de un proyecto le permite etiquetar datos, entrenar, evaluar, mejorar e implementar los modelos.

    Captura de pantalla de la página de creación del proyecto.

  4. Escriba la información del proyecto, incluido un nombre, una descripción y el idioma de los archivos del proyecto. Si usa el conjunto de datos de ejemplo, seleccione Inglés. No puede cambiar el nombre del proyecto posteriormente. Seleccione Siguiente.

    Sugerencia

    El conjunto de datos no tiene que estar completamente en el mismo idioma. Puede tener varios documentos, cada uno de ellos con distintos idiomas admitidos. Si el conjunto de datos contiene documentos de distintos idiomas o si espera textos en idiomas diferentes durante el tiempo de ejecución, seleccione la opción Enable multi-lingual dataset (Habilitar conjunto de datos multilingüe) al especificar la información básica del proyecto. Esta opción se puede habilitar más adelante desde la página Configuración del proyecto.

  5. Después de seleccionar Crear nuevo proyecto, aparecerá una ventana que le permitirá conectar la cuenta de almacenamiento. Si ya ha conectado una cuenta de almacenamiento, verá la cuenta de almacenamiento conectada. Si no es así, elija la cuenta de almacenamiento en la lista desplegable que aparece y seleccione Conectar cuenta de almacenamiento; esto establecerá los roles necesarios para la cuenta de almacenamiento. Este paso posiblemente devolverá un error si no está asignado como propietario en la cuenta de almacenamiento.

    Nota

    • Solo debe realizar este paso una vez para cada nuevo recurso que use.
    • Este proceso es irreversible: si conecta una cuenta de almacenamiento al recurso de idioma, no podrá desconectarla más tarde.
    • Solo puede conectar el recurso de idioma a una cuenta de almacenamiento.
  6. Seleccione el contenedor en el que ha cargado el conjunto de datos.

  7. Si ya ha etiquetado los datos, asegúrese de que sigue el formato admitido y seleccione Sí, mis archivos ya están etiquetados y he formateado el archivo de etiquetas JSON y seleccione el archivo de etiquetas en el menú desplegable. Seleccione Siguiente. Si usa el conjunto de datos del inicio rápido, no es necesario revisar el formato del archivo de etiquetas JSON.

  8. Revise los datos especificados y seleccione Create Project (Crear proyecto).

Entrenamiento de un modelo

Después de crear un proyecto, empiece a etiquetar los documentos que tiene en el contenedor conectado al proyecto. En este artículo de inicio rápido, ha importado un conjunto de datos etiquetado de ejemplo e inicializado el proyecto con el archivo de etiquetas JSON de ejemplo.

Para empezar a entrenar el modelo desde Language Studio:

  1. Seleccione Trabajos de entrenamiento en el menú de la izquierda.

  2. Seleccione Iniciar un trabajo de entrenamiento en el menú superior.

  3. Seleccione Train a new model (Entrenar un nuevo modelo) y escriba el nombre del modelo en el cuadro de texto. Para sobrescribir un modelo existente, seleccione esta opción y elija el modelo que quiera sobrescribir del menú desplegable. La sobrescritura de un modelo entrenado es irreversible, pero no afectará a los modelos implementados hasta que implemente el nuevo modelo.

    Crear un trabajo de entrenamiento

  4. De forma predeterminada, el sistema dividirá los datos etiquetados entre los conjuntos de entrenamiento y prueba, de acuerdo con los porcentajes especificados. Si tiene documentos en el conjunto de pruebas, puede dividir manualmente los datos de entrenamiento y pruebas.

  5. Seleccione el botón Entrenar.

  6. Si selecciona el id. de trabajo de entrenamiento de la lista, aparecerá un panel lateral donde podrá comprobar el progreso del entrenamiento, el estado del trabajo y otros detalles de este trabajo.

    Nota

    • Los trabajos de entrenamiento completados correctamente serán los únicos que generarán modelos.
    • El entrenamiento puede tardar entre un par de minutos y varias horas en función del tamaño de los datos etiquetados.
    • Solo puede haber un trabajo de entrenamiento ejecutándose en un momento dado. No se puede iniciar otro trabajo de entrenamiento dentro del mismo proyecto hasta que se complete el trabajo en ejecución.

Implementación del modelo

Por lo general, después de entrenar un modelo, revisaría sus detalles de evaluación y realizaría mejoras si fuera necesario. En este inicio rápido, solo implementará el modelo y estará a su disposición para que lo pruebe en Language Studio, o bien puede llamar a la API de predicción.

Para implementar el modelo desde Language Studio:

  1. Seleccione Implementación de un modelo en el menú de la izquierda.

  2. Seleccione Agregar implementación para iniciar un nuevo trabajo de implementación.

    Captura de pantalla que muestra el botón de implementación.

  3. Seleccione Crear nueva implementación para crear una nueva implementación y asignar un modelo entrenado de la lista desplegable siguiente. También puede sobrescribir una implementación existente; para ello, seleccione esta opción y el modelo entrenado que quiere asignar en la lista desplegable siguiente.

    Nota:

    La sobrescritura de una implementación existente no requiere cambios en la llamada de la API de predicción, pero los resultados que obtendrá se basarán en el modelo recién asignado.

    Captura de pantalla que muestra la implementación.

  4. Seleccione Implementar para iniciar el trabajo de implementación.

  5. Después de que la implementación se realice correctamente, aparecerá una fecha de expiración junto a ella. La expiración de la implementación aparece cuando el modelo implementado deja de estar disponible para usarlo en la predicción, lo que suele ocurrir doce meses después de que expire una configuración de entrenamiento.

Comprobación del modelo

Una vez implementado el modelo, puede empezar a usarlo para clasificar el texto mediante Prediction API. Para este inicio rápido, usará Language Studio para enviar la tarea de análisis de sentimiento personalizado y ver los resultados. En el conjunto de datos de ejemplo que descargó anteriormente, puede encontrar algunos documentos de prueba que puede usar en este paso.

Para comprobar los modelos implementados desde Language Studio:

  1. Seleccione Prueba de implementaciones en el menú lateral izquierdo.

  2. Seleccione la implementación que quiere probar. Solo se pueden probar modelos que estén asignados a implementaciones.

  3. En proyectos multilingües, seleccione el idioma del texto que está probando en la lista desplegable de idiomas.

  4. Seleccione la implementación que quiera consultar/probar en la lista desplegable.

  5. Puede escribir el texto que quiere enviar a la solicitud o cargar un archivo .txt para usarlo.

  6. En el menú superior, seleccione Ejecutar la prueba.

  7. En la pestaña Result (Resultado), puede ver las entidades extraídas del texto y sus tipos. También puede ver la respuesta JSON en la pestaña JSON.

Limpieza de proyectos

Cuando ya no necesite el proyecto, puede eliminarlo mediante Language Studio. Seleccione la característica que usa en la parte superior y, a continuación, seleccione el proyecto que desee eliminar. Seleccione Eliminar en el menú superior para eliminar el proyecto.

Requisitos previos

Creación de un recurso de idioma de Azure y una cuenta de almacenamiento de Azure

Para poder usar el análisis de sentimiento personalizado, deberá crear un recurso de idioma de Azure, que le dará las credenciales necesarias para crear un proyecto y empezar a entrenar un modelo. También necesitará una cuenta de almacenamiento de Azure, en la que pueda cargar el conjunto de datos que se usará para compilar el modelo.

Importante

Para empezar a trabajar rápidamente, se recomienda crear un recurso de idioma de Azure mediante los pasos que se indican en este artículo, que le permitirán crear el recurso de idioma y crear o configurar una cuenta de almacenamiento al mismo tiempo, lo que resulta más fácil que hacerlo luego.

Creación de un nuevo recurso en Azure Portal

  1. Vaya a Azure Portal y cree un recurso de Lenguaje de Azure AI.

  2. En la ventana que aparece, seleccione este servicio de las características personalizadas. Seleccione Continuar para crear el recurso en la parte inferior de la pantalla.

    Captura de pantalla que muestra la clasificación de texto personalizada y el reconocimiento de entidades con nombre personalizado en Azure Portal.

  3. Cree un recurso de idioma con los detalles siguientes.

    Nombre Descripción
    Suscripción Su suscripción de Azure.
    Grupo de recursos Grupo de recursos que contendrá su recurso. Puede elegir uno existente o crear uno.
    Region La región del recurso de idioma. Por ejemplo, "Oeste de EE. UU. 2".
    Nombre Nombre del recurso.
    Plan de tarifa Plan de tarifa del recurso de idioma. Puede usar el nivel de servicio Gratis (F0) para probar el servicio.

    Nota

    Si recibe un mensaje que indica "la cuenta de inicio de sesión no es propietaria del grupo de recursos de la cuenta de almacenamiento seleccionada", la cuenta debe tener asignado un rol de propietario en el grupo de recursos para poder crear un recurso de idioma. Póngase en contacto con el propietario de la suscripción de Azure para obtener ayuda.

  4. En la sección de este servicio, seleccione una cuenta de almacenamiento existente o seleccione Nueva cuenta de almacenamiento. Estos valores son para ayudarle a empezar y no necesariamente los valores de la cuenta de almacenamiento que querrá usar en entornos de producción. Para evitar la latencia durante la compilación del proyecto, conéctese a cuentas de almacenamiento en la misma región que el recurso de idioma.

    Valor de la cuenta de almacenamiento Valor recomendado
    Nombre de la cuenta de almacenamiento Cualquier nombre
    Tipo de cuenta de almacenamiento LRS estándar
  5. Asegúrese de que el Aviso de IA responsable esté activado. Seleccione Revisar y crear en la parte inferior de la página y, luego, seleccione Crear.

Carga de los datos de ejemplo en el contenedor de blobs

Después de crear una cuenta de almacenamiento de Azure y conectarla al recurso de idioma, deberá cargar los documentos del conjunto de datos de muestra en el directorio raíz de su contenedor. Estos archivos se usarán más adelante para entrenar el modelo.

Empiece por descargar el conjunto de datos de ejemplo para proyectos de análisis de sentimiento personalizado. Abra el archivo .zip y extraiga la carpeta que contiene los documentos. El conjunto de datos de ejemplo proporcionado contiene documentos, cada uno de los cuales es un breve ejemplo de una revisión del cliente.

  1. Busque los archivos que se vayan a cargar en la cuenta de almacenamiento

  2. En Azure Portal, navegue hasta la cuenta de almacenamiento que ha creado y selecciónela.

  3. En la cuenta de almacenamiento, seleccione Contenedores en el menú de la izquierda, que se encuentra debajo de Almacenamiento de datos. En la pantalla que aparece, seleccione + Contenedor. Asigne al contenedor el nombre example-data y deje el Nivel de acceso público predeterminado.

    Captura de pantalla que muestra la página principal de una cuenta de almacenamiento.

  4. Una vez creado el contenedor, haga clic en él. A continuación, seleccione el botón Cargar para seleccionar los archivos .txt y .json que descargó anteriormente.

    Captura de pantalla que muestra el botón de la carga de archivos en la cuenta de almacenamiento.

Obtención de la clave y el punto de conexión

Ahora necesitará la clave y el punto de conexión del recurso para conectar la aplicación a la API. En una sección posterior de este mismo inicio rápido, pegará la clave y el punto de conexión en el código.

  1. Después de que el recurso de lenguaje se implemente correctamente, haga clic en el botón Ir al recurso en Pasos siguientes.

    Captura de pantalla que muestra los pasos siguientes después de implementar un recurso.

  2. En la pantalla del recurso, seleccione Claves y punto de conexión en el menú de navegación izquierdo. Usará una de las claves y el punto de conexión en los pasos siguientes.

    Captura de pantalla en la que se muestra la sección de claves y punto de conexión de un recurso.

Crear un proyecto de análisis de sentimiento personalizado

Una vez configurados el recurso y el contenedor de almacenamiento, cree un nuevo proyecto de análisis de sentimiento personalizado. Un proyecto es un área de trabajo para compilar modelos de Machine Learning personalizados basados en los datos. A su proyecto solo puede acceder usted y otros usuarios que tengan acceso al recurso de idioma que se usa.

Desencadenamiento del trabajo del proyecto de importación

Envíe una solicitud POST con la dirección URL, los encabezados y el cuerpo JSON que se incluyen a continuación para importar el archivo de etiquetas.

Si ya existe un proyecto con el mismo nombre, se reemplazan los datos de ese proyecto.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/:import?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Obtenga más información sobre otras versiones de API disponibles 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Body

Utilice el siguiente código JSON en la solicitud. Reemplace los valores de los marcadores de posición por sus propios valores.

{
  "projectFileVersion": "2023-04-15-preview",
  "stringIndexType": "Utf16CodeUnit",
  "metadata": {
    "projectKind": "CustomTextSentiment",
    "storageInputContainerName": "text-sentiment",
    "projectName": "TestSentiment",
    "multilingual": false,
    "description": "This is a Custom sentiment analysis project.",
    "language": "en-us"
  },
  "assets": {
    "projectKind": "CustomTextSentiment",
    "documents": [
      {
        "location": "documents/document_1.txt",
        "language": "en-us",
        "sentimentSpans": [
            {
                "category": "negative",
                "offset": 0,
                "length": 28
            }
        ]
      },
      {
          "location": "documents/document_2.txt",
          "language": "en-us",
          "sentimentSpans": [
              {
                  "category": "negative",
                  "offset": 0,
                  "length": 24
              }
          ]
      },
      {
          "location": "documents/document_3.txt",
          "language": "en-us",
          "sentimentSpans": [
              {
                  "category": "neutral",
                  "offset": 0,
                  "length": 18
              }
          ]
      }
    ]
  }
}


Clave Marcador de posición Valor Ejemplo
api-version {API-VERSION} Versión de la API a la que se llama. La versión que se use aquí debe ser la misma versión de API en la dirección URL. Obtenga más información sobre otras versiones de API disponibles 2023-04-15-preview
projectName {PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
projectKind CustomTextSentiment El tipo de proyecto. CustomTextSentiment
language {LANGUAGE-CODE} Una cadena que especifica el código de idioma de los documentos que se usan en el proyecto. Si el proyecto es un proyecto multilingüe, elija el código de idioma de la mayoría de los documentos. Consulte Compatibilidad de idiomas para obtener más información sobre la compatibilidad multilingüe. en-us
multilingües true Valor booleano que le permite tener documentos en varios idiomas del conjunto de datos y, cuando se implementa el modelo, puede consultarlo en cualquier idioma admitido (no necesariamente incluido en los documentos de entrenamiento). Consulte Compatibilidad de idiomas para obtener más información sobre la compatibilidad multilingüe. true
storageInputContainerName {CONTAINER-NAME} Nombre del contenedor de almacenamiento de Azure donde ha cargado los documentos. myContainer
Documentos [] Matriz que contiene todos los documentos del proyecto y cuáles son las clases etiquetadas en este documento. []
ubicación {DOCUMENT-NAME} Ubicación de los documentos en el contenedor de almacenamiento. Puesto que todos los documentos están en la raíz del contenedor, este debe ser el nombre del documento. doc1.txt
sentimentSpans {sentimentSpans} La opinión de un documento (positiva, neutra, negativa), la posición en la que comienza la opinión y su longitud. []

Una vez que envíe la solicitud de API, recibirá una respuesta 202 que indica que el trabajo se ha enviado correctamente. En los encabezados de respuesta, extraiga el valor operation-location. Tendrá el formato siguiente:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} se usa para identificar la solicitud, ya que esta operación es asincrónica. Usará esta dirección URL para obtener el estado del trabajo de importación.

Posibles escenarios de error de esta solicitud:

  • El valor de storageInputContainerName especificado no existe.
  • Se ha usado un código de idioma no válido, o el tipo de código de idioma no es una cadena.
  • El valor de multilingual es una cadena y no un valor booleano.

Obtención del estado del trabajo de importación

Use la siguiente solicitud GET para obtener el estado de la importación del proyecto. Reemplace los valores de los marcadores de posición por sus propios valores.

URL de la solicitud

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{JOB-ID} Id. para buscar el estado del entrenamiento del modelo. Este valor se encuentra en el valor de encabezado location que recibió en el paso anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Obtenga más información sobre otras versiones de API disponibles 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Entrenamiento de un modelo

Después de crear un proyecto, empiece a etiquetar los documentos que tiene en el contenedor conectado al proyecto. En este inicio rápido, ha importado un conjunto de datos etiquetado de ejemplo e inicializado el proyecto con el archivo de etiquetas JSON de ejemplo.

Inicio del entrenamiento del modelo

Una vez importado el proyecto, puede empezar a entrenar el modelo.

Envíe una solicitud POST mediante la dirección URL, los encabezados y el cuerpo JSON para enviar un trabajo de entrenamiento. Reemplace los valores de los marcadores de posición por sus propios valores.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Obtenga más información sobre otras versiones de API disponibles 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Cuerpo de la solicitud

Use el siguiente código JSON en el cuerpo de la solicitud. El modelo se denominará {MODEL-NAME} una vez completado el entrenamiento. Solo los trabajos de entrenamiento correctos generarán modelos.

{
	"modelLabel": "{MODEL-NAME}",
	"trainingConfigVersion": "{CONFIG-VERSION}",
	"evaluationOptions": {
		"kind": "percentage",
		"trainingSplitPercentage": 80,
		"testingSplitPercentage": 20
	}
}
Clave Marcador de posición Valor Ejemplo
modelLabel {MODEL-NAME} Nombre que se asignará al modelo una vez entrenado correctamente. myModel
trainingConfigVersion {CONFIG-VERSION} Se trata de la versión de modelo que se usará para entrenar el modelo. 2023-04-15-preview
evaluationOptions Opción para dividir los datos en conjuntos de entrenamiento y pruebas. {}
kind percentage Métodos de división. Los valores posibles son percentage o manual. percentage
trainingSplitPercentage 80 Porcentaje de los datos etiquetados que se incluirán en el conjunto de entrenamiento. El valor recomendado es 80. 80
testingSplitPercentage 20 Porcentaje de los datos etiquetados que se incluirán en el conjunto de pruebas. El valor recomendado es 20. 20

Nota

trainingSplitPercentage y testingSplitPercentage solo son necesarios si Kind está establecido en percentage y la suma de ambos porcentajes es igual a 100.

Una vez que envíe la solicitud de API, recibirá una respuesta 202 que indica que el trabajo se ha enviado correctamente. En los encabezados de respuesta, extraiga el valor location. Tendrá el formato siguiente:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} se usa para identificar la solicitud, ya que esta operación es asincrónica. Puede usar esta dirección URL para obtener el estado del entrenamiento.

Obtén el estado del trabajo de entrenamiento

El entrenamiento puede tardar entre 10 y 30 minutos. Puede usar la siguiente solicitud para mantener el sondeo del estado del trabajo de entrenamiento hasta que se complete correctamente.

Use la siguiente solicitud GET para obtener el estado del proceso de entrenamiento del modelo. Reemplace los valores de los marcadores de posición por sus propios valores.

URL de la solicitud

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{JOB-ID} Id. para buscar el estado del entrenamiento del modelo. Este valor se encuentra en el valor de encabezado location que recibió en el paso anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Consulte Ciclo de vida del modelo para obtener más información sobre otras versiones de API disponibles. 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Response body

Una vez que envíe la solicitud, recibirá la siguiente respuesta.

{
  "result": {
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
    "trainingStatus": {
      "percentComplete": 3,
      "startDateTime": "2022-04-18T15:45:06.8190649Z",
      "status": "running"
    },
    "evaluationStatus": {
      "percentComplete": 0,
      "status": "notStarted"
    }
  },
  "jobId": "{JOB-ID}",
  "createdDateTime": "2022-04-18T15:44:44Z",
  "lastUpdatedDateTime": "2022-04-18T15:45:48Z",
  "expirationDateTime": "2022-04-25T15:44:44Z",
  "status": "running"
}

Implementación del modelo

Por lo general, después de entrenar un modelo, revisaría sus detalles de evaluación y realizaría mejoras si fuera necesario. En este inicio rápido, solo implementará el modelo y estará a su disposición para que lo pruebe en Language Studio, o bien puede llamar a la API de predicción.

Envío del trabajo de implementación

Envíe una solicitud PUT mediante la dirección URL, los encabezados y el cuerpo JSON para enviar un trabajo de implementación. Reemplace los valores de los marcadores de posición por sus propios valores.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{DEPLOYMENT-NAME} Nombre de la implementación. Este valor distingue mayúsculas de minúsculas. staging
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Consulte Ciclo de vida del modelo para obtener más información sobre otras versiones de API disponibles. 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Cuerpo de la solicitud

Use el siguiente código JSON en el cuerpo de la solicitud. Use el nombre del modelo que se va a asignar a la implementación.

{
  "trainedModelLabel": "{MODEL-NAME}"
}
Clave Marcador de posición Valor Ejemplo
trainedModelLabel {MODEL-NAME} Nombre del modelo que se asignará a la implementación. Solo puede asignar modelos entrenados correctamente. Este valor distingue mayúsculas de minúsculas. myModel

Una vez que envíe la solicitud de API, recibirá una respuesta 202 que indica que el trabajo se ha enviado correctamente. En los encabezados de respuesta, extraiga el valor operation-location. Tendrá el formato siguiente:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} se usa para identificar la solicitud, ya que esta operación es asincrónica. Puede usar esta dirección URL para obtener el estado de la implementación.

Obtención del estado del trabajo de implementación

Use la siguiente solicitud GET para consultar el estado del trabajo de implementación. Puede usar la dirección URL que recibió en el paso anterior o reemplazar los valores de los marcadores de posición por sus propios valores.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{DEPLOYMENT-NAME} Nombre de la implementación. Este valor distingue mayúsculas de minúsculas. staging
{JOB-ID} Id. para buscar el estado del entrenamiento del modelo. Se encuentra en el valor de encabezado location que recibió en el paso anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Consulte Ciclo de vida del modelo para obtener más información sobre otras versiones de API disponibles. 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave Valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Response body

Una vez que envíe la solicitud, recibirá la siguiente respuesta. Siga sondeando este punto de conexión hasta que el parámetro status cambie a "succeeded". Debe obtener un código 200 para indicar el éxito de la solicitud.

{
    "jobId":"{JOB-ID}",
    "createdDateTime":"{CREATED-TIME}",
    "lastUpdatedDateTime":"{UPDATED-TIME}",
    "expirationDateTime":"{EXPIRATION-TIME}",
    "status":"running"
}

Clasificación de texto

Una vez implementado el modelo correctamente, puede empezar a usarlo para clasificar el texto mediante Prediction API. En el conjunto de datos de ejemplo que descargó anteriormente, puede encontrar algunos documentos de prueba que puede usar en este paso.

Enviar una tarea de análisis de sentimiento personalizado

Use esta solicitud POST para iniciar una tarea de clasificación de texto.

{ENDPOINT}/language/analyze-text/jobs?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. 2023-04-15-preview

encabezados

Clave valor
Ocp-Apim-Subscription-Key La clave que proporciona acceso a esta API.

Body

{
  "displayName": "Detecting sentiment",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "{LANGUAGE-CODE}",
        "text": "Text1"
      },
      {
        "id": "2",
        "language": "{LANGUAGE-CODE}",
        "text": "Text2"
      }
    ]
  },
  "tasks": [
     {
      "kind": "CustomTextSentiment",
      "taskName": "Sentiment analysis",
      "parameters": {
        "projectName": "{PROJECT-NAME}",
        "deploymentName": "{DEPLOYMENT-NAME}"
      }
    }
  ]
}
Clave Marcador de posición Valor Ejemplo
displayName {JOB-NAME} Nombre del trabajo. MyJobName
documents [{},{}] Lista de documentos en los que se van a ejecutar las tareas. [{},{}]
id {DOC-ID} Nombre o identificador del documento. doc1
language {LANGUAGE-CODE} Cadena donde se especifica el código de idioma del documento. Si esta clave no se ha especificado, el servicio toma el idioma predeterminado del proyecto que se seleccionó durante la creación del proyecto. en-us
text {DOC-TEXT} Tarea de documento en la que ejecutar las tareas. Lorem ipsum dolor sit amet
tasks Lista de tareas que queremos realizar. []
taskName CustomTextSentiment Nombre de la tarea. CustomTextSentiment
parameters Lista de parámetros que se van a pasar a la tarea.
project-name {PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
deployment-name {DEPLOYMENT-NAME} Nombre de la implementación. Este valor distingue mayúsculas de minúsculas. prod

Response

Recibirá una respuesta 202, que indica que la tarea se ha enviado correctamente. En los encabezados de la respuesta, extraiga el valor de operation-location. operation-location tiene el formato siguiente:

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}

Puede usar esta dirección URL para consultar el estado de finalización de la tarea y obtener los resultados cuando la tarea se complete.

Obtención de resultados de la tarea

Use la siguiente solicitud GET para consultar el estado y los resultados de la tarea de reconocimiento de entidades personalizado.

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. 2023-04-15-preview

encabezados

Clave valor
Ocp-Apim-Subscription-Key La clave que proporciona acceso a esta API.

Cuerpo de la respuesta

La respuesta es un documento JSON con los siguientes parámetros

{
  "createdDateTime": "2021-05-19T14:32:25.578Z",
  "displayName": "MyJobName",
  "expirationDateTime": "2021-05-19T14:32:25.578Z",
  "jobId": "xxxx-xxxx-xxxxx-xxxxx",
  "lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
  "status": "succeeded",
  "tasks": {
    "completed": 1,
    "failed": 0,
    "inProgress": 0,
    "total": 1,
    "items": [
      {
        "kind": "EntityRecognitionLROResults",
        "taskName": "Recognize Entities",
        "lastUpdateDateTime": "2020-10-01T15:01:03Z",
        "status": "succeeded",
        "results": {
          "documents": [
            {
              "entities": [
                {
                  "category": "Event",
                  "confidenceScore": 0.61,
                  "length": 4,
                  "offset": 18,
                  "text": "trip"
                },
                {
                  "category": "Location",
                  "confidenceScore": 0.82,
                  "length": 7,
                  "offset": 26,
                  "subcategory": "GPE",
                  "text": "Seattle"
                },
                {
                  "category": "DateTime",
                  "confidenceScore": 0.8,
                  "length": 9,
                  "offset": 34,
                  "subcategory": "DateRange",
                  "text": "last week"
                }
              ],
              "id": "1",
              "warnings": []
            }
          ],
          "errors": [],
          "modelVersion": "2020-04-01"
        }
      }
    ]
  }
}

Limpieza de recursos

Cuando ya no necesite el proyecto, puede eliminarlo con la siguiente solicitud DELETE. Reemplace los valores de los marcadores de posición por sus propios valores.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}?api-version={API-VERSION}
Marcador de posición Valor Ejemplo
{ENDPOINT} Punto de conexión para autenticar la solicitud de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Nombre del proyecto. Este valor distingue mayúsculas de minúsculas. myProject
{API-VERSION} Versión de la API a la que se llama. El valor al que se hace referencia aquí se corresponde con la versión más reciente publicada. Obtenga más información sobre otras versiones de API disponibles 2023-04-15-preview

encabezados

Use el siguiente encabezado para autenticar la solicitud.

Clave valor
Ocp-Apim-Subscription-Key Clave para el recurso. Se usa para autenticar las solicitudes de API.

Una vez que envíe la solicitud de API, recibirá una respuesta 202 que indica que se ha realizado correctamente, lo que significa que el proyecto se ha eliminado. Una llamada correcta devuelve un encabezado Operation-Location que se usa para comprobar el estado del trabajo.

Pasos siguientes

Después de crear un modelo de análisis de sentimiento personalizado, puede hacer lo siguiente:

Cuando empiece a crear sus propios proyectos de análisis de sentimiento personalizado, use los artículos de procedimientos para obtener información detallada sobre el desarrollo del modelo: