Deliberation v3 進化アーキテクチャ
LLMヒューリスティックから物理制約付き最適化エンジンへ
True Optimization Engine — Constraint-aware Multi-Agent DSP Optimization
| # | 深刻度 | 問題 | 解決策 | 難度 |
|---|---|---|---|---|
| 01 | 🔴 | Weighted median = consensus ではない | Constraint solver + Pareto front | ⭐⭐⭐ |
| 02 | 🔴 | パラメータ間依存無視 | DSP coupling model | ⭐⭐⭐ |
| 03 | 🟡 | JSON parse 危険 | Robust extraction + structured output | ⭐ |
| 04 | 🟡 | Validation 弱い | IEEE 754 guard + constraint check | ⭐ |
| 05 | 🟡 | Confidence weighting 無意味 | Calibrated weight → track record | ⭐⭐ |
| 06 | 🟡 | Deliberation score 単純 | Multi-dimensional agreement tensor | ⭐⭐ |
| 07 | 🟠 | Agent independence 弱い | Diverse context injection | ⭐⭐ |
| 08 | 🟡 | 並列数少ない | Dynamic ensemble sizing | ⭐ |
| 09 | 🟡 | LLMコスト高い | Tiered inference + caching | ⭐⭐ |
| 10 | 🟡 | Fallback 弱い | Circuit breaker pattern | ⭐⭐ |
- —markdownフェンス除去 → 直接parse → {…}ブロック抽出の3段階フォールバック
- —float変換後にmath.isnan / math.isinf を必ずチェック。デフォルト値にフォールバック
- —Anthropic呼び出しにJSONモード強制指令を追加(OpenAI・Googleは既存のjson_object / application/json で対応済み)
- —4つのパラメータグループ(compressor_behavior / saturation_budget / stereo_coherence / loudness_chain)を定義
- —各グループにlambda制約を設定し、違反時は自動repair関数で修正
- —_weighted_median_merge()の直後にvalidate_coupling()を呼び出し、adopted_paramsに物理的に不可能な組み合わせが混入しないことを保証
- —返り値にcoupling_violationsを追加——何が修正されたか完全追跡可能
- —同じprompt + 同じanalysis → 相関推論(correlated reasoning)が発生する
- —GRAMMATICA: band_ratios / detected_problems のみ参照、芸術的解釈を禁止
- —LOGICA: physical_sections / time_series のみ参照、スペクトル詳細を隠蔽
- —RHETORICA: track_identity / whole_track_metrics のみ参照、detected_problemsを隠蔽(保守バイアス排除)
- —グループ別スコア(by_group):4つのDSPグループ単位で合意率を算出
- —tension_map:spread / param_range > 0.4 のパラメータを特定、エージェント別ポジションを記録
- —全体スコア(overall):グループスコアの平均——単純な数値から多次元テンソルへ
- —プロバイダー別サーキットブレーカー(closed / open / half-open):3回連続失敗で60秒遮断
- —Tier選択:problems=0かつLUFS差分<3 → fastモデル、problems≥3 → deepモデル(5+エージェント)
- —信頼性と推論コストを構造的に制御する
現在の _weighted_median_merge() は各パラメータを独立スカラーとして扱う。 しかしDSPパラメータには物理的な結合関係がある—— comp_threshold ↔ comp_ratio → ゲインリダクション量、 tape_saturation ↔ parallel_wet → 総サチュレーション量、 stereo_low_mono ↔ stereo_width → 位相コヒーレンス。 これを無視したパラメータセットは「物理的に不可能な組み合わせ」を出力する。
- comp_threshold_db
- comp_ratio
- comp_attack_sec
- comp_release_sec
- ゲインリダクション推定値 ≤ 12dB
- アタックタイム < リリースタイム
- 高速アタック(< 3ms)+ 高レシオ(> 4.0)の禁止
comp_threshold_dbを調整してGR上限を守り、attack < release を強制する
- transformer_saturation×mix
- triode_drive×mix
- tape_saturation×mix
- parallel_wet
- 総有効サチュレーション(各drive×mix の和)≤ 1.5
mixパラメータを等比スケールダウンして予算内に収める
- stereo_low_mono
- stereo_high_wide
- stereo_width
- ms_side_high_gain_db
- stereo_width > 1.2 の場合 stereo_low_mono > 0.7(クラブ安全)
- ms_side_high_gain_db > 2.0 かつ stereo_high_wide > 1.4 の禁止
位相キャンセルリスクが高い組み合わせをクランプして修正する
- input_gain_db
- comp_threshold_db
- limiter_ceil_db
- input_gain + 推定コンプ量 ≤ 18dB(ハードリミッター手前に余裕を確保)
input_gain_dbを引き下げてリミッタークリップを防ぐ
同じprompt+同じanalysisを受け取ると、3エージェントは相関推論(correlated reasoning)に陥る。 各エージェントに「見せるデータ」と「見せないデータ」を分けることで独立性を確保する。
- whole_track_metrics
- detected_problems
- band_ratios
物理的安全のみ。バンドエネルギー比・True Peak・LUFS差分・ハーシュネスリスク・低域モノ相関に集中。芸術的解釈は一切禁止。
- physical_sections
- time_series_circuit_envelopes
- formplan.macro_form
構造的整合性のみ。セクション間LUFS連続性・LRA保存・矛盾セクション(バース > ブリッジ)・トランジション滑らかさに集中。極端なEQは提案禁止。
- track_identity
- whole_track_metrics
- time_series_circuit_envelopes
知覚的インパクトのみ。生命感(トランジエント鋭さ・クレストファクター)・空間没入感・温かみポテンシャル・ジャンル適合美学に集中。detected_problemsは参照禁止(保守バイアスを排除)。
| 変更内容 | 凍結に抵触? | 理由 |
|---|---|---|
| dsp_constraints.py 新規追加 | No | 新ファイル。既存ファイルの変更ではない |
| _weighted_median_merge() の後に coupling validation 追加 | No | merge ロジック自体は変更しない。後処理として追加 |
| エージェントごとの prompt 分岐 | No | system_prompt は凍結対象外(中身の改善は可) |
| JSON parse 強化 | No | 内部実装の改善 |
| Circuit breaker 追加 | No | 新しいインフラ層 |
merge_rule.py の統合ルール(weighted median, union, LOGICA override)は一切変更しない。 DSP constraints は merge の後段処理として追加される。
Phase 2(DSP Coupling Model)が入ると、TRIVIUMは「LLM heuristic」から「Physics-aware AI mastering」に質的変化する。
他のAIマスタリングサービスでここまでやっているものは存在しない。 LANDRもiZotope Ozoneも「変換器」だ——入力を出力に写像する関数。 そこに「物理的に不可能な組み合わせを制約ソルバーで事前排除する合議エンジン」は存在しない。 これが構造的な断絶点だ。