RAG local para la API de CAD: superando brechas de conocimiento en interfaces propietarias
Hexagon
Un ingeniero se enfrentó a la necesidad de automatizar tareas en Smart3D, pero el conocimiento de la API era un cuello de botella. Construyó un pipeline RAG local: descompiló bibliotecas, extrajo hechos, los enriqueció mediante un LLM, creó índices de incrustación e implementó un agente con verificación, de modo que el modelo genera código basado únicamente en entidades reales de la API.
Un autor que trabaja con el CAD Smart3D (Intergraph Smart 3D) de la empresa Hexagon se enfrentó a un problema de automatización: el conocimiento de la API propietaria era costoso y difícil de obtener, y los LLM públicos generaban métodos ficticios debido a la falta de datos. Decidió crear un pipeline RAG local que extrae conocimiento de las propias bibliotecas del sistema. Primero, decompiló los ensamblados compilados de Smart3D y escribió un analizador para extraer firmas, documentación XML y hechos de los cuerpos de los métodos (llamadas, excepciones, objetos creados). Luego, utilizando un modelo de lenguaje, enriqueció estos datos: formuló casos de uso y sugerencias de búsqueda, limitándose estrictamente solo a hechos confirmados. Para los embeddings, eligió el modelo multilingüe bge-m3, ya que las consultas de los ingenieros son bilingües (ruso e inglés). Los fragmentos fueron tarjetas de entidades que contenían firma, descripción, hechos y sugerencias. El resultado fue un agente que, mediante búsqueda vectorial, encuentra entidades relevantes, las utiliza como contexto para generar código en C# y verifica el resultado haciendo referencia a los datos originales. El sistema ya se está utilizando en un proyecto real para acelerar la automatización.
Fuente: Habr — хаб NLP —
original
