eu-ai-label について
eu-ai-labelは、欧州委員会のAI開示アイコンを画像や動画に焼き込むPythonスキルです。ラベルの種類や配置、サイズ、動画エンコードを調整でき、メディアを開示表示する制作者向けです。
主な機能
- 01画像や動画へのAI開示アイコンの焼き込み
- 02AI、AI GENERATED、AI MODIFIEDの選択
- 03色、配置、サイズの調整
- 04一括処理とドライラン
- 05推奨代替テキストの出力
活用シーン
- 01AI生成動画へのラベル付与
- 02AIで一部を変更した写真への表示
- 03複数画像への同一ラベルの一括追加
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ run-labs-com/ agent-skills --skill eu-ai-labelインストール後、Claude Code で/eu-ai-labelを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/SOURCE.mdassets/svg/ai-black-50.svgai-black.svgai-generated-black-50.svgai-generated-black.svgai-generated-white-50.svgai-generated-white.svgai-modified-black-50.svgai-modified-black.svgai-modified-white-50.svgai-modified-white.svgai-white-50.svgai-white.svgreferences/eu-rules.mdscripts/ai-label.py詳細
EU AI コンテンツラベル
AI 生成コンテンツを示すため、欧州委員会の公式アイコンを画像や動画に焼き込みます。出典:https://digital-strategy.ec.europa.eu/en/policies/eu-icons-labelling-ai-generated-content
(アイコンは assets/ に同梱されています。PNG と SVG 形式で、4 種類のカラー展開があります。)
クイックスタート
python3 scripts/ai-label.py <file...> # basic "AI" icon, bottom-right, auto colour
入力ファイルの隣に <name>-ai-label.<ext> を書き出し、推奨する代替テキストを表示します。
別のディレクトリから呼び出す場合は、必ずスキルの絶対パスを使用してください。例:
python3 ~/.pi/agent/skills/eu-ai-label/scripts/ai-label.py clip.mp4
適切なバリエーションを選ぶ
--variant | アイコン | 使用するケース |
|---|---|---|
ai(デフォルト) | 「AI」バッジ | ディープフェイクや公開するテキストの作成に AI が関与した場合、または独自のテキストラベルや第 2 レイヤー(例:「音声は〜で生成」+アイコン)を追加する場合 |
generated | 「AI GENERATED」 | 全体が AI 生成で、プロンプト以外に人間が作成した要素や編集上の制御がない場合 |
modified | 「AI MODIFIED」 | 人間が作成した既存コンテンツの一部を AI で変更した場合(顔の入れ替え、AI で家具を配置した部屋など) |
どのケースに当てはまるか明らかでない場合はユーザーに確認してください。不明な場合は ai をデフォルトとして使用してください。
よく使う方法
# fully AI-generated video, white icon, bottom-left, slightly bigger
python3 scripts/ai-label.py clip.mp4 -v generated -c white -p bottom-left --height 10
# partially modified photo
python3 scripts/ai-label.py photo.jpg -v modified
# batch into a folder (note: use --suffix=-xyz for values starting with a dash)
python3 scripts/ai-label.py shots/*.png --outdir labelled/ -v generated
# label only the first 5 seconds (still must be visible at first exposure)
python3 scripts/ai-label.py clip.mp4 --enable 'between(t,0,5)'
# busy background: add a backing plate
python3 scripts/ai-label.py clip.mp4 --padding 10 --padding-color '[email protected]'
# just get the raw asset path / alt text for use elsewhere (web, editor, Figma)
python3 scripts/ai-label.py --print-asset generated --color black
python3 scripts/ai-label.py --print-alt modified
python3 scripts/ai-label.py --list
重要なオプション
-c/--color auto|black|white—autoは対象の角の色をサンプリングし、コントラストが高くなるアイコンを選びます。--half— 不透明度 50%のアイコンバリエーションを使用します(不透明度 100%のものが目立ちすぎる場合のみ)。-p/--position—bottom-right(デフォルト)、bottom-left、top-right、top-left、bottom-center、top-center。br/bl/tr/tl/bc/tcのエイリアスも使用できます。- サイズ:
--height(フレームの高さに対する割合、デフォルトは 8)または--width(フレームの幅に対する割合)、あるいは絶対値で指定する--height-px/--width-px。制限値:--min-px(24)、--max-width(40%)。 --marginは短辺に対する割合(デフォルトは 2.5)、または--margin-pxで指定します。- 動画のエンコード:
--crf 18、--preset medium、--vcodec libx264。音声はストリームコピーされます。それ以外のオプションは--ffmpeg-argで追加できます。 -n/--dry-runは ffmpeg コマンドを表示し、-f/--forceは上書きし、--no-metadataは開示コメントタグを省略します。
動作に関する注意:画像は形式を維持します(JPEG は q2、PNG は --keep-alpha を指定しない限り平坦化されます)。
GIF は生成したパレットを使って再エンコードされます。音声のみの入力はヒントを表示してスキップされます
(EU のアイコンは視覚的なものです。音声についてはプレーヤーの UI、説明文、または添付ラベルで開示してください)。
メタデータは動画のみが対象です。 開示コメントタグは動画コンテナ(MP4/MOV/…)には書き込まれますが、
ffmpeg の静止画用マルチプレクサーでは破棄されるため、PNG/JPEG/WebP/TIFF/GIF の出力にはタグが付きません。スクリプトはその旨を示し、タグが付くように装うことはありません。これはコンプライアンス上の表示に関するものであり、Art. 50 が求めているのは視認できるマークです。いずれの場合もラベルはピクセルに焼き込まれます。それでもタグを追加する場合:
exiftool -Comment='…' out.png
遵守すべき配置ルール
ユーザーが明示的に別の指定をしない限り、次のルールに従ってください。
- 最初に表示された時点で視認できること — 最初のフレーム、またはスクロールせずに見える位置に配置し、最後だけに表示しないでください。
- UI オーバーレイに隠れない場所に配置してください(TikTok/Reels の右側メニューや YouTube のプログレスバー領域など、プラットフォーム固有の隅は避けてください。その場合は
top-leftまたはbottom-leftを推奨します)。 - 再共有やダウンロード後も残るよう、ピクセルに焼き込んでください。メタデータだけでは不十分です。
- はっきり見えるサイズにしてください — フレームの高さの約 5%を下回らないようにしてください。デフォルトの 8%は適切な下限です。
- ファイルを公開する各表示面に、推奨する代替テキスト / ARIA ラベルを設定してください(スクリプトが表示します。
--print-altでも取得できます)。 - 開示の表示時間に制限がある場合は、読み取れるだけの時間、画面に表示してください。
ルールと適用範囲の全文:references/eu-rules.md。
重要な注意事項
- アイコンを使用するだけでは、法令遵守が確立されるわけではありません。導入者はAI Act第50条に基づく責任を引き続き負い、実施規範の署名者はその表示仕様に従う必要があります。
- すべてのコンテンツにラベルが必要なわけではありません。義務の対象は、実在の人物・場所・出来事に似せたディープフェイク(画像・音声・動画)と、人による編集上の確認を経ずに公開される、公共の利益に関するAI生成テキストです。芸術作品・風刺作品・フィクション作品には、作品の鑑賞を妨げない範囲で限定的な開示が求められます。法執行機関が許可した用途は対象外です。
- アイコンは視覚的な開示であり、来歴情報ではありません。機械可読な来歴情報を示すには、C2PA/Content Credentialsも併用してください。