Benchmark · coding

MBPP+

saturated 0 resultados 0 modelos

MBPP+ es una versión del benchmark de programación MBPP (Mostly Basic Python Problems) con un conjunto de pruebas rigurosamente ampliado, construida con el marco EvalPlus. Mide la corrección funcional de las funciones de Python generadas por el modelo y se expresa como pass@1.

Leer más
Ejemplo
Un ítem típico ofrece una breve descripción en lenguaje natural de una función básica de Python que hay que escribir (por ejemplo, «encontrar los elementos comunes de dos listas») junto con algunas aserciones de ejemplo que fijan el comportamiento esperado.
Puntuación
La métrica es pass@k, normalmente pass@1: una tarea se cuenta como resuelta solo si la función generada pasa todas las pruebas; la puntuación es el porcentaje de tareas resueltas. pass@k se calcula con el estimador insesgado estándar sobre n terminaciones muestreadas.
Verificación
Cada función candidata se ejecuta en un entorno aislado contra el conjunto completo: las aserciones originales de MBPP más las entradas generadas automáticamente por EvalPlus (mutación consciente de tipos y siembra con LLM, aproximadamente 35 veces más pruebas que MBPP). Se acepta para una tarea solo si pasa todas las pruebas dentro del límite de tiempo.
Por qué importa
El MBPP original incluye solo unas tres pruebas por problema, por lo que un código sutilmente incorrecto puede colarse como falso positivo. MBPP+ endurece la evaluación, de modo que las tasas de aprobación publicadas y las clasificaciones de los modelos reflejan la corrección real y no una comprobación débil.
Ejemplo resuelto
Tarea
Escribe una función que encuentre los elementos comunes de dos listas dadas y los devuelva como una lista ordenada de valores únicos. Tu código debe pasar pruebas como: assert shared_elements([1, 2, 3, 4], [3, 4, 5, 6]) == [3, 4]
Solución
```python
def shared_elements(list1, list2):
    return sorted(set(list1) & set(list2))
```
Explicación
Intersecar las dos listas como conjuntos y ordenarlas produce los valores comunes únicos en orden, satisfaciendo las aserciones. MBPP+ además ejecuta muchas entradas adicionales (listas vacías, duplicados, casos más grandes); con la calificación pass@1, la solución solo cuenta si las pasa todas.

Aún no hay puntuaciones verificadas para este benchmark.