misskey-dev / misskey

🌎 A completely free and open interplanetary microblogging platform 🚀
https://misskey-hub.net/
GNU Affero General Public License v3.0
9.94k stars 1.35k forks source link

メディアの閲覧注意の理由を提示できるようにする #11031

Open kakkokari-gtyih opened 1 year ago

kakkokari-gtyih commented 1 year ago

Summary

メディアのみが添付されたノートの場合、それが性的にセンシティブな画像なのか、ネタバレ注意なのか、はたまた飯テロ画像なのかがわからず、誤クリックして精神的ダメージを食らう可能性があるためほしい気がする

kakkokari-gtyih commented 1 year ago

ただ、分類するとキリがない気はするので、ある程度絞る必要がある

くらいに分けるのがいいかも

yuriha-chan commented 1 year ago

センシティブ設定がセンシティブでない画像にも使われるとオオカミ少年効果で本来の警告の役目を果たさなくなるという話のように思われる。

ネタバレ注意など、本来センシティブでない画像に対してセンシティブと同様のワンクッションをそれと分かる形で設定できることで、この問題が軽減できれば良いことだと思う。ただし、飯テロ画像をわざわざセンシティブで投稿している人は不意打ちの冗談を意図していて、「飯テロ注意」で投稿することに魅力を感じないかもしれない。

また、性的コンテンツにもR15、R18、実写、イラスト、残酷表現、女性向け男性向けetc. といった違いがあり、期待と違うとオエってなる(人がいる)という問題は(潜在的には)結構大きいかなと思う。

こういうことを考え始めると(.designのように)別途理由をCW に書く運用が妥当だと思うが、畳まれて存在感が無くなってしまうとか、テキストや同時投稿のセンシティブでない画像も表示されないのは寂しいとか、注意書きの表示が美しくないと思う人もあると思うので、閲覧注意画像の上に任意の(もしくはサーバー管理者が設定した中から選んで)注意書きが書けるとありがたい人はいるんじゃないかと思う。

ただいずれにしてもActivityPub連合だとセンシティブかどうかはbooleanということになっているので、それに配慮する必要がありそう。

kakkokari-gtyih commented 1 year ago

ただいずれにしてもActivityPub連合だとセンシティブかどうかはbooleanということになっているので、それに配慮する必要がありそう。

確かに

Narazaka commented 1 year ago

そもそもセンシティブ設定以外についても完全対応ではなくフォールバック対応なものもあるっぽいし、Misskey内では細かく区別してActivityPub連合には関連フラグが一つでも付いていればセンシティブフラグを立てるみたいなフォールバックで運用するとかアリではと思ったり?

YTJVDCM commented 1 year ago

頻出する閲覧注意項目(先の4つなど)を予めデフォルトで決めておき、必要に応じてユーザー側が任意で閲覧注意内容を指定することも可能にする、というのも良いのではないかと思います。

また、たとえばNSFWな画像などについても、例えば単に"露出が多い"だけでも、水着、紐、全裸のように、ある程度の幅があるため、閲覧注意レベルを[低-中-高]ぐらいの簡単な指標で設定できると(そしてユーザー側に"レベル中以下ならば確認なしで表示する"、のような設定項目があると)良いと思います。

acid-chicken commented 1 year ago

CW と役割が被るのがあまり乗り気にならないポイント(ややこしい機能を追加するのはユーザーに優しくないので)

EbiseLutica commented 1 year ago

CWテンプレート機能(用意された文言をCWとしてそのまま使える機能)があればよさそう(サーバー側で設定可能にする)

u1-liquid commented 1 year ago

CWは本文全体を隠す、NSFWはメディアを隠す機能なので役割は違うと思います これができたらメディア自体に説明を入れれるので、ギャラリービューでもNSFWの画像を一覧に載せてあげることができそうなのでNSFWな絵を描くことが多い人等のコンテンツを見つけやすくすることもできそう

Sayamame-beans commented 1 year ago

私は以下のように考えます。

また、直近に利用した種類5つなどをワンクリックで設定可能なUIに出来れば、種類の設定自体もそれほど煩雑にならなさそうに思います。

更に、以下のような考えもあります。

少なくとも、どのメディアも一律で閲覧注意か否かしか無いというのは不便だと思います。

syuilo commented 1 year ago

これができたらメディア自体に説明を入れれる

現状もファイルにコメント(キャプション)設定できるけどそれじゃダメかしら

syuilo commented 1 year ago

それをセンシティブ設定時に表示するようにすればこのIssueの要件は全て満たせそうだけど

u1-liquid commented 1 year ago

ファイルのコメント(キャプション)はアクセシビリティに近い機能なんじゃない? センシティブなコンテンツを表示する前に出す説明を追加したいことなので用度が違うかも

syuilo commented 1 year ago

センシティブ理由の説明をファイルの説明に入れるのは何もおかしくないと思った

syuilo commented 1 year ago

「このファイルの説明」と「このファイルがセンシティブである説明」を分ける必要って何かしら

naskya commented 1 year ago

前者はスクリーンリーダーの利用者が投稿に添付された画像などの内容を把握するためにある(添付ファイルが表す情景の詳細な説明を記載することが求められる)のに対し後者は通常の利用者が添付ファイルを開くかどうか判断するためにあることを考えると、それらは区別されるべきものに思えます。

syuilo commented 1 year ago

前者はスクリーンリーダーの利用者が投稿に添付された画像などの内容を把握するためにある

少なくとも私はそういうつもりで作ってなかった

syuilo commented 1 year ago

仮にそうだとしても分ける必要があんまり分かってない

tamaina commented 1 year ago

分けるものだと思っていたのでどうして分けることに反対するのかがわかっていない

tamaina commented 1 year ago

CWでいいのではと思っているけど

syuilo commented 1 year ago

極力管理するものは少ない方が良い

EbiseLutica commented 1 year ago

誰も触れてないけど私はこれでいいと思う 現時点でセンシティブなものを伏せるやり方として確立しているところが比較的多い(私の観測範囲の限りでは) https://github.com/misskey-dev/misskey/issues/11031#issuecomment-1639515865

tamaina commented 1 year ago

テンプレートも実装負荷が高そう

過去に入力した内容をサジェストするだけでいいんじゃないかしら

syuilo commented 1 year ago

CWはメディアに対する機能じゃないからちょっと微妙感(ファイルはノート以外の場所でも表示される)

tamaina commented 1 year ago

ノート以外の場所

ギャラリーとか?(ギャラリーならギャラリーのタイトルにでも注意書きを書けばいいのでは

EbiseLutica commented 1 year ago

ファイルはノート以外の場所でも表示される

これ踏まえるとたしかにと思った

既存のALT文をNSFW表示のところに追加するようにするだけで良いと私も思う

u1-liquid commented 1 year ago

この系の提案についてなんでそんなに嫌がってるのかよくわからない 他の細かい説明とユースケースの対応までは要らないとしてもネタバレ、えっち、グロテスクの区別はパッと見て分かるようにしてあげる必要はあるんじゃない?

syuilo commented 1 year ago

ん、誰が嫌がってる?

syuilo commented 1 year ago

自分の認識では「メディアの閲覧注意の理由を提示できるようにする」に反対に人はいないと思ってた

u1-liquid commented 1 year ago

しゅいろもaqzも「NSFWの理由の表記は特に要らない、そんなに必要ならCWやファイルのコメント(キャプション)などで代用したい」って意見だと思ってた

syuilo commented 1 year ago

「ファイルのコメント(キャプション)などで代用」かつ「UIを改修」することで「メディアの閲覧注意の理由を提示できるようにする」は達成できると思うんだけど違うかな

syuilo commented 1 year ago

Issueの課題を解決する方法として、メディアがどういう内容なのかを説明するための、まさにこのIssueのためにあるかのようなぴったりなプロパティが既にあるからそれを表示するようにすれば良いだけかと思った

Narazaka commented 1 year ago

そのキャプションによって表示非表示を切り替えるまでいきたい気持ちありますが(PixivでR18は表示するけどR18Gは表示しないみたいな設定)どうでしょうか

syuilo commented 1 year ago

そのキャプションによって表示非表示を切り替えるまでいきたい気持ちありますが(PixivでR18は表示するけどR18Gは表示しないみたいな設定)どうでしょうか

それを実現するには自由入力ではなくて予め選択肢をMisskey側で用意することになるけど、どれくらい分けるのかが議論になるかも

YTJVDCM commented 1 year ago

センシティブな内容の細分化としては、もしかするとCEROのコンテンツディスクリプターアイコンがある程度参考になるかも ?

https://www.cero.gr.jp/publics/index/17/#block54

Narazaka commented 1 year ago

選択肢

https://github.com/misskey-dev/misskey/issues/11031#issuecomment-1639589054 で言及にあるとおり(自分が案を出した一人)、各サーバーで設定出来るのが良いと思っていて、デファクトスタンダードがいくつか(上記のCEROのでもいいしもっと簡単でも良い)あってあとはご自由にコンセンサスとってみたいな感じでいけないかなと。

syuilo commented 1 year ago

各サーバーで種類を設定すると連合で困るかも

tamaina commented 1 year ago

各画像にコメントを残す方式でも連合に困ることにならない…?

syuilo commented 1 year ago

その場合はそもそも「そのキャプションによって表示非表示を切り替えるまでいきたい」を諦めるから、ならない

Narazaka commented 1 year ago

現状Sensitiveが二値でしかない事による作用として「連合先に迷惑をかけないために連合内で最も基準が厳しいSensitiveにあわせる圧力が働いて何でもかんでもSensitiveになっていく」 という割と分散型として本末転倒な感じのものがあると思っていて、Sensitiveを分類する利点の一つにこれの解消が上げられるかなと思ってます。「他のサーバーではSensitiveなのかもしれないがうちではそうではない」という分類が作れるため。 提案にあるように「未知のフラグ」は全て「その他」扱いでデフォルトSensitiveと同じ扱いにすればいけませんかね。

YTJVDCM commented 1 year ago

Misskey側で用意されたプリセット + サーバー別で設定できるその他 という形式にすれば連合間で困ることも少なくなるかも

これに加えて"その他"が他サーバーでデフォルトプリセットのどれに該当するようにするか、 とかも設定できれば理想だけれど、そこまで来ると実装負荷が高そう...

Narazaka commented 1 year ago

Misskeyデフォルトでsexualとgoreとかがあって、misskey1.example.comで追加でmeshiteroがある場合、misskey2.example.comでmeshiteroへのルールを作ることによって挙動を変えられるみたいな。(実装負荷は考慮できていないです)

syuilo commented 1 year ago

そのキャプションによって表示非表示を切り替えるまでいきたい気持ちは別Issueにしようぜ

syuilo commented 1 year ago

(実現するには連合間で統一した分類を定義しておく必要があるけど困難そう)

Narazaka commented 1 year ago

別issueはそうかも

連合間で統一した分類

それは事前に定義することは必要なく、次第にコンセンサスが取れていくのに任せるのでよいのでは?というのが私の言及です(デフォルトがこれまでのSensitiveと同じなら、これまでと同程度に意図せず表示されることはないためフェイルセーフ的

あるいは最低限は定義すべきと言うならキャプションを入力出来るようにする前にデファクトスタンダードいくつかまでは決めておいた方が以後スムーズな気もします

syuilo commented 1 year ago

センシティブ分類によって表示/非表示切り替えを実装するには事前にコードとして内部的に分類を持っておく必要がありそう

Narazaka commented 1 year ago

コードである必要があるんですか?(DBにあるのではダメそう?

YTJVDCM commented 1 year ago

https://github.com/misskey-dev/misskey/issues/11031#issuecomment-1643463018

これに加えて"その他"が他サーバーでデフォルトプリセットのどれに該当するようにする

これの実装が可能なら、デフォルトのプリセットをある程度広義的にしておくことで連合ごとの制御はできそう。 閲覧注意理由を文字列型で送ってしまえば、そのサーバーで具体的にどういった理由で閲覧注意とされているのかもわかるので、ユーザー側から見ても大きな負荷にはならないかと。 (ただ理由を文字列で送ってしまうと、今度はローカライズ周りが面倒になるという問題はある)

syuilo commented 1 year ago

コードである必要があるんですか?(DBにあるのではダメそう?

コードとしてMisskey全体で同じ分類を持っておかないと連合できないしUIも作れない

Narazaka commented 1 year ago

文字列で送るイメージありました(上述のごとくsexualとかgoreとか) ローカライズも各受信サーバーにまかせるのはしんどいかなあ(それをつけたサーバーから情報送れると良いがそれだと流石に煩雑な気はする

Narazaka commented 1 year ago

UIならこういうところは送られてきた文字列ないしそのローカライズを表示するみたいな話だと思ってましたがそういうところではなくです?(連合についてもなぜ出来ないのかよくわかってないです。上記で言及されているフィールドをActivityPubで送るときの仕様上何か不都合なことがあるとか?)

image