OOrderSaffron
Espacio de programación con IA

Regresión isotónica sin pesos

Ajusta una secuencia no decreciente a un máximo de 128 observaciones finitas entre ±10^6 mediante mínimos cuadrados sin pesos.

● ● ●OrderSaffron●
Flujos de trabajo · Regresión isotónica sin pesos ×
from math import isfinite
def isotonic_fit(values):
    if type(values) is not list or len(values) > 128:
        raise ValueError("bounded list")
    if any(type(x) not in (int, float) or abs(x) > 10**6 or
           not isfinite(x) for x in values):
        raise ValueError("bounded finite values")
    blocks = []
    for value in values:
        blocks.append([float(value), 1])
        while len(blocks) > 1 and (
            blocks[-2][0] / blocks[-2][1] > blocks[-1][0] / blocks[-1][1]):
            total, count = blocks.pop()
            blocks[-1][0] += total; blocks[-1][1] += count
    return [total / count for total, count in blocks for _ in range(count)]
✳Ajusta una secuencia no decreciente a un máximo de 128 observaciones finitas entre ±10^6 mediante mínimos cuadrados sin pesos.
✓ CambiosRevisa antes de aplicar ↗
Vista ilustrativa
  1. Proyecto

    Prueba entradas vacías y descendentes, rechazando booleanos y conservando la lista original.

  2. Revisa antes de aplicar

    Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.

  3. Modelos

    Configura un endpoint compatible con OpenAI o Anthropic usando la URL base y, si hace falta, una clave API. Prueba la conexión. Un servidor local debe estar en ejecución; las herramientas remotas pueden enviar datos por separado.

Flujos de trabajo

Regresión isotónica sin pesos

Flujos de trabajo ↗
Flujos de trabajo
from math import isfinite
def isotonic_fit(values):
    if type(values) is not list or len(values) > 128:
        raise ValueError("bounded list")
    if any(type(x) not in (int, float) or abs(x) > 10**6 or
           not isfinite(x) for x in values):
        raise ValueError("bounded finite values")
    blocks = []
    for value in values:
        blocks.append([float(value), 1])
        while len(blocks) > 1 and (
            blocks[-2][0] / blocks[-2][1] > blocks[-1][0] / blocks[-1][1]):
            total, count = blocks.pop()
            blocks[-1][0] += total; blocks[-1][1] += count
    return [total / count for total, count in blocks for _ in range(count)]
Espacio de programación con IA

Pide pruebas que distingan una corrección de una reescritura plausible

OrderSaffron es software de programación con IA para Windows que facilita evaluar cambios propuestos mediante comprobaciones significativas. Abre la carpeta del proyecto y describe el comportamiento que necesita pruebas. Un modelo conectado puede ayudar a examinar conjuntamente la implementación y las pruebas, para que la conversación cuestione si una aserción recoge el requisito y no solo si el código actual la satisface.

El ejemplo isotonic_fit.py ofrece una tarea sobre la producción de una secuencia ajustada no decreciente. Aporta una entrada pequeña con un resultado esperado conocido y pregunta qué casos distinguen el comportamiento previsto de una salida superficialmente ordenada. Incluye valores iguales y entradas ya ordenadas. El ejemplo es un ejercicio de revisión de proyecto; no significa que el entorno incluya un producto de ajuste numérico o un servicio automático de certificación de pruebas.

Puedes seleccionar un modelo de IA sin filtros si tu endpoint compatible con OpenAI o de Anthropic admitido lo proporciona. Configura los datos de conexión necesarios y evalúa los límites de herramientas y contexto del modelo. Revisa tanto el parche de código como las pruebas propuestas antes de ejecutar las comprobaciones del proyecto. Conserva expectativas independientes e informa de cualquier carencia. Un resultado satisfactorio solo aporta pruebas útiles cuando las comprobaciones ejercitan el contrato que pretendías conservar o cambiar.

Evaluación de un conjunto propuesto de pruebas numéricas

¿Por qué no basta comprobar el orden no decreciente?

Muchas salidas pueden estar ordenadas sin ser el ajuste requerido. Incluye expectativas pequeñas calculadas de forma independiente y otras propiedades del contrato, como la longitud de salida. Pregunta qué errores de implementación detectaría cada comprobación antes de aceptar un conjunto de pruebas como evidencia.

¿Deben incluirse entradas ya ordenadas en las pruebas?

Sí, cuando el comportamiento previsto sea conservarlas. Ese caso puede revelar alteraciones innecesarias o errores de índices. Indica explícitamente los valores esperados e incluye entradas repetidas para ejercitar la igualdad además de entradas estrictamente crecientes.

¿Puede el asistente escribir tanto el código como las pruebas?

Puede proponer ambos con sus herramientas disponibles, pero revisa sus razonamientos de forma independiente. Las pruebas derivadas del mismo supuesto erróneo pueden coincidir con una implementación defectuosa. Utiliza requisitos externos o ejemplos comprobados a mano para fundamentar los resultados esperados.

¿Cómo debo informar de una verificación incompleta?

Distingue las comprobaciones realmente ejecutadas de las propuestas y de los supuestos no resueltos. Incluye fallos y límites del entorno, sin tratar la ausencia de salida como éxito. Esto da al siguiente revisor una descripción clara de lo que demuestra el parche y lo que sigue siendo incierto.

Descargar para Windows ↗

OrderSaffron · Actualizado 2026-10-25