es un concepto en el que se almacena una gran cantidad de información y se hace accesible para uso futuro. Esto es increíblemente poderoso para:
Mejor toma de decisiones Recoger rápidamente el contexto pasado Alinear a su equipo
Últimamente, he empezado a trabajar mucho para configurar una base de conocimientos y dirigir la mayor cantidad de contexto posible a ella para ayudarme a mejorar todos los puntos anteriores. Las bases de conocimiento siempre fueron útiles incluso antes de los LLM, porque siempre es útil acceder a conocimientos anteriores. Sin embargo, las bases de conocimiento se han vuelto exponencialmente más poderosas gracias a los LLM.
Esto se debe a dos razones principales:
Puede capturar más información en las bases de conocimientos. Puede consultar más fácilmente la base de conocimientos (no es necesario revisarla manualmente).
En este artículo, cubriré por qué debería configurar su propia base de conocimientos basada en LLM, cómo capturar la mayor cantidad de información posible y cómo utilizar activamente la base de conocimientos.
He estado discutiendo este tema un poco antes, pero cada vez me gusta más el tema de las bases de conocimiento debido a lo popular que se ha vuelto. Por ejemplo, tiene al presidente de Y Combinator construyendo GBrain, o a Andrej Karpathy construyendo una wiki de LLM, ambos ejemplos de bases de conocimiento.
Por supuesto, no existe una verdad fundamental sobre cuál es la forma óptima de construir una base de conocimientos. Creo que lo más importante es comenzar a almacenar todo su contexto en una base de conocimientos y descubrir cómo consultar la base de conocimientos de manera efectiva todo el tiempo, por ejemplo, al escribir código, en reuniones o similar.
Por qué deberías tener una base de conocimientos
En primer lugar, me gustaría explicar por qué debería tener una base de conocimientos. Puedes tener diferentes bases de conocimiento. Por ejemplo, puede tener una base de conocimientos personal que consta de todo el contexto que tiene personalmente, o puede tener una base de conocimientos para toda la empresa que consta de conocimientos o contexto que posee la empresa.
La razón por la que debería tener una base de conocimientos es que la información es extremadamente valiosa. Cuanta más información pueda almacenar y luego acceder a ella cuando sea necesario, mejor será su desempeño. Por ejemplo, podrás:
Tome mejores decisiones porque tiene acceso a más contexto. Recoja más rápidamente temas anteriores sin tener que buscar en una variedad de fuentes diferentes para encontrar la información que tenía sobre el tema. Alinee a diferentes personas porque tienen una única fuente de verdad.
Los mismos conceptos se aplican básicamente tanto si tiene una base de conocimientos personal como si tiene una base de conocimientos para toda la empresa. También creo que estas bases de conocimiento se han vuelto mucho más poderosas porque puedes consultarlas con LLM. Anteriormente, habría tenido que buscar manualmente en la base de conocimientos para encontrar información relevante. Tendría que usar su propia memoria para recordar si cierta información está almacenada en la base de conocimientos y luego decidir si dedica tiempo a buscar esa información o no.
Ahora eso ha cambiado completamente. El LLM puede consultar la base de conocimientos, por ejemplo, con un enfoque tipo RAG, y encontrar automáticamente información relevante de inmediato. El LLM puede decidir por sí mismo cuándo necesita utilizar la base de conocimientos.
Es decir, se elimina por completo la capa, el requisito de intervención humana, para acceder a la información en una base de conocimientos, lo que la hace mucho más poderosa.
Capturar información en la base de conocimientos.
El primer paso de la base de conocimientos es, por supuesto, capturar información en la base de conocimientos. Dependiendo de cómo se construya su base de conocimientos, esto puede suceder de diferentes maneras.
Sin embargo, lo primero que le recomiendo que haga es pensar en todas las diferentes fuentes de información a las que tiene acceso, ya sea personalmente o en la empresa. Estos son, por ejemplo:
Reuniones Tu herramienta de gestión de proyectos, como Linear. Su agente de codificación, como Claude Code o Codex. ¿En qué ha estado trabajando últimamente con estos modelos (y qué tareas se completan)? Discusiones en la oficina física.
Probablemente se te ocurran muchas otras fuentes de información diferentes. Por supuesto, esto depende un poco de cómo trabajas y dónde trabajas. El punto es que usted debe mapear todas estas diferentes fuentes de información y debe encontrar una manera automática de encaminar la información de estas fuentes a su base de conocimientos.
Usted y otras personas no estarán dispuestos a dedicar más tiempo a poner cosas manualmente en bases de conocimiento. Debe encontrar una manera de hacer esto automáticamente para tener su base de conocimientos actualizada.
Es importante que automatice completamente el enrutamiento de la información desde la fuente a la base de conocimientos. Si necesita un paso manual (por ejemplo, pegar notas de reuniones en la base de conocimientos), definitivamente lo olvidará y perderá un contexto importante, lo que va en contra del concepto completo de la base de conocimientos. El objetivo de la base de conocimientos es que almacenas absolutamente toda la información allí y no omites nada. Eso es lo que hace que una base de conocimientos sea tan poderosa.
Por ejemplo, con las notas de las reuniones, puede tener una tarea cron que se sincronice diariamente. Toma cada nota de reunión que todos en la empresa han tenido o que usted ha tenido personalmente y la almacena en una base de conocimientos. Puede configurar un trabajo cron similar para su herramienta Linear o de gestión de proyectos para sincronizar todo lo que sucedió allí. Sincronice su agente de codificación con aquello en lo que ha estado trabajando y todo lo que haya discutido con su agente de codificación, etc. Todo esto se puede sincronizar fácilmente con la base de conocimientos con un trabajo cron diario.
Las discusiones en la oficina física son un punto que es más difícil de automatizar por completo. Todavía no he podido resolver esto por completo, pero dos opciones serían:
registrar todo lo que sucede en todo momento, lo que por supuesto requeriría consentimiento o simplemente escribir las cosas manualmente después de una discusión en la oficina
Sin embargo, creo que es posible que ni siquiera necesite almacenar explícitamente las discusiones de la oficina, porque la mayoría de las veces, después de tener una conversación físicamente en la oficina, la persona con la que tuve la conversación o yo tomaremos el contexto de esa discusión y lo escribiremos en su agente de codificación. Esa discusión generalmente se produjo debido a una pregunta sobre una implementación, por lo que si ese conocimiento se utiliza activamente en su agente de codificación posteriormente, puede obtenerlo de los registros del agente de codificación.
Entonces, si completó este paso con éxito y almacenó todo el contexto que encuentra todos los días en su base de conocimientos, habrá realizado la mayor parte del trabajo. Ésta es la parte difícil de la base de conocimientos. En la siguiente sección, cubriré la parte más fácil, que consiste en utilizar activamente esa información de la base de conocimientos al tomar decisiones o interactuar con sus agentes de codificación.
Utilizar información de la base de conocimientos.
Si tiene una base de conocimientos sincronizada con toda la información que necesita, ahora puede pasar a utilizar esta información activamente. Creo que hay dos enfoques principales para utilizar la información de una base de conocimientos:
Puede consultar la base de conocimientos si tiene alguna pregunta. Por supuesto, esto debe hacerse a través de su agente de codificación. Le haces una pregunta y él debe saber que debe consultar la base de conocimientos para encontrar la respuesta. La segunda es hacer que el agente codificador utilice pasivamente la base de conocimientos siempre que funcione.
Creo que la primera aplicación aquí se explica por sí misma. Simplemente hazle la pregunta cuando no estés seguro de algo. Es por eso que dedicaré más tiempo a discutir el segundo punto aquí.
Hacer que el agente de codificación utilice pasivamente la base de conocimientos siempre que funcione, por ejemplo, para implementar un código, corregir un error, etc. Es muy poderoso. Una vez más, creo que hay dos enfoques principales para hacer esto.
Inferencia basada en grep
Una es tener un archivo de rebajas de nivel superior en la base de conocimientos que explique toda la base de conocimientos y dónde se encuentra la información diferente. Este archivo, por supuesto, se actualiza cada vez que agrega más información a la base de conocimientos.
La ventaja de este enfoque es que utiliza grep, que suele ser más potente que la búsqueda basada en incrustaciones porque puede encontrar mejor la información correcta cuando es necesaria. Sin embargo, esto también requiere que coloques ese archivo de rebajas en el contexto del LLM que estás usando todo el tiempo. Este archivo de rebajas puede crecer bastante, lo que puede convertirse en un problema después de un tiempo.
Inferencia basada en incrustación
La segunda forma de utilizar activamente la base de conocimientos es mediante inferencia basada en incrustaciones. Para esto está hecho GBrain. Básicamente, cada vez que ejecuta una consulta, ejecuta una búsqueda incrustada, como un RAG en la base de conocimientos, y recupera algunos fragmentos relevantes de la base de conocimientos. Si el LLM cree que ha obtenido información relevante mediante la búsqueda integrada, puede buscar más en los archivos relevantes.
Creo que este es probablemente el mejor enfoque para usar la base de conocimientos durante la inferencia porque no requiere una búsqueda activa y no requiere gastar muchos tokens de entrada en la base de conocimientos para todo lo que haces.
Sin embargo, qué enfoque funciona mejor definitivamente dependerá de sus casos de uso.
Conclusión
Considerándolo todo, les insto a:
Intente configurar una base de conocimientos Escriba tanta información como sea posible en ella Lea cómo otros han configurado estas bases de conocimientos Intente configurarla usted mismo
Entonces deberías utilizar activamente esta base de conocimientos siempre que trabajes en tu computadora usando un agente de codificación (que básicamente debería ser para todo el trabajo que hagas). Creo que las bases de conocimiento serán increíblemente poderosas y valiosas en los próximos años, y también pueden brindarte un foso porque tener acceso a mucha información será una ventaja definitiva en el futuro. Además, se trata de datos específicos de tu empresa o de tu contexto personal a los que, en muchos casos, sólo tú tienes acceso. Por lo tanto, si no la almacena, nunca más podrá acceder a esa información en el futuro.
👋 Ponte en contacto
👉 Mi libro electrónico y seminario web gratuitos:
🚀 10 veces su ingeniería con LLM (curso gratuito por correo electrónico de 3 días)
📚 Obtenga mi libro electrónico gratuito sobre Modelos de lenguaje de visión
💻 Mi seminario web sobre modelos de lenguaje de visión
👉 Encuéntrame en las redes sociales:
💌 Subpila
🐦X/Twitter