El equipo de Granite ha presentado LLMON, un lenguaje de marcado diseñado para modelos de lenguaje, y publica dos modelos de previsualización experimental, granite-4.1-3b-LLMON-preview y granite-4.1-8b-LLMON-preview. Según sus autores, este formato hace explícitas la estructura y el significado de la información proporcionada al modelo, lo que refuerza su resistencia a las inyecciones de prompt.
Un gran modelo de lenguaje (LLM) genera cada nuevo token, es decir, cada fragmento de texto, a partir de su contexto. A lo largo de una interacción larga, este contexto se llena de prompts del sistema, historiales de conversación, instrucciones sobre documentos, respuestas de herramientas, datos del usuario, restricciones y cadenas de razonamiento. Gran parte de esta estructura permanece implícita para el modelo o está codificada en formatos como JSON, que no fueron diseñados para ser leídos por LLMs. Según la fuente, esto explica en parte la fragilidad de los modelos, especialmente los más pequeños, así como algunos comportamientos inesperados. Esta falta de estructura también puede ser explotada por atacantes, por ejemplo, mediante inyecciones de prompt.
LLMON, por «LLM Object Notation», se pronuncia «lemon». Sus etiquetas marcan componentes semánticamente coherentes, enmarcados por delimitadores especiales reservados. Identificadores únicos permiten vincular una instrucción, que puede estar en cualquier parte del contexto, con los datos sobre los que debe actuar, de manera similar a una llamada de función con sus argumentos en programación.
Separar instrucciones y datos
Una inyección de prompt indirecta consiste en ocultar una instrucción maliciosa en un dato, como un documento recuperado, una respuesta de una herramienta o una entrada del usuario. Según la fuente, los modelos LLMON ignoran en gran medida estas instrucciones ocultas, gracias a la separación explícita entre instrucciones y datos. En algunos benchmarks, la tasa de éxito de los ataques cae casi a cero, mientras que los modelos clásicos ajustados por instrucciones son desviados con una alta probabilidad.
Los autores compararon las previsualizaciones con varios modelos de código abierto y propietarios en el benchmark OPI, que inserta la inyección en los datos de tareas clásicas de procesamiento del lenguaje. Miden la robustez como «1 − tasa de éxito de los ataques». Según ellos, LLMON «elimina prácticamente el problema» en esta prueba, evitando un 47 % más de ataques que el mejor modelo de vanguardia probado, y un 95 % más que el mejor modelo de código abierto. Se observan tendencias similares en los benchmarks ASB y StruQ. La fuente precisa que estas pruebas se centran en inyecciones estáticas, y que el equipo sigue trabajando en los ataques adaptativos, que se despliegan en varios turnos de conversación.
Capacidades generales y entrenamiento
Según la fuente, las ganancias en seguridad no se hacen en detrimento de las capacidades generales: en las grandes categorías de benchmarks estándar, los modelos LLMON obtienen resultados comparables a los de los modelos Granite 4.1 Instruct. Para probarlo, basta con nombrar las partes de un turno de conversación, como instrucción, dato o requisito; la plantilla de conversación se encarga de transformarlas en bloques LLMON. Una biblioteca de conversión también permite tratar datos estructurados, como JSON, en forma de bloques tipados y direccionables.
Los modelos parten de los puntos de control base de Granite 4.1 y no de las versiones instruct publicadas. Los autores reescribieron un corpus clásico de ajuste por instrucciones al formato LLMON, luego añadieron bloques señuelo, presentes en el contexto pero deliberadamente no vinculados. Después aplicaron cinco etapas de aprendizaje por refuerzo GRPO, seguidas de una etapa DPO basada en mil pares de preferencias extraídas de las respuestas del modelo a intentos de inyección. El resultado, según la fuente, es una regla de privilegio: una instrucción llamada por un bloque de ejecución tiene autoridad, mientras que los datos, documentos o resultados de herramientas siguen siendo elementos para leer, y no órdenes a seguir. Los autores precisan que se trata de un comportamiento aprendido, y no de una garantía impuesta.
La fuente presenta también un ejemplo de adaptación en el benchmark ScienceWorld, donde un agente realiza tareas científicas elementales. Se definió un vocabulario de etiquetas propio para esta tarea, y luego se entrenó un adaptador LoRA sobre un modelo LLMON. Se invita a los equipos a compartir sus comentarios en los GitHub Discussions, ya que el proyecto sigue siendo, según sus autores, una previsualización experimental, no destinada a producción.
