OpenBezoar: Modelos pequeños, económicos y abiertos entrenados con mezclas de datos de instrucción
OpenBezoar: Small, Cost-Effective and Open Models Trained on Mixes of Instruction Data
April 18, 2024
Autores: Chandeepa Dissanayake, Lahiru Lowe, Sachith Gunasekara, Yasiru Ratnayake
cs.AI
Resumen
El ajuste fino de instrucciones en LLMs preentrenados para diversas tareas posteriores ha demostrado un éxito notable y ha capturado el interés tanto de académicos como de profesionales. Para garantizar que estos LLMs ajustados se alineen con las preferencias humanas, han surgido técnicas como RLHF y DPO. Al mismo tiempo, existe un creciente interés en modelos con un menor número de parámetros. En este trabajo, utilizando OpenLLaMA 3Bv2 como modelo base, describimos la receta empleada para ajustar la familia de modelos OpenBezoar. En esta receta: primero generamos datos sintéticos de ajuste fino de instrucciones utilizando una variante de ajuste fino de instrucciones abierta y sin restricciones comerciales del modelo Falcon-40B bajo tres esquemas basados en: LaMini-LM, WizardLM/Evol-Instruct (utilizando databricks-dolly-15k como conjunto de datos inicial) y Orca (utilizando la Colección Flan como conjunto de datos inicial), luego filtramos estas generaciones utilizando GPT-4 como proxy humano. Posteriormente, realizamos un ajuste fino supervisado basado en QLoRA de manera secuencial con cada esquema. El punto de control resultante se ajusta aún más con un subconjunto del conjunto de datos HH-RLHF para minimizar el cambio de distribución antes de utilizar la pérdida DPO para obtener el punto de control final. La evaluación se realiza con las tareas/métricas de LM Eval Harness, así como en MT-Bench utilizando el marco "LLM-as-a-judge" con Claude 2.1, encontrando que el punto de control final, "OpenBezoar-HH-RLHF-DPO", demuestra un rendimiento superior sobre muchos modelos en la escala de 3B parámetros, incluso superando al modelo principal en una de las categorías del Huggingface Open LLM Leaderboard. Publicamos los puntos de control "OpenBezoar-SFT", "OpenBezoar-HH-RLHF-SFT", "OpenBezoar-HH-RLHF-DPO", junto con nuestros conjuntos de datos generados en HuggingFace en https://huggingface.co/collections/SurgeGlobal/open-bezoar-6620a24923e12127e9e2b9cc y nuestro código base en https://bitbucket.org/paladinanalytics/workspace/projects/OP.
English
Instruction fine-tuning pretrained LLMs for diverse downstream tasks has
demonstrated remarkable success and has captured the interest of both academics
and practitioners. To ensure such fine-tuned LLMs align with human preferences,
techniques such as RLHF and DPO have emerged. At the same time, there is
increasing interest in smaller parameter counts for models. In this work, using
OpenLLaMA 3Bv2 as a base model, we describe the recipe used to fine-tune the
OpenBezoar family of models. In this recipe: We first generate synthetic
instruction fine-tuning data using an open and commercially non-restrictive
instruction fine-tuned variant of the Falcon-40B model under three schemes
based on: LaMini-LM, WizardLM/Evol-Instruct (with databricks-dolly-15k as a
seed dataset) and Orca (with the Flan Collection as a seed dataset), then
filter these generations using GPT-4 as a human proxy. We then perform
cost-effective QLoRA-based supervised fine-tuning sequentially with each
scheme. The resulting checkpoint is further fine-tuned with a subset of the
HH-RLHF dataset to minimize distribution shift prior to using the DPO loss to
obtain the final checkpoint. Evaluation is done with the LM Eval Harness
tasks/metrics as well as on MT-Bench using the "LLM-as-a-judge" framework with
Claude 2.1, with the finding that the final checkpoint,
"OpenBezoar-HH-RLHF-DPO", demonstrates superior performance over many models at
the 3B parameter scale, even outperforming the top model in one of the
categories on the Huggingface Open LLM Leaderboard. We release
"OpenBezoar-SFT", "OpenBezoar-HH-RLHF-SFT", "OpenBezoar-HH-RLHF-DPO"
checkpoints, alongside our generated datasets on HuggingFace at
https://huggingface.co/collections/SurgeGlobal/open-bezoar-6620a24923e12127e9e2b9cc
and our codebase at
https://bitbucket.org/paladinanalytics/workspace/projects/OP.Summary
AI-Generated Summary