Combina múltiples adaptadores LoRA para Llama 2

Combina múltiples adaptadores LoRA para Llama 2 y multiplica tus opciones de conectividad

Agrega habilidades a tu LLM sin afinar nuevos adaptadores

Imagen del autor - Hecho con una imagen de Pixabay

Afinar por completo un modelo de lenguaje grande pre-entrenado (LLM) para diferentes tareas es muy costoso. En cambio, podemos congelar los parámetros del LLM y solo afinar unos pocos millones de parámetros entrenables agregados a través de un adaptador LoRA.

En otras palabras, solo necesitamos afinar un adaptador para que el modelo realice una tarea objetivo. Por ejemplo, si queremos convertir un LLM pre-entrenado en un modelo de traducción, afinaremos un adaptador para la traducción. Podemos afinar un adaptador para cada tarea que queramos que el LLM realice.

Pero ¿podemos combinar varios adaptadores para obtener un único adaptador multitarea?

Por ejemplo, si tenemos un adaptador para la traducción y otro adaptador para la resumenización, ¿podemos combinar ambos para que el LLM pueda hacer traducción y resumenización?

En este artículo, muestro cómo combinar múltiples adaptadores LoRA en un único adaptador multitarea. Veremos que es muy simple y que el adaptador resultante puede ser tan bueno como los adaptadores utilizados para la combinación.

Usando Llama 2 7B, veremos cómo combinar un adaptador afinado para la traducción con otro adaptador afinado para el chat. Con el adaptador resultante, podremos hacer un Llama 2 que pueda traducir y chatear.

También he implementado un cuaderno que puede ejecutar todo el código explicado en este artículo. Puedes encontrarlo aquí:

Obtén el cuaderno (#30)

Agregar Múltiples Adaptadores a Llama 2

Antes de combinar adaptadores, debemos agregarlos al LLM base.

Debemos asegurarnos de que el adaptador que queremos agregar haya sido afinado para nuestro LLM base, es decir, Llama 2 7B. Puedes encontrar esta información en el archivo “adapter_config.json” que se encuentra en el directorio del adaptador. Por ejemplo, para kaitchup/Llama-2-7B-oasstguanaco-adapter (licencia MIT), el adapter_config.json contiene los siguientes datos:

{  "auto_mapping": null,  "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",  "bias": "none",  "fan_in_fan_out": false,  "inference_mode": true,  "init_lora_weights": true,  "layers_pattern": null…

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Desbloqueando el poder del contexto con Google IA una competencia entre prefixLM y causalLM en el aprendizaje en contexto

La Guerra de Troya es famosa, donde Aquiles grabó su nombre en la historia para siempre al derrotar al príncipe Hécto...

Inteligencia Artificial

Más allá de Photoshop Cómo Inst-Inpaint está revolucionando la eliminación de objetos con modelos de difusión

El inpainting de imágenes es un arte antiguo. Es el proceso de eliminar objetos no deseados y rellenar píxeles faltan...

Ciencia de Datos

La IA se está comiendo la Ciencia de Datos.

Cuando todo esté dicho y hecho, y la Inteligencia Artificial haya sido universalmente reconocida como nuestros legíti...

Aprendizaje Automático

Rendimiento sobrehumano en la prueba Atari 100K El poder de BBF - Un nuevo agente de RL basado en valores de Google DeepMind, Mila y la Universidad de Montreal.

El aprendizaje por refuerzo profundo (RL) ha surgido como un algoritmo de aprendizaje automático poderoso para aborda...

Inteligencia Artificial

Utilizando el lenguaje para dar a los robots una mejor comprensión del mundo abierto

El método de Campos de Características para la Manipulación Robótica ayuda a los robots a identificar objetos cercano...

Ciencia de Datos

META's Hiera reduce la complejidad para aumentar la precisión.

Las redes convolucionales han dominado el campo de la visión por computadora durante más de veinte años. Con la llega...