Saltar al contenido principal

Capítulo 2: Diferencias con respecto a MLOps tradicional

Comparación entre MLOps y LLMOps​

AspectoMLOps tradicionalLLMOps
Tamaño del modeloMB a GBGB a TB
EntrenamientoReentrenamiento frecuenteFine-tuning o prompt engineering
EntradaCaracterísticas estructuradasLenguaje natural
SalidaPuntajes/clasesTexto generado
EvaluaciónMétricas (AUC, F1)Calidad, seguridad, relevancia
Latenciamssegundos
Factor de costoCómputoTokens

Desafíos únicos de LLMOps​

1. Ingeniería de prompts​

El ML tradicional no utiliza "prompts": los LLM requieren un diseño cuidadoso del prompt:

# Simple prompt
prompt_v1 = "Summarize this document: {document}"

# Improved prompt with constraints
prompt_v2 = """You are a professional summarizer.
Summarize the following document in 3 bullet points.
Keep each point under 20 words.
Focus on key facts and figures.

Document: {document}

Summary:"""

2. Salidas no deterministas​

# Same input, different outputs
for i in range(3):
response = llm.generate("Write a haiku about Python")
print(f"Attempt {i+1}: {response}")

# Output varies each time!

3. Precios basados en tokens​

def calculate_cost(input_tokens: int, output_tokens: int, model: str):
pricing = {
"gpt-4": {"input": 0.03, "output": 0.06},
"gpt-3.5-turbo": {"input": 0.0005, "output": 0.0015},
"claude-3-opus": {"input": 0.015, "output": 0.075},
}

input_cost = (input_tokens / 1000) * pricing[model]["input"]
output_cost = (output_tokens / 1000) * pricing[model]["output"]

return input_cost + output_cost

Siguiente: Capítulo 3: Desafíos específicos de los LLM