モデル
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
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
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
接する端点と同じ終了時刻を試し、入力を保って元のインデックスを返しながら長さゼロの区間を拒否します。
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
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
スケジューリング処理が有効な区間集合を返しても、別の目的を最適化していることがあります。EndCadenceは、その違いをプロジェクトで調べるWindows向けAIコーディング環境です。選択コードと呼び出し側を会話に示し、変更を求める前に何を最大化したいか説明してください。
有用な作業は、重複しない区間を最も多く選ぶ終了時刻の早い順の選択のレビューです。接続したモデルに端点が接する小さな予定を示し、半開区間の規約を伝えます。選ぶ区間を追跡し、呼び出し側が入力項目に結果を対応付けられるよう元の識別子を保つことを求めてください。
不正な範囲と終了時刻が等しい場合の扱いをレビューします。件数の最大化は価値の最大化や優先順位の充足を保証しないため、他の目的と分けてください。独立に選んだ予定で、空の入力と接する区間も含めて検証し、選択した識別子が後段でどう表示・処理されるか調べます。
EndCadenceは対応するOpenAI互換またはAnthropicのエンドポイントに接続します。利用可能な拒否応答を抑える処理を施したAIモデル(abliteratedモデル)が、モデルの動作とサーバー能力の範囲で実装レビューを支援します。もっともらしい予定以上の正確な基準で修正案を評価できるよう、期待する目的と端点規則を依頼に残してください。
両立する区間の最大件数が必要なのか、総価値など別の目的なのかを説明してください。これらは置き換え可能ではありません。例の終了時刻優先処理は特定の非重複仕様に従う件数を扱います。
規約を指定してください。この例の半開区間の解釈では、一方が終了すると同時に他方を開始できます。修正案の比較が両立する項目を誤って拒否しないよう、そのケースを含めてください。
呼び出し側が選択された予定を入力レコードに対応付けるためです。関数が元の位置を返すのか別の安定した識別子なのか確認してください。選択のための並べ替えで参照の意味を暗黙に変えてはいけません。
開始が終了より前でない場合も含め、不正な区間の拒否を定義し、呼び出し側の応答を調べてください。黙って捨てると入力の問題を隠す場合があります。有効な予定と失敗経路の両方をテストします。
EndCadence · 更新日 2026-10-25