En este documento, se describe cómo definir un conjunto de datos de ajuste supervisado para un modelo de Gemini. Puedes ajustar los tipos de datos de texto, imagen, audio y documento.
Acerca de los conjuntos de datos de ajuste supervisado
Se usa un conjunto de datos de ajuste supervisado para ajustar un modelo previamente entrenado a una tarea o dominio específico. Los datos de entrada deben ser similares a los que esperas que el modelo encuentre en el uso real. Las etiquetas de salida deben representar las respuestas o los resultados correctos para cada entrada.
Conjunto de datos de entrenamiento
Para ajustar un modelo, debes proporcionar un conjunto de datos de entrenamiento. Para obtener mejores resultados, te recomendamos que comiences con 100 ejemplos. Si es necesario, puedes escalar hasta miles de ejemplos. La calidad del conjunto de datos es mucho más importante que la cantidad.
Limitaciones:
- Cantidad máxima de tokens de entrada y salida por ejemplo: 32,000
- Tamaño máximo del archivo del conjunto de datos de entrenamiento: Hasta 1 GB para JSONL.
Conjunto de datos de validación
Te recomendamos que proporciones un conjunto de datos de validación. Un conjunto de datos de validación te ayuda a medir la eficacia de un trabajo de ajuste.
Limitaciones:
- Cantidad máxima de tokens de entrada y salida por ejemplo: 32,000
- Cantidad máxima de ejemplos en el conjunto de datos de validación: 256
- Tamaño máximo del archivo del conjunto de datos de entrenamiento: Hasta 1 GB para JSONL.
Formato del conjunto de datos
El conjunto de datos de ajuste de modelos debe estar en el formato líneas JSON (JSONL), en el que cada línea contiene un solo ejemplo de ajuste. Antes de ajustar tu modelo, debes subir tu conjunto de datos a un bucket de Cloud Storage.
Ejemplo de conjunto de datos para gemini-1.5-pro
y gemini-1.5-flash
{
"systemInstruction": {
"role": string,
"parts": [
{
"text": string
}
]
},
"contents": [
{
"role": string,
"parts": [
{
// Union field data can be only one of the following:
"text": string,
"fileData": {
"mimeType": string,
"fileUri": string
}
}
]
}
]
}
Parámetros
El ejemplo contiene datos con los siguientes parámetros:
Parámetros | |
---|---|
|
Obligatorio: El contenido de la conversación actual con el modelo. Para consultas de un solo turno, esta es una instancia única. Para las consultas de varios turnos, este es un campo repetido que contiene el historial de conversaciones y la solicitud más reciente. |
|
Opcional: Disponible para Instrucciones para que el modelo mejore su rendimiento. Por ejemplo, "Responde de la forma más concisa posible" o "No uses términos técnicos en tu respuesta". Las cadenas El campo |
Contenido
El tipo de datos estructurados base que incluye contenido de varias partes de un mensaje.
Esta clase consta de dos propiedades principales: role
y parts
. La propiedad role
denota la persona que produce el contenido, mientras que la propiedad parts
contiene varios elementos, cada uno de los cuales representa un segmento de datos dentro de un mensaje.
Parámetros | |
---|---|
|
Opcional: La identidad de la entidad que crea el mensaje. Se admiten los siguientes valores:
El valor En el caso de las conversaciones que no tengan varios turnos, este campo se puede dejar en blanco o sin configurar. |
|
Una lista de partes ordenadas que conforman un solo mensaje. Es posible que las diferentes partes tengan distintos tipos de MIME de IANA. Para conocer los límites de las entradas, como la cantidad máxima de tokens o de imágenes, consulta las especificaciones del modelo en la página Modelos de Google. Para calcular la cantidad de tokens en tu solicitud, consulta Obtén el recuento de tokens. |
Piezas
Un tipo de datos que contiene contenido multimedia que forma parte de un mensaje Content
de varias partes.
Parámetros | |
---|---|
|
Opcional: Un mensaje de texto o un fragmento de código. |
|
Opcional: Datos almacenados en un archivo. |
Ejemplo de conjunto de datos para Gemini 1.0 Pro
Cada ejemplo de conversación en un conjunto de datos de ajuste se compone de un campo de mensajes obligatorio.
El campo messages
consta de un array de pares de rol y contenido. El campo role
se refiere al autor del mensaje y se configura como system
, user
o model
. El rol system
es opcional y solo puede ocurrir en el primer elemento
de la lista de mensajes. Se requieren los roles user
o model
y se pueden repetir de forma
alternada.
El campo content
es el content
del mensaje.
En cada ejemplo, la longitud máxima del token combinada para context
y messages
es de 32,768 tokens. Además, cada campo de contenido para el campo de modelo no debe
exceder los 8,192 tokens.
{
"messages": [
{
"role": string,
"content": string
}
]
}
Mantén la coherencia con los datos de producción
Los ejemplos en tu conjunto de datos deben coincidir con tu tráfico de producción esperado. Si tu conjunto de datos contiene formato, palabras clave, instrucciones o información específicas, los datos de producción deben tener el mismo formato y contener las mismas instrucciones.
Por ejemplo, si los ejemplos de tu conjunto de datos incluyen una "question:"
y un "context:"
, el tráfico de producción también debe tener el formato de modo que incluya una "question:"
y un "context:"
en el mismo orden en que aparecen en ejemplos de conjuntos de datos. Si excluyes el contexto, el modelo no reconocerá el patrón,
incluso si la pregunta exacta estaba en un ejemplo en el conjunto de datos.
Sube conjuntos de datos de ajuste a Cloud Storage
Para ejecutar un trabajo de ajuste, debes subir uno o más conjuntos de datos a un bucket de Cloud Storage. Puedes crear un depósito de Cloud Storage nuevo o usar uno existente para almacenar archivos de conjuntos de datos. La región del bucket no es importante, pero te recomendamos que uses un bucket que se encuentre en el mismo proyecto de Google Cloud en el que planeas ajustar tu modelo.
Una vez que tu bucket esté listo, sube tu archivo del conjunto de datos al bucket.
Sigue las prácticas recomendadas para el diseño de instrucciones
Una vez que tengas tu conjunto de datos de entrenamiento y hayas entrenado el modelo, es hora de diseñar instrucciones. Es importante seguir las prácticas recomendadas de diseño de instrucciones en tu conjunto de datos de entrenamiento para proporcionar una descripción detallada de la tarea que se debe realizar y cómo debería verse el resultado.
¿Qué sigue?
- Elige una región para ajustar un modelo.
- Para obtener información sobre cómo se puede usar el ajuste supervisado en una solución que compila una base de conocimiento de IA generativa, consulta Solución de inicio rápido: base de conocimiento de IA generativa.