¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Proyecto final: informe de una función en marcha

Después de esta lección: Puedo informar del coste, la velocidad y la calidad de una función de IA en marcha.

Lección de 60 minSin comandos

Una semana después llegan las preguntas

Mantener una función de IA es conocer cada semana su coste, su velocidad y su calidad. Una aseguradora pequeña de Bilbao lanzó el lunes una función que resume partes de siniestro. Finanzas pregunta cuánto cuesta. Atención al cliente pregunta por qué algunas respuestas tardan.

Las impresiones no sirven. En este proyecto final sacas las cifras de una semana grabada y las escribes en una página.

Al final de esta lección

Nota

Puedo informar del coste, la velocidad y la calidad de una función de IA en marcha.

Palabras clave

PalabraQué significaEjemplo
Tokenun trozo pequeño de texto que un modelo lee o escribe
Latencialo que tarda una petición
Medianael valor del medio una vez ordenados
Percentilel valor por debajo del cual queda una parte de las peticionespercentil 95
Nota de calidadla parte de una muestra de respuestas valorada como buena

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Para profundizar

Nota

Este proyecto lee cifras e informa de ellas. Las lecciones de IA de la página Recursos enseñan a recogerlas. Coste, trazado y fiabilidad. Evaluar sistemas de IA a fondo. Operar funciones de IA.

El coste sale de los tokens

Un modelo se suele pagar por token, de entrada y de salida. El texto que envías son tokens de entrada. La respuesta son tokens de salida, y esos suelen costar más.

Así que el coste depende de lo largos que sean tus prompts, no solo de cuántas peticiones llegan. El programa calcula el coste de cada día de una semana grabada, con precios inventados.

Pruébalo: el coste de una semana

Código: python
# Una semana grabada de una función de resúmenes.
# Los tokens se cuentan en miles. Precios inventados para practicar.
CENTS_PER_THOUSAND_IN = 1
CENTS_PER_THOUSAND_OUT = 4

days = [
    {"day": "lun", "requests": 400, "in": 800, "out": 120},
    {"day": "mar", "requests": 420, "in": 840, "out": 130},
    {"day": "mié", "requests": 380, "in": 760, "out": 110},
    {"day": "jue", "requests": 900, "in": 2700, "out": 300},
    {"day": "vie", "requests": 410, "in": 820, "out": 125},
]

total_cents = 0
total_requests = 0
for day in days:
    cents = day["in"] * CENTS_PER_THOUSAND_IN + day["out"] * CENTS_PER_THOUSAND_OUT
    print(day["day"], cents, "céntimos")
    total_cents = total_cents + cents
    total_requests = total_requests + day["requests"]

print("Semana:", total_cents, "céntimos por", total_requests, "peticiones")
# ¿Qué día destaca? Dale al jueves las cifras del lunes y vuelve a ejecutar.

La media esconde las peticiones lentas

La latencia es lo que tarda una petición. La media parece útil, pero dos peticiones muy lentas se esconden en ella.

Por eso se informa de la mediana, el valor del medio, y del percentil 95. Ordena los tiempos. El percentil 95 es el tiempo que no superan 95 de cada 100 peticiones. Es lo que viven tus usuarios más lentos.

Pruébalo: mediana, media y percentil 95

Código: python
# Una muestra grabada: 20 tiempos de respuesta en segundos.
times = [1.2, 1.1, 1.4, 1.3, 1.2, 1.5, 1.1, 1.3, 1.2, 9.8,
         1.4, 1.2, 1.3, 1.1, 1.6, 1.2, 1.3, 8.9, 1.4, 1.2]

ordered = sorted(times)
middle = ordered[len(ordered) // 2]
print("Mediana:", middle, "segundos")

total = 0
for t in times:
    total = total + t
print("Media:", round(total / len(times), 2), "segundos")

# El 95 por ciento de 20 es 19, así que el tiempo 19 en orden.
print("Percentil 95:", ordered[18], "segundos")

La calidad, y después una página

El coste y la velocidad importan poco si las respuestas son malas. Cada semana, una persona valora una muestra fija, por ejemplo 50 respuestas. La parte valorada como buena es la nota de calidad.

Después, las tres cosas van en una página: la cifra, el objetivo y lo que vas a hacer. Una responsable debería poder decidir solo con esa página.

Ejemplo resuelto: el informe de una página

MedidaEsta semanaObjetivoAcción
Coste90,60 € por 2510 peticionesMenos de 80 €Acortar el prompt que se envía el jueves
Latencia mediana1,3 segundosMenos de 2 segundosNinguna
Percentil 958,9 segundosMenos de 5 segundosBuscar las peticiones lentas en los registros
Nota de calidad44 de 50 buenas45 de 50Añadir los 6 fallos al conjunto de evaluación

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Un error frecuente

Advertencia

Mucha gente cree que el tiempo medio de respuesta dice cómo se siente una función. Unas pocas peticiones muy lentas se esconden dentro de una buena media. Informa también del percentil 95, porque es lo que viven tus usuarios más lentos.

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.