Importación de modelos ajustados

Prepare un modelo que haya ajustado fuera de OCI Generative AI para la importación y, a continuación, lo aloje en un cluster de IA dedicado.

Puede ajustar un modelo base compatible fuera del servicio e importar el modelo resultante de un cubo de Object Storage o Hugging Face. La importación necesita un artefacto de modelo completo que cumpla los requisitos de compatibilidad para su modelo base.

OCI Generative AI no ajusta los modelos importados. Para entrenar los modelos preentrenados admitidos del servicio en el servicio, consulte Ajuste de los modelos base en la IA generativa.

Comprobar la compatibilidad antes del ajuste

Comience con un modelo que aparezca en Compatible Models for Import. Revise su página modelo-familia para conocer los requisitos y el hardware de alojamiento compatible. Mantenga una copia de la configuración del modelo base y registre el ID de modelo, la revisión del repositorio y las versiones de biblioteca de entrenamiento y exportación.

  • Conservar una arquitectura compatible con el modelo base soportado. Las actualizaciones estándar LoRA, cuando se combinan en las matrices de peso originales, conservan sus dimensiones. Otros cambios, como agregar capas o cambiar el tamaño del glosario, requieren comprobaciones de compatibilidad separadas.
  • Cumplir con el requisito de versión de Transformers del modelo base. Consulte Descripción de metadatos de configuración.
  • Mantenga el recuento total de parámetros dentro de ±10% del modelo base original, según lo especificado en la guía modelo-familia. Éste es el recuento total de parámetros del modelo, no solo el número de parámetros LoRA entrenables.
  • Para el ajuste de LoRA, fusione un adaptador en el modelo base antes del despliegue. Cada modelo de ajuste importado puede contener los pesos fusionados de un solo adaptador LoRA.

Un modelo que se carga correctamente en el entorno de entrenamiento aún necesita pasar la validación de importación. Revise los archivos exportados finales, incluida su configuración, el tipo de dato de peso y el tokenizador.

Descripción de los Metadatos de Configuración

Hugging Face Transformers es la biblioteca utilizada para cargar y guardar muchos modelos de Hugging Face. El campo transformers_version de config.json registra la versión de biblioteca utilizada al serializar la configuración. Guardar con otra versión de la biblioteca puede cambiar este campo incluso cuando la arquitectura del modelo no cambia.

Las páginas de la familia de modelos requieren que el modelo ajustado utilice la misma versión de Transformers que el modelo base soportado. Compare las versiones grabadas antes de importar. Si difieren, compruebe el entorno de exportación y confirme la compatibilidad con los Servicios de Soporte Oracle antes de depender de una exportación de una versión diferente.

Comprobaciones de configuración antes de importar
Campo o configuración Qué comprobar
architectures y model_type Identifique la clase de modelo y la familia previstas y concuerde con los pesos exportados.
transformers_version Compare con la configuración básica. Los metadatos de esta biblioteca son independientes de la arquitectura y de la etiqueta de versión que asigna a un modelo importado en la consola.
torch_dtype o dtype Compruebe la precisión declarada por el exportador y los tipos de dato de tensor almacenados reales. La edición de un valor JSON no convierte los pesos.
Recuentos de capas, tamaños ocultos, configuración de atención y tamaño de vocabulario Compruebe que la configuración describe los tensores y el tokenizador guardados. Mantenga la configuración de la arquitectura sin cambios para una exportación LoRA que solo actualiza las matrices de peso originales.
quantization_config, cuando esté presente Verifique que describe la exportación real y que la variante de modelo resultante es compatible. La eliminación de metadatos de cuantificación no convierte un punto de control cuantificado.
Importante

Mantenga la configuración consistente con el modelo. No cambie una cadena de versión únicamente para pasar la validación o reemplazar toda la configuración sin comprobarla con los pesos y el tokenizador exportados.

Fusionar pesos de LoRA y comprobar precisión de exportación

Un punto de control del adaptador LoRA contiene los parámetros del adaptador y depende del modelo base. Los archivos como adapter_model.safetensors y adapter_config.json por sí solos no son un modelo completo para este flujo de trabajo de importación.

  1. Cargue la misma revisión del modelo base utilizada para el entrenamiento y el adaptador previsto.
  2. Fusione el adaptador en el modelo base. Con Hugging Face PEFT, utilice merge_and_unload() para una configuración LoRA soportada. Consulte Fusión de los pesos.
  3. Compruebe el tipo de dato del modelo fusionado antes de guardar. Utilice la precisión validada del modelo base como punto de partida. La formación o la fusión pueden producir pesos en un tipo de dato diferente.
  4. Guarde el modelo completo y su tokenizador en un nuevo directorio de exportación. Mantenga el modelo base original y el adaptador para que pueda repetir la exportación.
  5. Inspeccione la configuración guardada y los tipos de datos de tensor y, a continuación, vuelva a cargar la exportación y ejecute peticiones de datos representativas. Compruebe los metadatos de tensor guardados antes de cualquier conversión de tiempo de carga que pueda ocultar el tipo de dato almacenado original.

Por ejemplo, la configuración base Qwen/Qwen3-1.7B declara torch_dtype como bfloat16 (BF16). Si la exportación fusionada contiene pesos float32 (FP32), convierta los tensores de punto flotante reales en BF16 y guarde una nueva exportación para este modelo base. Si se cambia solo torch_dtype, los pesos almacenados no se modifican.

BF16 en este ejemplo es específico del modelo Qwen seleccionado. Compruebe el modelo base y sus requisitos antes de seleccionar la precisión para otro modelo. Un punto de control de formación cuantificado también necesita un procedimiento de exportación adecuado; no todas las configuraciones de PEFT o cuantificación admiten la fusión.

Preparación del directorio de artefactos de modelo

Empaquetar una exportación completa en formato Hugging Face. El directorio seleccionado durante la importación debe contener config.json y los archivos necesarios para cargar el modelo. Dependiendo del modelo, estos incluyen:

  • Pesos de modelo completo, como model.safetensors, o todas las particiones horizontales de peso y su índice, como model.safetensors.index.json.
  • Archivos de tokenizador, configuración de tokenizador, definiciones de token especial y la plantilla de chat utilizada para el modelo, cuando corresponda.
  • Configuración de generación y cualquier archivo de procesador requerido por el modelo.

Asegúrese de que cada partición horizontal a la que hace referencia un índice está presente. Utilice el tokenizador y la plantilla de chat que coincidan con el modelo exportado. Para modelos de chat, consulte la guía sobre la plantilla de chat de Hugging Face.

Para una importación de Object Storage, cargue la exportación completa en su propio directorio de artefactos de modelo. Para una importación de Hugging Face, haga que la exportación completa esté disponible en el repositorio de modelos. Mantenga diferentes exportaciones en directorios separados para que los archivos de configuración y peso de diferentes ejecuciones no se mezclen.

Importar y alojar el modelo ajustado

  1. Revise los requisitos de origen en Gestión de modelos importados y los permisos de modelo importados necesarios.
  2. Importe la exportación preparada desde un cubo de Object Storage o desde Hugging Face.
  3. Compruebe el estado del modelo importado y resuelva cualquier fallo de importación antes de desplegarlo.
  4. Cree un cluster de AI dedicado de alojamiento para el modelo importado. Seleccione una unidad de hardware compatible disponible en la región de destino. Consulte Unidades de unidad de hardware por región.
  5. Cree un punto final y, a continuación, pruebe el modelo con solicitudes representativas antes de utilizarlo en producción.

Registre los resultados de la revisión y evaluación de exportación junto con el OCID del modelo importado. Utilice un nombre descriptivo y una versión para distinguir las exportaciones ajustadas.

Resolución de problemas de un error de validación de arquitectura

Si la creación del modelo falla con el siguiente mensaje, revise la exportación completa:

The imported model architecture is not yet validated for serving.

El mensaje no identifica qué configuración o diferencia de artefacto necesita atención. Un valor architectures sin cambios por sí solo no establece que la exportación cumpla con todos los requisitos de importación.

  1. Confirme que el modelo base original se muestra como compatible y que el directorio de artefactos seleccionado contiene la exportación prevista.
  2. Compare los archivos config.json originales y exportados mediante las comprobaciones de Understand Configuration Metadata. Identificar las diferencias introducidas al guardar o fusionar.
  3. Inspeccione los tipos de datos de tensor almacenados reales. Para un modelo base BF16, compruebe si la exportación contiene pesos FP32 de forma involuntaria.
  4. Confirme que la exportación incluye los pesos del modelo base fusionados, todas las particiones horizontales a las que se hace referencia y el tokenizador coincidente. Vuelva a cargar y pruebe la exportación completa localmente.
  5. Después de corregir la exportación, cárguela en un directorio de artefactos independiente y envíe una nueva importación. Si la validación aún falla, póngase en contacto con los Servicios de Soporte Oracle.

Incluya el error exacto, el ID de solicitud de OPC, la hora y la zona horaria del fallo, la región, el OCID del modelo importado, si está disponible, el ID y la revisión del modelo base, las diferencias de configuración, los tipos de datos de tensor observados y las versiones de biblioteca de entrenamiento, fusión y exportación. Esta información ayuda a distinguir un problema de artefacto de un problema de validación de servicio.

Planificación de datos de formación y evaluación

Para el ajuste externo, siga el formato del juego de datos y los requisitos de entrenamiento del modelo y las herramientas seleccionados. Los requisitos del conjunto de datos para crear un modelo personalizado dentro de la IA generativa describen ese flujo de trabajo independiente.

  • Utilice ejemplos representativos y precisos para la tarea, los idiomas y los formatos de respuesta que debe manejar el modelo. Revise las etiquetas y elimine los ejemplos duplicados o en conflicto.
  • Mantenga separados los datos de entrenamiento, validación y prueba. Mantenga los ejemplos relacionados juntos al dividir los datos para reducir la fuga de información.
  • Compare el modelo base y el modelo ajustado en los mismos ejemplos retenidos. Mida la calidad de la tarea y compruebe si hay regresiones en las respuestas generales.
  • Repita las comprobaciones representativas después de fusionar, convertir el tipo de dato y desplegar el punto final. Una importación correcta confirma que la importación se ha completado; evalúe las respuestas del modelo para el caso de uso previsto.

Si deseas entrenar en OCI, consulta Ajuste con acciones rápidas de IA de OCI Data Science para conocer sus modelos y requisitos soportados. Un modelo entrenado en otro servicio aún debe cumplir con los requisitos de importación de IA generativa.