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.
Elige un subconjunto máximo no solapado de hasta 64 intervalos semiabiertos con extremos enteros en ±10^9.
def interval_selection(intervals):
if type(intervals) is not list or len(intervals) > 64:
raise ValueError("schedule.input")
ordered = []
for index, pair in enumerate(intervals):
if type(pair) not in (list, tuple) or len(pair) != 2 or any(type(x) is not int or abs(x) > 10**9 for x in pair):
raise ValueError("schedule.pair")
start, end = pair
if start >= end:
raise ValueError("schedule.interval")
ordered.append((end, start, index))
selected, last = [], None
for end, start, index in sorted(ordered):
if last is None or start >= last:
selected.append(index)
last = end
return selected
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.
Prueba extremos contiguos y finales empatados, rechaza duración cero y devuelve índices originales sin cambiar la entrada.
Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.
def interval_selection(intervals):
if type(intervals) is not list or len(intervals) > 64:
raise ValueError("schedule.input")
ordered = []
for index, pair in enumerate(intervals):
if type(pair) not in (list, tuple) or len(pair) != 2 or any(type(x) is not int or abs(x) > 10**9 for x in pair):
raise ValueError("schedule.pair")
start, end = pair
if start >= end:
raise ValueError("schedule.interval")
ordered.append((end, start, index))
selected, last = [], None
for end, start, index in sorted(ordered):
if last is None or start >= last:
selected.append(index)
last = end
return selected
Una rutina de planificación puede devolver una colección válida de intervalos y aun así optimizar algo equivocado. EndCadence es un espacio de programación con IA para Windows donde examinar esa distinción en tu proyecto. Lleva el código de selección y su consumidor a la conversación y explica qué intenta maximizar la aplicación antes de pedir cambios.
Una tarea útil es revisar la selección por finalización más temprana para obtener la mayor cantidad de intervalos sin solapamiento. Muestra al modelo conectado una planificación pequeña con extremos que se tocan e indica la convención de intervalos semiabiertos. Pídele que siga los intervalos elegidos y conserve sus identificadores originales para que el consumidor pueda relacionar el resultado con los elementos enviados.
Revisa cómo trata la propuesta los rangos no válidos y los tiempos de finalización iguales. Mantén el objetivo separado de otras metas de planificación: maximizar la cantidad no garantiza el valor máximo ni la satisfacción de prioridades. Ejecuta las comprobaciones del proyecto con planificaciones elegidas independientemente, incluidas una entrada vacía e intervalos que se tocan, y examina después cómo se muestran o procesan los identificadores seleccionados.
EndCadence se conecta a endpoints compatibles con OpenAI o de Anthropic admitidos. Un modelo de IA ablacionado disponible puede ayudar a revisar la implementación, sujeto al comportamiento del modelo y a las capacidades del servidor. Mantén el objetivo esperado y las reglas de extremos en la solicitud para que los cambios propuestos puedan evaluarse según algo más preciso que una planificación plausible.
Explica si necesitas la mayor cantidad de intervalos compatibles u otra meta, como el valor total. Esos objetivos no son intercambiables. La tarea ilustrada de finalización más temprana se refiere a la cantidad bajo un contrato específico de no solapamiento.
Especifica la convención. Según la interpretación semiabierta de este ejemplo, un intervalo puede empezar cuando otro termina. Incluye ese caso exacto en tu prueba para que la comparación propuesta no rechace accidentalmente elementos compatibles.
El consumidor necesita relacionar la planificación seleccionada con los registros enviados. Revisa si la función devuelve posiciones originales u otro identificador estable. Ordenar para seleccionar no debe cambiar silenciosamente el significado de esas referencias.
Define el rechazo de intervalos mal formados, incluido un inicio que no sea anterior al final, y examina la respuesta del consumidor. Descartarlos silenciosamente puede ocultar problemas de entrada. Prueba la ruta de fallo además de una planificación válida.
EndCadence · Actualizado 2026-10-25