Ir al contenido
CoMLRL
Guía del usuario

Preguntas y respuestas

Traducido automáticamente con translategemma:4b Original en inglés

¿Cuáles son las diferencias entre CoMLRL y otros marcos de entrenamiento multi-LLM?

Muchas plataformas de desarrollo soportan el entrenamiento de sistemas multi-agente basados en LLM, específicos para cada rol (PettingLLMs, Dr. MAS, MARTI). La mayoría están formuladas como juegos estocásticos parcialmente observables (POSGs), en los que cada agente tiene su propia recompensa. Las reglas de recompensa creadas manualmente para cada agente o rol hacen que las señales de entrenamiento sean más densas, pero son difíciles de diseñar.

Cooperativo MARL ha sido estudiado durante mucho tiempo y normalmente se formula como Dec-POMDP. En un Dec-POMDP, todos los agentes comparten una única recompensa, por lo que la política conjunta óptima es, en teoría, globalmente óptima para la colaboración. Esta formulación también permite a los agentes encontrar tareas más específicas a partir de roles divididos (ver el CoopHumanEval dominio de codificación). Además, a diferencia de los enfoques de compartición de parámetros, CoMLRL principalmente apoya la optimización de sistemas de verdaderamente distintos LLM agentes, lo que representa mejor los entornos heterogéneos LLMs con diferentes capacidades y refleja directamente el entorno multiagente.

¿CoMLRL soporta entrenamiento de agente único RL después del entrenamiento?

Sí. Los usuarios pueden configurar num_agents=1 para un solo agente RL después del entrenamiento siguiendo la Guía de inicialización Sin embargo, CoMLRL prioriza el entrenamiento multi-agente simple y omite algunas optimizaciones específicas para el caso de un solo agente. Para el entrenamiento de un solo agente, LLaMA-Factory, trl, OpenRLHF, y verl son mejores opciones.

¿CoMLRL soporta auto-juego o RSI con RL después del entrenamiento?

Sí. CoMLRL apoya de varios turnos RL después del entrenamiento, para que las interacciones con el entorno puedan ser personalizadas para estas tuberías.

El auto-juego (Spiral, SPADE) y la auto-mejora (MAFT) se pueden implementar con un solo agente en un trainer (num_agents=1), cuyo ajuste externo modifica un prompt de estilo de auto-juego en cada turno, por ejemplo, cambiando el rol del agente o pidiéndole que revise su respuesta anterior.

El auto-mejoramiento recursivo multi-agente (RSI) es más complejo: cada agente se ejecuta en su propio trainer, y el sistema coordina estos trainers. En cada turno, el sistema envía diferentes prompts a uno o más trainers para recopilar las respuestas de sus agentes, y desencadena el entrenamiento de cada trainer en sus pasos programados, por ejemplo, alternando entre agentes.

¿CoMLRL soporta entrenamiento distribuido?

CoMLRL puede colocar modelos completos, como actors, critics, y modelos de recompensa, en diferentes GPUs de una sola máquina con parallel_training="mp". No proporciona entrenamiento en paralelo multi-proceso ni particiona un solo modelo en dispositivos. Paralelización del Entrenamiento describe la configuración del dispositivo.

¿Puedo utilizar el intercambio de parámetros para guardar VRAM?

Sí. Como se describe en Entrenar Entidades, agents acepta objetos de modelos cargados, por lo que se puede pasar un modelo cargado para cada agente. Los agentes comparten sus pesos, y los formatters pueden asignarles diferentes roles. Cada agente mantiene su propio estado de optimizador, por lo que compartir ahorra memoria para los pesos y los gradientes, pero no para los estados del optimizador.

¿Puedo utilizar LoRA o entrenamiento de menor precisión para guardar VRAM?

No recomendado. En nuestros extensos experimentos, ni PEFT métodos como LoRA ni el entrenamiento con menor precisión funcionaron bien. LoRA no pudieron ajustar completamente los modelos, y los cambios efectivos pueden incluso requerir modelos más grandes LoRA adaptadores, lo que puede aumentar el uso de memoria. En cambio, se puede utilizar el intercambio de parámetros cuando los agentes comienzan con modelos con un rendimiento inicial similar, y el checkpointing de gradientes puede reducir la memoria de activación, aunque estos enfoques no se han probado ampliamente. Los usuarios pueden probarlos y compartir sus hallazgos en CoMLRL problemas.