En nuestra serie de preguntas y respuestas «Engineering Energizers», exploramos las trayectorias de los líderes de ingeniería que han realizado notables contribuciones en sus campos. Hoy nos reunimos con Venkat Krishnamani, miembro principal del personal técnico de ingeniería de Salesforce e ingeniero principal de Salesforce Einstein’s Machine Learning (ML) Console. Esta herramienta vital para los ingenieros internos de IA y ML en Salesforce agiliza la gestión del ciclo de vida de los modelos de IA con una interfaz intuitiva, impulsando la productividad y simplificando el desarrollo de IA.
Consola ML de Salesforce Einstein
Descubra cómo el equipo de Venkat mejora la eficiencia de los desarrolladores, supera los desafíos técnicos e incorpora los comentarios de los usuarios para perfeccionar las funciones.
¿Cómo mejora ML Console la productividad interna de los desarrolladores y simplifica la gestión del ciclo de vida de los modelos de IA?
Mi equipo diseñó ML Console con un enfoque singular: Impulsar la productividad de los desarrolladores en la gestión de modelos de IA. Para ello, ML Console simplifica el ciclo de vida del modelo de IA en Salesforce Einstein. Al abordar las complejidades de los procesos operativos, permite a los desarrolladores supervisar, depurar y gestionar fácilmente los modelos desplegados, los inquilinos, las aplicaciones y las canalizaciones, reduciendo el tiempo dedicado a navegar por sistemas intrincados
La clave del éxito de ML Console es la integración de un amplio conjunto de funciones en una interfaz intuitiva. Esto no solo agiliza la gestión del flujo de trabajo, sino que también proporciona a los desarrolladores fácil acceso a los datos esenciales, lo que minimiza los errores y mejora la eficiencia. Con herramientas como el acceso directo a los registros y los comandos procesables adaptados a los requisitos dinámicos de los proyectos de IA modernos, la consola ML es un activo fundamental para los desarrolladores que pretenden navegar por las complejidades de las aplicaciones de IA.
La consola ML es un activo fundamental para los desarrolladores que pretenden navegar por las complejidades de las aplicaciones de IA
>
–>
Venkat explica lo que hace que la cultura de ingeniería de Salesforce sea única.
La cultura de ingeniería de Salesforce es única
¿Cuáles fueron los principales retos a la hora de desarrollar la interfaz de usuario para la observabilidad de datos en ML Console, y cómo se resolvieron?
El proceso de obtención y desnormalización de datos en vivo, así como su puesta en superficie, resultó ser un obstáculo importante, ya que implicaba múltiples artefactos -modelos, aplicaciones, pipelines y flujos- y servicios.
Cuáles fueron los principales retos en el desarrollo de la interfaz de usuario para la observabilidad de datos en ML Console
Otro reto al que nos enfrentamos fue determinar cómo agrupar los datos y establecer conexiones entre los diferentes artefactos a través de varios servicios. El enorme volumen de datos que había que sacar a la superficie con fines de observabilidad también supuso un reto importante. Con la posibilidad de que se generasen millones de registros al día, la gestión y la interacción con una cantidad tan grande de datos requería una planificación cuidadosa
Para hacer frente a estos retos, hemos implementado un marco de trabajo guardrails. Este marco consta de varios componentes clave, como un enrutador de API, un historial de configuración y una cola de solicitudes. Al definir las API y conectarlas entre sí, pudimos establecer conexiones entre servicios. Las configuraciones se utilizaron para ejecutar estas API y dar prioridad a las solicitudes, garantizando que los usuarios que necesitaban acceso inmediato a los datos pudieran obtenerlos a través de las capacidades de actualización de datos bajo demanda.
Servicio de actualización de datos bajo demanda
Una mirada detallada al framework guardrails.
¿Cómo aborda su equipo de ML Console la naturaleza intensiva en recursos de la búsqueda y el filtrado a través de millones de registros, dado el crecimiento continuo de los datos?
Un enfoque que empleamos es la división de datos. Al categorizar y segmentar los datos en función de las preferencias de los usuarios, nos aseguramos de que solo se indexen los datos relevantes para facilitar la búsqueda. Además, tenemos previsto crear una lista separada de las entidades y registros más buscados. Esto permitirá a los usuarios un acceso instantáneo a la hora de realizar búsquedas
En cuanto a la fiabilidad de los datos, nos centramos tanto en la retención como en la eliminación. Mientras que los datos importantes se conservan en el índice principal para las interacciones diarias, los registros más antiguos a los que ya no se accede activamente se trasladan a un índice independiente. Esto garantiza que los datos más importantes y utilizados sigan siendo fácilmente accesibles, al tiempo que se optimizan los recursos de almacenamiento
La mejora de las capacidades de búsqueda es igualmente importante. Hacemos que la búsqueda esté más orientada a la retroalimentación mediante la incorporación de características como spinners, botones de carga y tiempo estimado de finalización. De este modo, los usuarios pueden ver el progreso y los recursos necesarios para sus búsquedas
¿Cómo se garantiza la disponibilidad de los datos en tiempo real a pesar de las limitaciones y restricciones del almacenamiento de datos?
Antes, cada 24 horas, teníamos un trabajo programado que recopilaba y actualizaba los datos de todos los servicios, poniéndolos a disposición en ML Console. Sin embargo, con la integración de Event Bus, mejoraremos este proceso.
En lugar de extracciones diarias de datos, aprovecharemos las capacidades de streaming de Event Bus para identificar y actualizar solo los datos modificados. Este enfoque reduce significativamente el número de llamadas de datos, minimiza la sobrecarga de la API y optimiza el rendimiento del sistema.
Al refrescar sólo un pequeño subconjunto de los datos, podemos garantizar la disponibilidad de la información en tiempo real al tiempo que mitigamos las limitaciones y restricciones del almacenamiento de datos. Esto no sólo mejora la eficiencia, sino que también reduce la tensión en el sistema, lo que resulta en una experiencia más ágil y fiable para los usuarios.
>
Venkat explica por qué los ingenieros deberían unirse a Salesforce.
¿Cómo respalda la interfaz de usuario de ML Console la precisión de los modelos de IA y permite a los desarrolladores tomar decisiones informadas sobre el perfeccionamiento de modelos?
Nuestra interfaz de usuario permite una exploración eficiente de las respuestas de los modelos de lenguaje de gran tamaño (LLM) para determinar la idoneidad de introducir un modelo en nuestro ecosistema. También facilita la exposición del modelo para inferencias a través de un servicio de predicción y su posterior visualización en Einstein Studio. Esto se consigue a través de una integración perfecta con múltiples funciones clave:
- Evaluación del rendimiento: el centro de modelos interno es una página dedicada en la que los usuarios pueden ver todos los modelos desplegados, independientemente de su organización. Esta vista centralizada permite a los desarrolladores evaluar fácilmente el rendimiento de sus modelos.
- Comparación de respuestas de modelos: Con nuestra IU, los usuarios pueden enviar una consulta a los LLM desplegados y observar sus respuestas en una sola página. Este enfoque racionalizado simplifica el proceso de depuración y facilita los esfuerzos de ajuste selectivo.
- Comparar las respuestas de los modelos
- Cambio de modelo: el cambio entre LLMs se realiza sin esfuerzo a través de un menú desplegable en el hub de modelos. Esta flexibilidad permite a los desarrolladores interactuar con modelos específicos y evaluar su rendimiento.
- Cambio de modelo
- Análisis de toxicidad: Nuestra IU proporciona información sobre la toxicidad de las respuestas de los modelos. Estos datos ayudan a los desarrolladores a enmarcar sus estrategias de ajuste y garantizar que los resultados del modelo se ajustan a los estándares deseados. Para ello, ML Console aprovecha AI Trust Layer de Salesforce, un campo de juego de inferencias y evaluación de modelos para ofrecer perspectivas precisas de los datos.
- Preguntas frecuentes: AI Trust Layer
Un vistazo a la interfaz de usuario de ML Console
Fácil de usar
¿Cómo recogen los comentarios de los desarrolladores y los equipos internos para mejorar continuamente ML Console?
Para mejorar continuamente la interfaz de usuario y abordar los retos emergentes, empleamos diversos canales para recabar opiniones de desarrolladores y equipos internos. Estos canales incluyen:
- Slack: Tenemos un canal dedicado donde los usuarios pueden informar de problemas, proporcionar recomendaciones y sugerir mejoras. Esta plataforma fomenta la comunicación abierta entre los desarrolladores y los consumidores de ML Console.
- Slack
- Demos internas de la plataforma de IA: cada dos semanas, llevamos a cabo demostraciones para mostrar nuevas funciones y recopilar valiosos comentarios de los participantes. Esto nos permite entender cómo está siendo recibida la interfaz de usuario e identificar áreas de mejora.
- Demostraciones internas de la plataforma de Inteligencia Artificial
- Reuniones de grupos de trabajo: Celebramos reuniones con las partes interesadas y los equipos de servicio para recabar opiniones y garantizar la alineación. En estas reuniones se abordan los cambios relacionados con la interfaz de usuario o los próximos desarrollos, para garantizar que nuestra interfaz de usuario cumple las expectativas y se ajusta a los objetivos del proyecto
- Discusiones sobre la hoja de ruta: Recopilamos opiniones a través de discusiones sobre la hoja de ruta, recogiendo aportaciones a través de diferentes productos y teniendo en cuenta las necesidades y preferencias de nuestros usuarios. Esto nos ayuda a producir contenido único que se puede utilizar en toda la plataforma.
- Discusiones sobre la hoja de ruta
Utilizando estos diversos canales, podemos recopilar comentarios exhaustivos y tomar decisiones informadas para mejorar la IU de nuestra plataforma.
¿Cuál es el futuro de ML Console?
Aunque ML Console comenzó proporcionando funcionalidad para desarrolladores internos, vemos mucha sinergia y demandas similares por parte de desarrolladores externos. Estamos colaborando activamente con equipos de Salesforce para combinar nuestros esfuerzos y proporcionar una experiencia unificada tanto para desarrolladores internos como externos