Conexión a servicios de Azure AI desde flujos de trabajo estándar en Azure Logic Apps
Se aplica a: Azure Logic Apps (estándar)
Para integrar datos y servicios empresariales con tecnologías de inteligencia artificial, puede usar los conectores integrados de Azure OpenAI y Búsqueda de Azure AI en flujos de trabajo de aplicaciones lógicas estándar. Estos conectores admiten varios tipos de autenticación, como claves de API, identificador de Microsoft Entra e identidades administradas. También pueden conectarse a los puntos de conexión de Azure OpenAI Service y Búsqueda de Azure AI detrás de firewalls para que los flujos de trabajo se conecten de forma segura a los recursos de inteligencia artificial en Azure.
En esta guía se proporciona información general y ejemplos sobre cómo usar las operaciones del conector de Azure OpenAI y Búsqueda de Azure AI en el flujo de trabajo.
¿Por qué usar Azure Logic Apps con los servicios de IA?
Normalmente, la creación de soluciones de inteligencia artificial implica varios pasos clave y requiere algunos bloques de creación. Principalmente, debe tener una canalización de ingesta dinámica y una interfaz de chat que pueda comunicarse con modelos de lenguaje grandes (LLM) y bases de datos vectoriales.
Sugerencia
Para más información, puede hacerle estas preguntas a Azure Copilot:
- ¿Qué es una canalización de ingesta dinámica en IA?
- ¿Qué es una base de datos vectorial en IA?
Para buscar Azure Copilot, en la barra de herramientas de Azure Portal, seleccione Copilot.
Puede ensamblar varios componentes, no solo para realizar la ingesta de datos, sino también para proporcionar un back-end sólido para la interfaz de chat. Este back-end facilita la entrada de mensajes y genera respuestas confiables durante las interacciones. Sin embargo, crear el código para administrar y controlar todos estos elementos puede resultar difícil, que es el caso de la mayoría de las soluciones.
Azure Logic Apps ofrece un enfoque de código bajo y simplifica la administración de back-end proporcionando conectores pre compilados que se usan como bloques de creación para simplificar el proceso de back-end. Este enfoque le permite centrarse en el origen de los datos y asegurarse de que los resultados de búsqueda proporcionan información actual y relevante. Con estos conectores de IA, el flujo de trabajo actúa como un motor de orquestación que transfiere datos entre los servicios de inteligencia artificial y otros componentes que desea integrar.
Para obtener más información, consulte los siguientes recursos:
- Introducción a los modelos de lenguaje grandes
- Guía para trabajar con modelos de lenguajes grandes
- Qué es una base de datos vectorial
Referencia técnica del conector
Azure OpenAI
Azure OpenAI Service proporciona acceso a los Modelos de lenguaje de OpenAI, que incluyen GPT-4, GPT-4 Turbo con Vision, GPT-3.5-Turbo y la serie de modelos Embeddings. Con el conector de Azure OpenAI, el flujo de trabajo puede conectarse a Azure OpenAI Service y obtener incrustaciones de OpenAI para los datos o generar finalizaciones de chat.
Sugerencia
Para más información, puede hacerle estas preguntas a Azure Copilot:
- ¿Qué es una inserción en IA?
- ¿Qué es una finalización de chat en IA?
Para buscar Azure Copilot, en la barra de herramientas de Azure Portal, seleccione Copilot.
Aplicación lógica | Entorno | Versión del conector |
---|---|---|
Estándar | Azure Logic Apps de inquilino único y App Service Environment v3 (solo planes de Windows) | Conector integrado, que aparece en la galería de conectores en Runtime>In-App y está basado en el proveedor de servicios. El conector integrado puede acceder directamente a redes virtuales de Azure sin usar una puerta de enlace de datos local. Para obtener más información, consulte Referencia del conector integrado de Azure OpenAI. |
Azure AI Search
Búsqueda de Azure AI es una plataforma para la recuperación de información con tecnología de inteligencia artificial que ayuda a los desarrolladores a crear experiencias de búsqueda enriquecidas y aplicaciones de IA generativas mediante la combinación de modelos de lenguaje grandes con datos empresariales. Con el conector de Búsqueda de Azure AI, el flujo de trabajo puede conectarse a Búsqueda de Azure AI para indexar documentos y realizar búsquedas vectoriales en los datos.
Aplicación lógica | Entorno | Versión del conector |
---|---|---|
Estándar | Azure Logic Apps de inquilino único y App Service Environment v3 (solo planes de Windows) | Conector integrado, que aparece en la galería de conectores en Runtime>In-App y está basado en el proveedor de servicios. El conector integrado puede acceder directamente a redes virtuales de Azure sin usar una puerta de enlace de datos local. Para más información, consulte Referencia del conector integrado de Búsqueda de Azure AI. |
Autenticación
Ambos conectores de IA admiten varias maneras de autenticarse con el punto de conexión de servicio de IA. Estas opciones proporcionan una autenticación sólida que satisface las necesidades de la mayoría de los clientes. Ambos conectores de IA también pueden conectarse directamente a los servicios Azure OpenAI y Búsqueda de Azure AI dentro de redes virtuales.
En la lista siguiente se describen estas opciones, todas las cuales requieren que proporcione el punto de conexión del servicio.
Tipo de autenticación | Descripción |
---|---|
Autenticación basada en claves | Proporcione la clave de API o el administrador generados por el servicio de IA. |
Identificador de Microsoft Entra, anteriormente Azure Active Directory | Proporcione información como el inquilino de Entra, el identificador de cliente y la contraseña para autenticarse como usuario de Entra. |
Identidad administrada | Después de habilitar la autenticación de identidad administrada en el servicio de IA y el recurso de la aplicación lógica, puede usar esa identidad para autenticar el acceso para el conector. |
Para obtener más información, consulte los siguientes recursos:
- Autenticación de solicitudes en los servicios de Azure AI
- ¿Qué es Microsoft Entra ID?
- ¿Qué son las identidades administradas para recursos de Azure?
- Autenticación del acceso y las conexiones a recursos de Azure con identidades administradas en Azure Logic Apps
Adición de una acción de Azure OpenAI o Búsqueda de Azure AI al flujo de trabajo
Actualmente, los conectores integrados para Azure OpenAI y Búsqueda de Azure AI solo proporcionan acciones, no desencadenadores. Puede iniciar el flujo de trabajo con cualquier desencadenador que se adapte a su escenario o necesidades y, a continuación seguir estos pasos generales para agregar acciones para Azure OpenAI, Búsqueda de Azure AI y otras operaciones.
Escenarios
En los escenarios siguientes se describen solo dos de las muchas maneras de usar las operaciones del conector de IA en los flujos de trabajo:
Creación de una knowledge base para los datos empresariales
Azure Logic Apps proporciona más de 1000 conectores administrados por Microsoft y ejecuta conectores integrados de forma nativa para que el flujo de trabajo se conecte de forma segura con casi cualquier origen de datos, como SharePoint, Oracle DB, Salesforce, OneDrive, Dropbox, SAP, IBM, etc. Cada conector proporciona operaciones, que incluyen desencadenadores, acciones o ambos, para que los use en el flujo de trabajo.
Por ejemplo, puede seleccionar entre muchos tipos de desencadenadores para que el flujo de trabajo automatizado se ejecute según una programación o en función de eventos específicos, como la carga de nuevos documentos en un sitio de SharePoint. Con tantas operaciones para elegir, puede crear una knowledge base y crear fácilmente una canalización de ingesta de documentos mediante incrustaciones de vectores para estos documentos en Búsqueda de Azure AI.
Para obtener más información, consulte los siguientes recursos:
- Vectores de Búsqueda de Azure AI
- Qué son las incrustaciones
- Descripción de las incrustaciones en Azure OpenAI
Generar finalizaciones
Un flujo de trabajo de Azure Logic Apps puede aceptar entradas, mientras que Azure OpenAI Service puede realizar operaciones de finalización. Estas funcionalidades significan que el flujo de trabajo puede ingerir preguntas en tiempo real, generar respuestas sobre los datos o enviar respuestas automatizadas mediante Azure OpenAI. Puede enviar inmediatamente las respuestas al cliente o a un flujo de trabajo de aprobación para la comprobación.
Para obtener más información, consulte los siguientes recursos:
- Introducción a la ingeniería de solicitudes
- Obtenga información sobre cómo generar o manipular texto
Escenario de ejemplo con código de ejemplo: Ingesta de datos y creación de interacciones de chat
En este ejemplo se muestra cómo usar los conectores de Azure OpenAI y Búsqueda de Azure AI para desglosar la lógica de back-end para ingerir datos y realizar conversaciones de chat sencillas en dos flujos de trabajo clave. Para un rendimiento más rápido, cree flujos de trabajo sin estado que, de forma predeterminada, no guarde y almacene el historial de cada ejecución.
Código de ejemplo
Creación de un chat mediante datos ingeridos
Requisitos previos
Consulte los requisitos de código de ejemplo.
Las operaciones de flujo de trabajo de este ejemplo también usan los siguientes valores de parámetro entre entornos:
Nombre de parámetro | Descripción |
---|---|
aisearch_admin_key | La clave de administrador de Búsqueda de Azure AI |
aisearch_endpoint | Dirección URL del punto de conexión del ejemplo de Búsqueda de Azure AI |
aisearch_index_name | Índice que se va a usar para el ejemplo de Búsqueda de Azure AI |
openapi_api_key | La clave de API para Azure OpenAI |
openai_deployment_id | El id. De implementación del ejemplo de Azure OpenAI |
openai_endpoint | Dirección URL del punto de conexión para el ejemplo de Azure OpenAI |
tokenize_function_url | La dirección URL de una función personalizada de Azure que agrupa por lotes y tokeniza los datos, lo que es necesario para que Azure OpenAI cree correctamente incrustaciones para este ejemplo. Para obtener más información sobre esta función, consulte el código de ejemplo para "Crear un chat mediante datos ingeridos". |
Vídeo: Aprenda a compilar aplicaciones de IA mediante aplicaciones lógicas
Aprenda a compilar aplicaciones de IA mediante aplicaciones lógicas
Ingesta de flujo de trabajo de datos
Para ahorrar mucho tiempo y esfuerzo al crear una canalización de ingesta, implemente el siguiente patrón con cualquier origen de datos. Este patrón encapsula todas las ventajas y ventajas que ofrecen actualmente los flujos de trabajo estándar en Azure Logic Apps de inquilino único.
Cada paso de este patrón garantiza que la inteligencia artificial extraiga sin problemas toda la información crucial de los archivos de datos. Si se ejecuta como un flujo de trabajo sin estado, este patrón también proporciona un rendimiento más rápido. Este enfoque simplifica no solo el aspecto de codificación, sino que también garantiza que los flujos de trabajo tengan procesos de autenticación, supervisión e implementación eficaces.
Paso | Tarea | Operaciones subyacentes | Descripción |
---|---|---|---|
1 | Compruebe si hay nuevos datos. | Cuando se recibe una solicitud HTTP | Desencadenador que sondea o espera a que lleguen nuevos datos, ya sea en función de una periodicidad programada o en respuesta a eventos específicos, respectivamente. Este evento puede ser un nuevo archivo que se carga en un sistema de almacenamiento específico, como SharePoint, OneDrive o Azure Blob Storage. En este ejemplo, la operación de desencadenador Solicitud espera una solicitud HTTP o HTTPS enviada desde otro punto de conexión. La solicitud incluye la dirección URL de un nuevo documento cargado. |
2 | Obtener los datos. | HTTP | Acción HTTP que recupera el documento cargado mediante la dirección URL del archivo de la salida del desencadenador. |
3 | Redactar detalles del documento. | Compose | Acción Operaciones de datos que concatena varios elementos. En este ejemplo se concatena información de clave-valor sobre el documento. |
4 | Cree una cadena de token. | Analizar un documento | Una acción de Operaciones de datos que genera una cadena de token mediante la salida de la acción Redactar. |
5 | Cree fragmentos de contenido. | Fragmento de texto | Una acción de Operaciones de datos que divide la cadena de token en partes, en función del número de caracteres o tokens por fragmento de contenido. |
6 | Conversión de datos con token en JSON. | Análisis del archivo JSON | Una acción de Operaciones de datos que convierte los fragmentos de cadena de token en una matriz JSON. |
7 | Seleccione elementos de matriz JSON. | Seleccione | Acción Operaciones de datos que selecciona varios elementos de la matriz JSON. |
8 | Genere las incrustaciones. | Obtención de varias incrustaciones | Una acción de Azure OpenAI que crea incrustaciones para cada elemento de matriz JSON. |
9 | Seleccione Incrustaciones y otra información. | Seleccione | Acción Operaciones de datos que selecciona incrustaciones y otra información del documento. |
10 | Indexe los datos. | Indexar documentos | Una acción de Búsqueda de Azure AI que indexa los datos en función de cada inserción seleccionada. |
Flujo de trabajo de chat
A medida que las bases de datos vectoriales continúan ingeriendo datos, asegúrese de que los datos se pueden buscar fácilmente para que cuando un usuario haga una pregunta, el flujo de trabajo de la aplicación lógica de back-end puede procesar el mensaje y generar una respuesta confiable.
El siguiente patrón es solo un ejemplo que muestra cómo podría tener un flujo de trabajo de chat:
Paso | Tarea | Operaciones subyacentes | Descripción |
---|---|---|---|
1 | Espere a que se le solicite la entrada. | Cuando se recibe una solicitud HTTP | Desencadenador que sondea o espera a que lleguen nuevos datos, ya sea en función de una periodicidad programada o en respuesta a eventos específicos, respectivamente. En este ejemplo, el desencadenador Solicitud espera y captura la pregunta del cliente. |
2 | Mensaje del sistema de entrada para el modelo. | Compose | Acción Operaciones de datos que proporciona entrada para entrenar el modelo. |
3 | Preguntas y respuestas de ejemplo de entrada. | Compose | Acción Operaciones de datos que proporciona preguntas de cliente de ejemplo y roles asociados para entrenar el modelo. |
4 | Mensaje del sistema de entrada para la consulta de búsqueda. | Compose | Acción Operaciones de datos que proporciona entrada de consulta de búsqueda para entrenar el modelo. |
5 | Generar consulta de búsqueda. | Ejecutar código de JavaScript | Una acción Código insertado que usa JavaScript para crear una consulta de búsqueda para el almacén de vectores, en función de las salidas de las acciones de Compose anteriores. |
6 | Convierta la consulta en inserción. | Obtener finalizaciones de chat | Una acción de Azure OpenAI que se conecta a la API de finalización de chat, que garantiza respuestas confiables en conversaciones de chat. En este ejemplo, la acción acepta consultas y roles de búsqueda como entrada en el modelo y devuelve incrustaciones vectoriales como salida. |
7 | Obtenga una inserción. | Obtener una inserción | Una acción de Azure OpenAI que obtiene una inserción de vector único. |
8 | Busque en la base de datos vectorial. | Vectores de búsqueda | Una acción de Búsqueda de Azure AI que ejecuta búsquedas en el almacén de vectores. |
9 | Crear solicitud. | Ejecutar código de JavaScript | Una acción Código insertado que usa JavaScript para compilar mensajes. |
10 | Realice la finalización del chat. | Obtener finalizaciones de chat | Una acción de Azure OpenAI que se conecta a la API de finalización de chat, que garantiza respuestas confiables en conversaciones de chat. En este ejemplo, la acción acepta mensajes y roles como entrada en el modelo y devuelve respuestas generadas por el modelo como salida. |
11 | Devolución de respuesta. | Respuesta | Una acción Solicitud que devuelve los resultados al autor de la llamada cuando se usa el desencadenador Solicitud. |
Consulte también
Los conectores de Azure OpenAI y Azure AI Search ahora están disponibles con carácter generalConectores de Azure OpenAI y AI Search para Azure Logic Apps (Estándar)