Informática y Sistemas (β)

2023/03/25 - 25 marzo 2023

Administración de bases de conocimiento auxiliadas por IA

En un artículo previo mostraba el uso práctico de un bot conversacional para apoyo operativo en una intranet, ahora vamos a desmitificar un poco sobre la trastienda de estos bot (Azure Cognoscitive Services), llamada la base de conocimiento. En efecto, cualquier bot se nutre de bases de conocimiento como fuente de datos primaria, más allá de las interpretaciones de léxico auxiliadas por inteligencia artificial (IA). De hecho hay dos etapas de intervención de la IA, vamos a detallar este proceso.

El tópico que estoy describiendo específicamente de este producto son los de reconocimiento del lenguaje, obviamente en castellano aunque la mecánica aplica a cualquier otro idioma disponible en la plataforma. El bloque principal y núcleo de la funcionalidad es la base de conocimiento, donde la primera acción a realizar es alimentarlo con nuestros documentos mediante archivos, o preferentemente enlaces URL (esta segunda opción es mejor porque enlazará directamente los enlaces de imágenes al contenido ofrecido, dado que se pierden desde los archivos documentales tipo PDF o Word). Aquí es donde interviene la IA por primera vez, dado que interpretará la documentación clasificándola por ítems de conocimiento, y creará un esquema taxonómico de preguntas y respuestas en forma completamente automática. El hecho de usar IA nos asegura que los resultados no solo serán satisfactorios sino que además mejoraran continuamente dado que el servicio está centralizado y no es particular de nuestra solución. El “Language Studio” permite hacer esta acción, además de presentar luego la serie de preguntas y repuestas que generó el servicio:

Ejemplo de conjuntos de preguntas-respuestas para un bot conversacional

Además de los documentos personalizados, permite agregar un conjunto de ítems de conversación casual (propiamente chat) que le dará una personalidad al bot más allá de materia que tratan los documentos. Por supuesto qué hay variantes de personalidad que le otorgarán un carácter más casual o formal según el elegido, y que más allá de ser un aditamento de prueba es conveniente adoptar por razones más psicológicas. El que un bot pueda tener un sencillo diálogo casual ayudará a la adopción por parte de los usuarios, que más allá de obtener las frías respuestas generaran una empatía natural para promover el uso de este tipo de elemento auxiliar de la organización. Estos diálogos también son evitables y se podrán adaptar mejor a las necesidades de la organización de estimarse conveniente.

Es que la base de conocimiento recién creada es completamente editable, la imagen muestra al administrador de los conjuntos pregunta-respuesta, que más allá de tratarlo como par tiene la opción de sumarle el conjunto de preguntas equivalentes que mejoraran la precisión de la respuestas del bot, y hasta ofrece la posibilidad de desambiguar la pregunta con una elección múltiple de respuestas (un ejemplo de ello se ve en la imagen). Aquí entra en juego la segunda fase de la IA al no necesitar taxativamente cada tipo de pregunta textual posible, sino los esquemas genéricos que mejor la representen, dado que el sistema de scoring o puntuación con el que trabaja puntuará el tipo de respuesta como la más factible según la distancia relativa entre los sintagmas de preguntas ingresados y disponibles de cada respuesta. Ahí reside la gran potencia del producto, y lo que la diferencia enormemente de versiones previas, el análisis de lenguaje que permite realizar esta puntuación con mucha más cercanía al significado que a la forma.

Otro elemento que ayuda notablemente es la definición de sinónimos, referida a la asociación de varios términos que representan el mismo objeto de la vida real. Obviamente no estamos hablando de los sinónimos lingüísticos, que la IA los maneja notablemente bien, sino a aquellos que son particulares dentro de la organización y que nos interesa se interpreten de un mismo modo, más allá que por fuera del ámbito de trabajo no tengan ese sentido específico. Eso permite integrar términos de la jerga laboral y ayudar al servicio a orientarlo al elemento gramático existente que deseamos asociarlo. Por ejemplo, si dentro del ámbito laboral un datawarehouse se puede conocer por su abreviatura como DW o acompañado de su versión como DW3, se pueden establecer como sinónimos ayudando al bot a interpretar el objeto concreto al que se hacer referencia.

Todos estos puntos nos llevan a justificar un punto clave que mencioné en el artículo previo, y es la necesidad de tener roles de documentadores específicos. Como toda solución nueva en su tipo, siempre se genera una nueva necesidad que se puede cubrir a veces con recursos existentes, aunque otras veces y como en este caso implica general un nuevo tipo de rol. Concretamente un área de administración documental será necesaria tanto como se quiera potenciar el uso de las bases de conocimiento. El reunir la información documental, darle la forma necesaria para mejor interpretación de la IA, administrar la taxonomía y actualización del material, y por último configurar los sinónimos y preguntas equivalentes son tareas ciertamente no menores que necesitan de personal a mi criterio especializado, pudiendo ser bibliotecarios por dar un ejemplo. Esto se potencia aún más dado que la IA detecta las nuevas preguntas de los mismos usuarios y ofrece la posibilidad de incorporarlas por los administradores asociándola a la o las respuestas que mejor acomoden, cerrando un ciclo de vida de mejora continua con la gestión documental sobre la base de conocimiento. Como siempre, la Inteligencia de Negocios es una materia de continuo crecimiento y cada vez más multidisciplinaria.

Por supuesto que todo esto dependerá de qué tan lejos se desee llegar en este tipo de proyectos, y el balance de costo-beneficio, que en muchos casos resultará positivo porque todo esto redunda finalmente en fomentar el autoaprendizaje, evitando posiblemente muchas horas redundantes de capacitaciones extra al contar con material de consulta permanente y dirigido a dudas concretas.

2023/03/17 - 17 marzo 2023

Uso de Chat-Bots privados como guías en la Intranet

Desde hace unos meses cobró un impulso inusitado el uso de chat bots públicos, y sus intenciones ambiciosas de intentar ser un reemplazo de los motores de búsqueda y enciclopedias en línea. Sin embargo los bots conversacionales son un recurso que tienen varios años de trayectoria y que podemos experimentar en web públicas, como por ejemplo para sacar turnos en línea de atención médica. Pero además creando los propios especializados y bien empleados podemos encontrarle útiles usos internos en las organizaciones. La pregunta que vamos a responder en este artículo es: ¿qué tan inaccesible es lograr hoy esto?

Para comenzar les muestro un video muy corto, menos de 2 minutos, de una prueba piloto que llevé adelante. Estamos en una página de la Intranet corporativa donde generamos un inventario de tablas del data warehouse, para auxiliar en la búsqueda de información dentro de los modelos dimensionales. Un artículo anterior habla más en detalle de esto. A pesar de que la página es funcional a la localización de la información pertinente a las tablas de hechos y dimensiones, el hecho de que la acceden personal no familiarizado específicamente con este tipo de modelos hace que falte algo de información de contexto, y ahí es donde el bot es de gran ayuda:

Prueba piloto de chat-bots privados

Trabajando en la modalidad de que el Data warehouse sea internamente accesible a áreas que generan su propia reportabilidad, no siempre se cuenta con personal especializado en modelos de datos, y aunque se hagan las capacitaciones, los conceptos tienden a olvidarse con el paso del tiempo. Aunque siempre se puede volver sobre la documentación de la capacitación interna, la rutina diaria hace que muchas veces se necesiten repasos de los temas, y que sean fácilmente recuperados sin necesidad de hacer búsquedas exhaustivas o usando buscadores de texto que no siempre interpretan el punto solicitado. Aquí es donde un chat bot maneja el contexto desde donde se hace la consulta, y accede a una base de conocimiento especializada en los temas sobre los que trata la página actual. En efecto, los chat insertados pueden alimentarse de diferentes bases de conocimiento según la página en navegación actual. La rapidez de encontrar información de esta manera asegura de por sí un aumento de productividad, y lo que es mejor aún, despejando el camino para que los colaboradores internos logren hacer sus tareas sin frustrarse en el intento por falta de asistencia directa. Estos son puntos muy importantes a la hora de evaluar una inversión de tiempos y recursos en poblar estas bases de conocimiento.

Ahora viene la parte más interesante, con la Inteligencia Artificial (AI) de los Servicios Cognoscitivos, combinados con el Language Studio, ambos de Azure, permiten mantener las bases de conocimiento necesarias, ciclo de vida incluido; y publicarlas desde un Servicio de Bot que las presente. Todo ello basado en microservicios con poco esfuerzo de infraestructura, lo que permite poner mejor el foco en la administración del conocimiento. El proceso de alimentación es muy simple, se cargan los archivos y páginas web como fuentes de información, y la AI se encarga de interpretar y crear todo el conjunto de preguntas y respuestas, usando uno de los servicios dedicado especialmente a este fin. El proceso total no tiene mayores complicaciones y está muy bien documentado.

Si bien para la versión del video se usaron las versiones gratuitas de todos los servicios asociados, los costos reales de los servicios de pago no son elevados, y las versiones más económica son por demás generosas para un uso interno. El punto a evaluar entonces es lo que implica auxiliarse de estos recursos.

Lo primero a considerar es que debemos disponer de una base de conocimiento de la organización, es decir una serie de documentos que expliquen la naturaleza de los procesos sobre los que deseamos que el bot ayude. El grado de madurez de la organización juega un rol importantísimo en esta instancia, dado que no disponer de documentación interna puede echar por tierra el proyecto desde un comienzo. En el caso que se cuente o se decida confeccionar documentación interna, el punto siguiente es tener personal dedicado a ordenar, y clasificar la información útil. Probablemente deban transcribirse en algunos casos los documentos si es que la AI no llega a interpretarlos correctamente, o si quedaron mal rotuladas las preguntas base corregirlas en el entorno de pruebas del Language Studio, para lo cual evidentemente necesitamos cubrir esas posiciones con documentadores. Como el ciclo de vida realimenta la base de conocimiento con las nuevas preguntas generadas por lo colaboradores, el proyecto no termina con el lanzamiento sino que además se mantiene con cierta frecuencia para mejorar las actividades de relación entre preguntas y respuestas que la misma AI aporta. Puede que todo este tratamiento evolutivo no necesite una ocupación total, pero la misma crecerá en función de la cantidad de bases de conocimiento generadas y la cantidad de información que maneje cada una.

Como comenté al inicio del artículo, el tema de chat bots está muy de moda, y esto genera un incentivo más para que los usuarios hagan uso de los mismos. Basado en mi experiencia anterior con el buscador de metadata SQL, este tipo de iniciativa puede tener en forma análoga un alto impacto positivo, dar confianza a los colaboradores, y finalmente una mejora productiva importante. Además tengamos en cuenta que las nuevas generaciones están muy acostumbradas a tratar con redes sociales, y aprovechar este canal similar como vehículo de transmisión de conocimiento garantiza que las aprovecharan naturalmente, y más confiados que con solo disponer de una interminable biblioteca de documentos electrónicos acumulados.

Como estoy en una etapa experimental de esta funcionalidad, son bienvenidas las opiniones de quienes hayan implementado soluciones de intranet similares.

Crea un blog o un sitio web gratuitos con WordPress.com.