Creando aplicaciones de IA con Semantic Kernel
Con Semantic Kernel puedes crear agentes que interactúan con tu código, automatizando procesos de negocio con modelos de OpenAI, Azure OpenAI, Hugging Face, y muchos otros.
Sin embargo los usuarios suelen preguntar: «¿Cómo diseño mi solución?» y «¿Cómo funciona realmente?».
En esta entrada de blog se explican los componentes clave de Semantic Kernel (plugins, planificadores y personas) y cómo puedes combinar Semantic Kernel con tus aplicaciones y servicios existentes.
¿Qué es un plugin?
Los plugins son los componentes fundamentales de Semantic Kernel. Si ya has utilizado plugins de ChatGPT, Bing o Microsoft 365, ya estás familiarizado con ellos. Con los plugins, puedes encapsular capacidades en una única unidad de funcionalidad que puede ser utilizada por una IA. Dado que los plugins son los mismos en todas las plataformas, puedes usar los mismos plugins a sus propias aplicaciones impulsadas por IA con Semantic Kernel.
Los plugins son altamente adaptables; pueden consistir tanto en código nativo como en peticiones a servicios de IA a través de prompts. Algunos ejemplos son
- Plugin de búsqueda web: Da a la IA la capacidad de buscar en la web información actual que podría no existir en sus datos de entrenamiento.
- Complemento CRM: Permite a la IA recuperar información sobre los clientes y realizar ajustes a medida que se recibe nueva información.
- Complemento de correo electrónico: Permite a una IA enviar y recibir correos electrónicos en nombre de un usuario.
- Complementos de inventario: Le da a una IA la capacidad de ver lo que está en stock para que pueda dar recomendaciones a los empleados y clientes por igual.
- Plugin de generación de imágenes: Puede aumentar una IA con capacidades de otros modelos de IA, como un servicio de conversión de texto a imagen.
- Complemento de Microsoft 365: Permite a una IA utilizar aplicaciones de Microsoft 365, como Microsoft Word para que pueda editar documentos en nombre de un usuario.
Uso de plugins con Semantic Kernel
Lo que hace potente a Semantic Kernel es su capacidad para combinar la petición de un usuario con sus plugins disponibles. En el siguiente ejemplo, un usuario envía una petición a un agente. A continuación, el agente transmite la solicitud a Semantic Kernel, donde se combina con la potencia de los plugins y una persona.
Dentro de cada plugin, se pueden asignar acciones al agente. Estas acciones pueden ser llamadas a la API (por ejemplo, obtener datos de Microsoft Graph), acceso a la memoria (por ejemplo, obtener respuestas de documentos) o funciones nativas (por ejemplo, obtener la hora actual).
Con un «persona» definido, puedes orientar a cómo debe ayudar el agente al usuario. ¿Es sarcástico? ¿Es cuidadoso? ¿Hay cosas que debería o no debería hacer?
Una vez definidos estos componentes, Semantic Kernel puede enviar una única solicitud que combine la petición del usuario, los plugins y la persona a un modelo de IA (OpenAI ChatGPT, AzureOpenAI, Gemini, Mistral AI, etc.) para que puedas planificar la mejor forma de alcanzar el objetivo del usuario.
Por último, el agente transmite la respuesta de la IA al usuario.
Cómo recrear Microsoft Word Copilot
Probablemente estés familiarizado con Microsoft Word y otras aplicaciones de productividad M365. Los plugins son un componente clave para el funcionamiento de los copilotos en estas aplicaciones. El siguiente escenario se centra en cómo Word utiliza los plugins para responder a la solicitud de un usuario de añadir un párrafo sobre la historia de la IA a un documento existente. En este ejemplo, hemos dado al Copiloto de Word acceso a plugins para buscar en la web, recuperar recuerdos anteriores sobre el documento y la capacidad de manipular el documento.
En este escenario, la IA puede utilizar estos plugins para buscar en la web antecedentes sobre IA, recuperar otras referencias sobre IA en el documento actual y añadir un nuevo párrafo con el contenido final. Cuando el modelo de IA decide que quiere utilizar estos plugins, envía una petición a Semantic Kernel para invocarlos.
Una vez que la IA ha terminado de realizar las acciones, puede transmitir una respuesta final de la IA al usuario informándole de que el párrafo se ha añadido al documento de Word.
Crea tu propio Copilot con Semantic Kernel
Si quieres crear tu propio copiloto dentro de tu aplicación basada en IA, puedes seguir un patrón similar al de los copilotos de Microsoft 365. La única diferencia es que tú crearás tu propio copiloto con Semantic Kernel y proporcionarás a Semantic Kernel sus propios plugins personalizados. En el siguiente diagrama puedes ver cómo crear plugins que llamen a tu servicio de aplicación existente.
En el ejemplo anterior, el usuario pide a la IA que cree una infografía. Para soportar este tipo de escenario, necesitarías proporcionar a Semantic Kernel un plugin que pueda extraer la información relevante de una base de datos. Es probable que ya dispongas de APIs que soporten estos escenarios, por lo que la creación de estos plugins debería ser sencillo.
Información basada en Architecting AI Apps with Semantic Kernel.