Ciclo de vida del trabajo
Crear un trabajo de entrenamiento de configuración
Llama a POST /v1/training/jobs para iniciar un entrenamiento gestionado asíncrono (trabajo config) a partir de un modelo base y datasets.
POST
POST /v1/training/jobs
Inicia un entrenamiento gestionado asíncrono (trabajo config) y devuelve su
registro. Tú proporcionas un dataset y una configuración, y Fastino ejecuta el
bucle de entrenamiento. Para el entrenamiento interactivo (trabajo interactive),
en el que tu aplicación controla cada paso de entrenamiento, sigue el
Inicio rápido del decodificador, que crea un trabajo interactive mediante
POST /v1/training/jobs/create-model
o el SDK de Tinker compatible. Este endpoint no crea trabajos interactivos.
Después de la creación, ambos tipos de trabajo usan sus IDs canónicos con las
operaciones documentadas del ciclo de vida en /v1/training/jobs/{job_id}.
Los trabajos config entrenan modelos codificadores que devuelve
GET /v1/base-models?supports_training=true y que tienen una ruta de despacho
compatible con trabajos config. Los modelos base decodificadores devuelven
400; en su lugar, entrena los decodificadores con un trabajo interactive.
Este endpoint está limitado a 20 solicitudes por minuto por usuario.
Solicitud
string
requerido
Tu clave de API de Fastino.
string
Clave de reintento generada por el cliente, de 1–255 caracteres; se recomienda un UUID. Repetir la misma clave y cuerpo devuelve el trabajo original. Usar la misma clave con otro cuerpo devuelve
422.string
requerido
Nombre para mostrar del modelo entrenado. Longitud: 1–100 caracteres.
string
requerido
Un ID de codificador entrenable devuelto por
GET /v1/base-models?supports_training=true. El training_type elegido debe tener una ruta de despacho compatible. Los UUID de checkpoint y los modelos base decodificadores devuelven 400.object[]
requerido
Una o más referencias a datasets subidos. Cada elemento requiere
name y puede incluir version; las versiones omitidas se resuelven a la más reciente.string
predeterminado:"lora"
lora o full. El modelo base seleccionado debe admitir el tipo solicitado.number
predeterminado:"0.2"
Fracción reservada para validación, de
0 a 0.9 en incrementos de 0.01.integer
predeterminado:"100"
Número máximo de épocas, de
1 a 10000; la parada temprana puede terminar antes.number
Tasa de aprendizaje pico de
1e-8 a 1. Omítela para usar la receta de entrenamiento del modelo seleccionado.integer
Tamaño de lote por dispositivo de
1 a 256. Omítelo para usar el default_training_batch_size del modelo que devuelve GET /v1/base-models?supports_training=true. Un valor mayor que el max_training_batch_size del modelo, cuando el catálogo publica uno, devuelve 422. Si un lote de GLiNER no cabe en la GPU de entrenamiento, se reduce al mayor tamaño que cabe; el batch_size del trabajo muestra el tamaño con el que se ejecuta.integer
Semilla opcional de reproducibilidad de
0 a 2147483647. Establece provider_name en modal al usarla. Una semilla reduce una fuente de variación, pero no garantiza ejecuciones idénticas bit a bit en la GPU.string
UUID del proyecto. Si se omite, Fastino asocia el trabajo al proyecto predeterminado del llamante.
Respuesta
Devuelve200 con el registro completo del trabajo, incluidos un id UUID y el estado inicial. El ejemplo siguiente está abreviado; la respuesta real incluye todos los campos definidos por TrainingJobResponse.
id de esta respuesta. Lo usarás para consultar el estado, obtener métricas y artefactos y ejecutar inferencia contra el modelo entrenado.
Un cuerpo con formato incorrecto devuelve 422. Una combinación válida pero no disponible de modelo, dataset, tipo de entrenamiento o proveedor devuelve un error 4xx específico de la solicitud.
La creación puede devolver estos conflictos codificados:
La misma
Idempotency-Key y un cuerpo idéntico reproducen el trabajo original en vez de crear otro. Un cuerpo diferente con la misma clave devuelve 422.
La comprobación de envíos idénticos durante 60 segundos es independiente de la reproducción mediante clave de idempotencia. Pasado ese intervalo, enviar el mismo cuerpo sin reutilizar la clave original crea y factura otro trabajo. Si el nombre de modelo solicitado ya está en uso, el siguiente trabajo recibe un sufijo como <name>_2.
Un modelo base decodificador devuelve 400:
interactive con
POST /v1/training/jobs/create-model
y sigue el Inicio rápido del decodificador.
Autorización
Requiere el rol Owner, Admin o Editor del equipo. Los demás roles reciben403 Forbidden.
