Lab 3: Gobernando un prompt de IA generativa sobre un modelo externo (Azure OpenAI)
Prerrequisitos
- Antes de comenzar este laboratorio, debes haber completado los pasos 2 y 3 del Lab 1: Gobernando prompts de IA generativa, para tener configurados el Project y Deployment space.
- Además, debes tener a mano las credenciales del Cloud Pak for Data en el que estás trabajando y las de acceso a Azure OpenAI.
En este laboratorio, gobernarás un prompt para modelo fundacional de una plataforma externa, Azure OpenAI. En este caso, el departamento de soporte quiere utilizar un modelo de IA generativa para generar una propuesta de acciones para el agente asignado a un ticket de soporte, lo que creen que también reducirá significativamente la carga de trabajo del equipo y los tiempos de respuesta. De nuevo, es necesario configurar un sistema capaz de monitorizar y evaluar el prompt para atajar sus preocupaciones antes de ponerlo en producción.
Para esto, configurarás un activo de watsonx.ai llamado Detached Prompt Template, haciendo uso de las APIs disponibles para la plataforma y viendo cómo se integran con la interacción vía interfaz.
1. Definir un Caso de Uso de IA
Debes crear un AI use case para gobernar el prompt de resumen de tickets.
-
Abre el menú lateral en la esquina superior izquierda.
-
Haz click en el item AI Governance para desplegarlo.
-
Haz click en el item AI use cases.
-
Pulsa el botón de New AI use case, que abrirá una nueva ventana.
-
Pon un Name al caso de uso.
-
Pon una Description para la necesidad de negocio que se está intentando resolver.
-
Utiliza el desplegable para asignar el Risk Level apropiado.
-
Utiliza el desplegable para asignar el Inventory apropiado.
-
Asigna un Status en el desplegable del lateral derecho.
-
Pulsa Create. Después de unos minutos, el caso de uso estará creado.
-
Baja hasta la sección Associated workspaces, dónde están las tres etapas del ciclo de vida del modelo: Develop, Validate, y Operate. Los espacios de trabajo (Projects o Deployment spaces) pueden asociarse con cualquiera de estas etapas. En la ficha Development, pulsa en Associate workspace, lo que abrirá una ventana.
-
En la sección Projects, marca el proyecto creado previamente.
-
Haz click en Save para guardar esta asociación.
-
Repite para la ficha Validation, marcando el espacio creado previamente.
2. Crea un Prompt Template para un modelo externo
En esta sección crearemos el Detached Prompt Template. Este activo no se puede generar desde la interfaz, por lo que utilizaremos la API de watsonx.governance en un notebook en el proyecto.
-
Abre el menú lateral en la esquina superior izquierda.
-
Haz click en el item Projects para desplegarlo.
-
Haz click en el item All projects.
-
Abre el proyecto creado previamente.
-
Pulsa el botón de New asset, que abrirá una nueva ventana.
-
Haz click en Work with data and models in Python or R notebooks with Jupyter notebook editor, lo que abrirá una nueva ventana.
-
Pulsa en la opción Local file.
-
Asigna un Name.
-
Sube este notebook en Notebook file.
-
Pulsa Create.
-
Una vez abierto el notebook, ejecuta cada una de las celdas siguiendo las instrucciones, y editando los valores requeridos de las credenciales.
¿Dónde puedo encontrar las credenciales?
Credenciales Cloud Pak for Data
- CPD_URL: la URL del Cloud Pak con el que estás trabajando. Simplemente, copia la URL de la barra de dirección.
- CPD_USERNAME: el usuario que utilizas para iniciar sesión en el Cloud Pak.
-
CPD_APIKEY: una API key generada para tu usuario. Deberás crearla y guardarla en un lugar seguro, ya que no podrás recuperarla sin revocarla.
-
PROJECT_ID: el identificador del Project donde se desplegará el Detached Prompt Template.
Credenciales Azure OpenAI
Te las proporcionará el equipo de la formación.
-
Al finalizar la ejecución, habrás creado un Detached Prompt Template disponible como activo en el proyecto.
3. Trackea el Prompt Template para un modelo externo
En este paso se busca asociar el detached prompt template al AI use case creado previamente, para realizar el seguimiento del modelo y poder visualizarlo en su ciclo de vida.
-
Localiza el Detached Prompt Template creado, y pulsa en los tres puntos del lateral derecho para abrir el menú.
-
Pulsa en Go to AI Factsheet, para abrir la ficha del prompt template.
-
Revisa la información recopilada en esta pantalla, incluyendo datos sobre el modelo fundacional externo en el que se construye, el prompt, y su tarea.
-
Sube hacia la primera sección, y pulsa Track AI use case para asignar el detached prompt template al caso de uso creado.
-
Selecciona el último AI use case creado y pulsa Next.
-
En la pantalla Define approach, deja el Default Approach y pulsa Next.
-
Deja seleccionada la opción Experimental y haz clic en Next para avanzar a la pantalla de revisión (Review).
-
Haz clic en Track asset para comenzar a rastrear el modelo.
-
La AI Factsheet se recargará e incluirá la información del caso de uso.
4. Evalúa el Prompt Template para un modelo externo
En esta sección evaluaremos el Detached Prompt Template de nuevo desde un Jupyter notebook haciendo uso de la API de OpenScale.
-
Repite los pasos de la sección 2 para subir este notebook al proyecto.
-
Ejecuta cada una de las celdas siguiendo las instrucciones, y editando los valores requeridos de las credenciales.
¿Dónde puedo encontrar las credenciales y el asset ID?
Credenciales Cloud Pak for Data
- CPD_URL, CPD_USERNAME, CPD_APIKEY, PROJECT_ID: los mismos valores que utilizaste en el paso 2.11
-
ASSET_ID: el identificador del Detached Prompt Template creado.
-
Al finalizar la ejecución, habrás evaluado un Detached Prompt Template, y los resultados estarán disponibles en la AI Factsheet asociada.
5. Tarea: Explora OpenScale
¡Hazlo tú!
Explora la interfaz de OpenScale:
6. Tarea: Genera un report del Prompt Template
7. Conclusiones
¡Enhorabuena! Has completado este laboratorio.
¿Qué hemos aprendido?
- Hemos el SDK de Python del servicio de AI Factsheets para interactuar con watsonx.governance.
- Hemos utilizado el SDK de Python del servicio de IBM Watson OpenScale para interactuar con watsonx.governance.
- Hemos creado y evaluado un Prompt Template sobre un modelo externo a la plataforma de watsonx.ai.