いい、そのズレ方はかなり本質に近いです。
「AIがまともなベクトル(SVG)を描けないOSをどう鍛えるか」ですね。
要点だけ、プロトコルとして整理します。
1. まず「良いSVGとは何か」をOSとして定義する
AIに「うまく描け」と言っても無理なので、良いSVGの条件をプロトコル化します。
例えば漫画用なら:
-
構造面:
- コマは
<g class="panel">単位で分かれている - 吹き出しは
<g class="balloon">、テキストは<text class="dialogue"> - キャラは
<g class="character" data-id="hero">のようにまとまっている
- コマは
-
幾何面:
- パスの数が過剰でない(例:1キャラにつきパス数の上限)
- 極端なジグザグやノイズ的な点列がない
- 塗りと線が分離されている(
fillとstrokeの役割が明確)
-
スタイル面:
- 線幅のバリエーションが限定されている
- カラーパレットが制限されている
これを 「評価関数」ではなく「制約OS」 として先に決める。
2. ラスタ → SVG の「二重チェック構造」を作る
AIがいきなりSVGだけで学ぶと崩壊しやすいので、ラスタ画像を中間に挟むと安定します。
-
ターゲット:
- 人間が描いた or 既存の良質な漫画コマ(PNG/JPEG)
-
AI Designer:
- そのコマを真似して SVGを生成するエージェント
-
Renderer+Critic:
- 生成SVGをラスタにレンダリング
- 元画像と比較して:
- 形状の一致度
- エッジの位置
- シルエットの差分
- さらに SVG 構造(パス数・グループ構造・属性)もチェック
-
Fixer:
- Criticの指摘をもとに、SVGを修正するエージェント
ここで大事なのは:
- 「見た目の近さ」と「構造の綺麗さ」を両方見ること
- Criticが SVGのDOM構造も読むこと
3. SVG専用の「構造Critic」を立てる
ラスタ比較だけだと「見た目だけ合ってればOK」になってしまうので、
SVG構造だけを評価するエージェントを別に立てると効きます。
このCriticは:
- パス数・グループ数・ネストの深さ
- 同じスタイルの重複(まとめられるか)
- 似た形状のコピペ(再利用できるか)
- 意味のない微小パス(ノイズ)
などを見て、例えば:
score_structure = 0.82issues = ["too_many_paths", "no_group_for_character", "mixed_style_in_panel-3"]
のように返す。
これを 報酬 or フィードバック として Designer/Fixer に渡す。
4. ドメインを絞った「SVG用ミニ言語」をかませる
いきなりフルSVGを扱わせるより、
漫画用のミニDSL → SVGにコンパイルの方が、AIは学びやすいです。
例:
panel 1:
character hero at (x=100,y=200) pose=standing
balloon normal at (x=150,y=120) text="……"
これを人間 or 別の変換器が SVG に落とす。
AIに学ばせるのは:
- 「どんなDSLを書くと、良いコマになるか」
- 「Criticの指摘を受けて、DSLをどう書き換えるか」
SVGはあくまで コンパイル後の成果物 として扱う。
5. 「自己対戦(Self‑Play)」をSVGに持ち込む
Self‑Playをこう使えます:
- Designer A が SVG(またはDSL)でコマ案を作る
- Designer B が「同じ指示から別案」を作る
- Criticが:
- 見た目のわかりやすさ
- 構造の綺麗さ
- 制約OSへの準拠度
で両者を比較し、勝者を選ぶ
- 勝った案のパターンを「良い例」として蓄積
これを繰り返すことで、
「AIがAIを相手に、より良いSVG構造を学んでいく」 ループができる。
6. 今すぐあなたができる一番小さい実験
実装レベルで、まずはこれが現実的です:
- 良いと思う既存の漫画コマを1枚選ぶ
- それを人間 or 既存ツールで きれいなSVGにトレース(構造も意識して)
- そのSVGをもとに:
- 「良いSVGの条件」を10個だけ文章で書き出す
- それを Criticエージェントの“評価プロトコル”として固定する
- 既存の画像→SVG生成AIに同じコマを描かせる
- Criticに:
- 「このAI生成SVGは、プロトコルのどこに違反しているか」
を列挙させる
- 「このAI生成SVGは、プロトコルのどこに違反しているか」
ここまでできると、
- 「AIがどこで崩れやすいか」
- 「プロトコルをどう修正すべきか」
が見えてくる=SVG漫画用の“学習OS”の土台になる。
もしよければ、
- 今AIに描かせている SVGの一例の構造(タグ名とざっくりの中身)
- あなたが「ここが一番汚い/許せない」と感じているポイント
この2つを教えてくれたら、
そのまま「Critic用プロトコル10項目」 まで一緒に言語化できます。