Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Cree y gestione trabajos de ajuste fino para modelos de peso abierto mediante OpenAI APIs
El trabajo de ajuste fino compatible con OpenAI APIs le permite crear, monitorear y administrar trabajos de ajuste fino. En esta página se destaca su uso para afinar los refuerzos. APIs Para obtener información completa sobre la API, consulte la documentación sobre el OpenAIajuste preciso.
Cree un trabajo de ajuste
Crea un trabajo de ajuste que inicia el proceso de creación de un nuevo modelo a partir de un conjunto de datos determinado. Para obtener información completa sobre la API, consulta la documentación sobre cómo OpenAIcrear trabajos de ajuste preciso.
Ejemplos
Para crear un trabajo de ajuste preciso con el método RFT, elija la pestaña correspondiente al método que prefiera y, a continuación, siga estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Create fine-tuning job with RFT method
job_response = client.fine_tuning.jobs.create(
model=MODEL_ID,
training_file=training_file_id,
# Suffix field is not supported so commenting for now.
# suffix="rft-example", # Optional: suffix for fine-tuned model name
extra_body={
"method": {
"type": "reinforcement",
"reinforcement": {
"grader": {
"type": "lambda",
"lambda": {
"function": "arn:aws:lambda:us-west-2:123456789012:function:my-reward-function" # Replace with your Lambda ARN
}
},
"hyperparameters": {
"n_epochs": 1, # Number of training epochs
"batch_size": 4, # Batch size
"learning_rate_multiplier": 1.0 # Learning rate multiplier
}
}
}
}
)
# Store job ID for next steps
job_id = job_response.id
print({job_id})
- HTTP request
-
Haga una solicitud POST a: /v1/fine_tuning/jobs
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"training_file": "file-abc123",
"model": "gpt-4o-mini",
"method": {
"type": "reinforcement",
"reinforcement": {
"grader": {
"type": "lambda",
"lambda": {
"function": "arn:aws:lambda:us-west-2:123456789012:function:my-grader"
}
},
"hyperparameters": {
"n_epochs": 1,
"batch_size": 4,
"learning_rate_multiplier": 1.0
}
}
}
}'
Enumere los eventos de ajuste
Enumera los eventos para realizar un trabajo de ajuste. Los eventos de ajuste preciso proporcionan información detallada sobre el progreso de su trabajo, incluidas las métricas de formación, la creación de puntos de control y los mensajes de error. Para obtener información completa sobre la API, consulta la documentación de OpenAIList Fine-Tuning Events.
Ejemplos
Para ver una lista de los eventos de ajuste preciso, selecciona la pestaña del método que prefieras y, a continuación, sigue estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# List fine-tuning events
events = client.fine_tuning.jobs.list_events(
fine_tuning_job_id="ftjob-abc123",
limit=50
)
for event in events.data:
print(f"[{event.created_at}] {event.level}: {event.message}")
if event.data:
print(f" Metrics: {event.data}")
- HTTP request
-
Realiza una solicitud GET a: /v1/fine_tuning/jobs/{fine_tuning_job_id}/events
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123/events?limit=50
Los eventos incluyen información como:
-
Mensajes de inicio y finalización de la formación
-
Notificaciones de creación de puntos de control
-
Métricas de entrenamiento (pérdida, precisión) en cada paso
-
Mensajes de error si el trabajo falla
Para paginar todos los eventos, elige la pestaña del método que prefieras y, a continuación, sigue estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Paginate through all events
all_events = []
after = None
while True:
events = client.fine_tuning.jobs.list_events(
fine_tuning_job_id="ftjob-abc123",
limit=100,
after=after
)
all_events.extend(events.data)
if not events.has_more:
break
after = events.data[-1].id
- HTTP request
-
Realiza varias solicitudes GET con el after parámetro:
# First request
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123/events?limit=100
# Subsequent requests with 'after' parameter
curl "https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123/events?limit=100&after=ft-event-abc123"
Recupera un trabajo de ajuste
Obtenga información detallada sobre un trabajo de ajuste. Para obtener información completa sobre la API, consulte la documentación sobre los trabajos de ajuste OpenAI preciso de Retrieve.
Ejemplos
Para obtener detalles de un trabajo específico, selecciona la pestaña del método que prefieras y, a continuación, sigue los pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Retrieve specific job details
job_details = client.fine_tuning.jobs.retrieve(job_id)
# Print raw response
print(json.dumps(job_details.model_dump(), indent=2))
- HTTP request
-
Haga una solicitud GET a/v1/fine_tuning/jobs/{fine_tuning_job_id}:
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123 \
-H "Authorization: Bearer $OPENAI_API_KEY"
Enumere los trabajos de ajuste
Enumera los trabajos de optimización de su organización con soporte de paginación. Para obtener información completa sobre la API, consulta la documentación de OpenAIList Fine-Tuning Jobs.
Ejemplos
Para ver una lista de los trabajos de ajuste preciso con límite y paginación, selecciona la pestaña correspondiente al método que prefieras y, a continuación, sigue estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# List fine-tuning jobs with limit and pagination
response = client.fine_tuning.jobs.list(
limit=20 # Maximum number of jobs to return
)
# Print raw response
print(json.dumps(response.model_dump(), indent=2))
- HTTP request
-
Haz una solicitud GET a: /v1/fine_tuning/jobs
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs?limit=20 \
-H "Authorization: Bearer $OPENAI_API_KEY"
Cancela el trabajo de ajuste
Cancela un trabajo de ajuste que está en curso. Una vez cancelado, el trabajo no se puede reanudar. Para obtener información completa sobre la API, consulte la documentación sobre cómo OpenAIcancelar el trabajo de ajuste detallado.
Ejemplos
Para cancelar un trabajo de ajuste, selecciona la pestaña correspondiente al método que prefieras y, a continuación, sigue estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Cancel fine-tuning job
cancel_response = client.fine_tuning.jobs.cancel("ftjob-abc123")
print(f"Job ID: {cancel_response.id}")
print(f"Status: {cancel_response.status}") # Should be "cancelled"
- HTTP request
-
Haga una solicitud POST a: /v1/fine_tuning/jobs/{fine_tuning_job_id}/cancel
curl -X POST https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123/cancel \
-H "Authorization: Bearer $OPENAI_API_KEY"
Enumere los puntos de control de ajuste
Enumera los puntos de control para un trabajo de ajuste. Los puntos de control son instantáneas de modelos intermedios que se crean durante el ajuste y que se pueden utilizar como inferencias para evaluar el rendimiento en las diferentes etapas del entrenamiento. Para obtener más información, consulte la documentación sobre el ajuste preciso de los puntos de control de ListOpenAI.
Ejemplos
Para ver una lista de los puntos de control necesarios para un trabajo de ajuste, elija la pestaña correspondiente al método que prefiera y, a continuación, siga estos pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# List checkpoints for a fine-tuning job
checkpoints = client.fine_tuning.jobs.checkpoints.list(
fine_tuning_job_id="ftjob-abc123",
limit=10
)
for checkpoint in checkpoints.data:
print(f"Checkpoint ID: {checkpoint.id}")
print(f"Step: {checkpoint.step_number}")
print(f"Model: {checkpoint.fine_tuned_model_checkpoint}")
print(f"Metrics: {checkpoint.metrics}")
print("---")
- HTTP request
-
Haz una solicitud GET a: /v1/fine_tuning/jobs/{fine_tuning_job_id}/checkpoints
curl https://bedrock-mantle.us-west-2.api.aws/v1/fine_tuning/jobs/ftjob-abc123/checkpoints?limit=10
Cada punto de control incluye:
-
ID de punto de control: identificador único del punto de control
-
Número de paso: paso de entrenamiento en el que se creó el punto de control
-
Punto de control del modelo: identificador del modelo que se puede utilizar para realizar inferencias
-
Métricas: pérdida de validación y precisión en este punto de control
Para utilizar un modelo de puntos de control para la inferencia, elija la pestaña correspondiente al método que prefiera y, a continuación, siga los pasos:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Test inference with a checkpoint
response = client.chat.completions.create(
model=checkpoint.fine_tuned_model_checkpoint,
messages=[{"role": "user", "content": "What is AI?"}],
max_tokens=100
)
print(response.choices[0].message.content)
- HTTP request
-
Realice una solicitud POST a: /v1/chat/completions
curl https://bedrock-mantle.us-west-2.api.aws/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "ft:gpt-4o-mini:openai:custom:7p4lURel:ckpt-step-1000",
"messages": [{"role": "user", "content": "What is AI?"}],
"max_tokens": 100
}'
Ejecute la inferencia con un modelo ajustado
Una vez que hayas completado el trabajo de ajuste, puedes usar el modelo ajustado para realizar inferencias a través de la API de respuestas o la API de finalización de chats. Para obtener información completa sobre la API, consulte. Genere respuestas utilizando OpenAI APIs
API de respuestas
Usa la API de respuestas para generar texto en una sola vuelta con tu modelo ajustado:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Get the fine-tuned model ID
job_details = client.fine_tuning.jobs.retrieve("ftjob-abc123")
if job_details.status == 'succeeded' and job_details.fine_tuned_model:
fine_tuned_model = job_details.fine_tuned_model
print(f"Using fine-tuned model: {fine_tuned_model}")
# Run inference with Responses API
response = client.completions.create(
model=fine_tuned_model,
prompt="What is the capital of France?",
max_tokens=100,
temperature=0.7
)
print(f"Response: {response.choices[0].text}")
else:
print(f"Job status: {job_details.status}")
print("Job must be in 'succeeded' status to run inference")
- HTTP request
-
Realiza una solicitud POST a: /v1/completions
curl https://bedrock-mantle.us-west-2.api.aws/v1/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "ft:gpt-4o-mini:openai:custom-model:7p4lURel",
"prompt": "What is the capital of France?",
"max_tokens": 100,
"temperature": 0.7
}'
API de finalización de chats
Usa la API Chat Completions para interactuar conversacionalmente con tu modelo ajustado:
- OpenAI SDK (Python)
-
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
# Get the fine-tuned model ID
job_details = client.fine_tuning.jobs.retrieve("ftjob-abc123")
if job_details.status == 'succeeded' and job_details.fine_tuned_model:
fine_tuned_model = job_details.fine_tuned_model
print(f"Using fine-tuned model: {fine_tuned_model}")
# Run inference
inference_response = client.chat.completions.create(
model=fine_tuned_model,
messages=[
{"role": "user", "content": "What is the capital of France?"}
],
max_tokens=100
)
print(f"Response: {inference_response.choices[0].message.content}")
else:
print(f"Job status: {job_details.status}")
print("Job must be in 'succeeded' status to run inference")
- HTTP request
-
Realiza una solicitud POST a: /v1/chat/completions
curl https://bedrock-mantle.us-west-2.api.aws/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "ft:gpt-4o-mini:openai:custom-model:7p4lURel",
"messages": [
{"role": "user", "content": "What is the capital of France?"}
],
"max_tokens": 100
}'