概要
「機能: Fedibirdのサークルは指定フォロワー限定投稿 | GNU social JP」で最後にFedibirdの機能を紹介しました。その後、Mastodon v4.2の検索機能が概ね決定し、それに合わせたFedibirdの検索機能の強化が発表されていたので紹介します。
「機能: FedibirdのMisskeyの投稿の検索対象変更・検索範囲用プロフィールキーワードの追加 | GNU social JP」と関連する内容です。
まず、2023-09-14 Thuの以下の投稿でMastodon v4.2が来週公開予定の可能性が高いと予告がありました。
Mastodon Engineering|MastodonEngineering@mastodon.social#Mastodon 4.2 has entered the release candidate stage. We expect the stable to drop next week!
https://github.com/mastodon/mastodon/releases/tag/v4.2.0-rc1
この直後にFedibirdの検索機能強化の告知がありました。
#fedibird #fedibird_info 全文検索の機能を強化しました。
これは、Mastodon v4.2に搭載される予定の新機能と、Fedibirdが積み上げてきたものを統合し、さらに強化・拡張したものです。
ついては、説明の中で、Mastodon v4.2と共通するものと、Fedibird独自の部分が混在してきますので、あらかじめご承知おきください。
違いについては都度説明します。
最初に重要な点を挙げます。
あなたの投稿を全文検索の対象とする、つまりみんなに検索してもらえるようにするには、設定変更が必要です。
逆に言うと、設定を変更しなければ、あなたの投稿が検索によって発見されることはありません。
Mastodonの従来の全文検索は、あなたが既に知っている投稿を振り返るためのものでした。
自分自身の投稿は全て対象になる他、お気に入りやブックマーク、ブースト、返信(メンション)など、何らかのリアクションを行った投稿だけが対象になります。
今回、Mastodon v4.2から、自分で設定した(許可した)人の公開投稿に限り、誰かにとって未知の投稿を全文検索の対象となるよう拡張されました。
ついては、自身の公開投稿を全文検索の対象とする(許可する)か検討し、設定してください。
で、もう一度書いておきますが、今回は、
『全文検索の対象が拡大される』
ということでよろしくお願いします。
Mastodonの全文検索は2018年2月に実装されたもので、新しい機能ではありません。
Mastodon v4.1までは、投稿検索は自分の投稿、お気に入り、ブックマーク、ブースト、メンションなど、自分が反応した投稿だけで、範囲がかなり限定されていました。
v4.2からは、検索許可ユーザーの公開投稿を検索対象に追加しました (未収載、フォロワー限定投稿は常に検索対象外)。したがって、自分の投稿の検索許可には設定が必要です (デフォルト対象外)。
なお、Fedibird自体の機能は「Add support indexable in accounts · fedibird/mastodon@f9cd501」のコミットでの告知となります。
設定
以下の投稿で設定を説明していました。
#fedibird #fedibird_info Mastodon v4.2の場合、自分の公開投稿を検索結果にみせる設定は、プロフィールの『Privacy and reach』にある『Include public posts in search results』です。(開発中にて、まだ和訳が反映されていない)
対象は公開投稿なので、未収載、フォロワー限定にした投稿は対象外です。
この設定を有効にして保存すると、自身のフォロワーがいるリモートサーバにも伝わり、Mastodon v4.2以降、もしくはFedibirdにおいて、あなたの公開投稿が検索対象になります。
Fedibirdの場合、基本はFedibird独自の検索範囲設定があり、それと合わせてMastodon v4.2互換の設定項目があります。設定がある画面はプロフィールです。
所属サーバを含む、Fedibirdに対してはFedibirdの設定が有効になります。それ以外のMastodon v4.2互換のサーバには、互換設定の方が有効になります。
Fedibirdの設定では、フォロワーにだけ公開することが可能で、また個々の投稿毎に設定を切り替えられるようになっています。
この機能は、互換設定を行うとリモート側で無視されるのでご注意ください。
具体的には、[Profile]-[Privacy and reach] -[□ Include public post in search result] がMastodon v4.2の設定項目です。オンにすると、Mastodon v4.2以上とFedibirdで公開投稿が検索対象になります。
なお、FedibirdではMastodon v4.2用の互換設定が搭載されました。
元々、Fedibirdの検索設定は、Mastodonデフォルトのリアクション限定、公開投稿以外に、フォロワー限定、投稿別に許可を変更可能になっていました。互換設定をオンにすると、Mastodon v4.2以上でFedibirdの投稿も検索対象になるものの、逆にリモート側でFedibird独自の検索範囲設定が無視されます。
#fedibird #fedibird_info この他、Fedibird検索に対する互換機能として、プロフィールの説明文に特定文字列(キーワード)を書くという方法があります。
これは、Mastodon v4.2の公開機能ではなく、Fedibirdのフォロワー限定公開を使いたい場合や、Mastodon v4.1以前、Mastodon以外のシステムにおいて、
Fedibirdの利用者に対してのみ、それらの検索公開方法を有効にしたい場合にだけ使います。
Mastodon v4.2以降は標準の設定を行った方が良いですが、この互換機能は残しておきます。
プロフィールに記載するキーワードと意味の対応は次の通りです。
#searchable_by_all_users
誰でも検索できる#searchable_by_followers_only
フォロワーが検索できる#searchable_by_reacted_users_only
リアクションした人だけ検索できる(Mastodonのデフォルト)
今回のMastodon v4.2の検索機能とは別に「機能: FedibirdのMisskeyの投稿の検索対象変更・検索範囲用プロフィールキーワードの追加 | GNU social JP」の検索設定もあります。
方法
検索方法の細かい検索条件の説明がありました。
#fedibird #fedibird_info 強化された全文検索では、様々な指定方法が可能になっています。
また、従来と仕様が変更になった部分があります。
まず、検索語を空白で区切って並べた場合、これまではOR検索になっていました。つまり、検索語のいずれかが一致すれば結果が表示されていました。
Mastodon v4.2以降およびFedibirdでは、これがAND検索になりました。つまり、検索語がすべて一致すれば結果が表示されます。
Fedibirdではさらに、検索語を , でつなぐとOR検索になります。OR検索はMastodon v4.2では対応していないのでご注意ください。
検索語を ” ” で囲うことで、フレーズ検索ができます。並び通りの検索語で調べたい場合、フレーズ検索が有効です。通常通り書いて結果の候補がうまくいかなかったら、” ” で囲ってみてください。
検索語の先頭に – をつけることで、除外指定(NOT検索)が可能です。指定した検索後が含まれない投稿を検索できます。
URLを直接書いた場合、全文検索ではなく、アカウントや投稿の照会になります。
URLを検索する場合はフレーズ検索にするか、Fedibirdのurl検索を使います(後述)
#fedibird #fedibird_info 全文検索では、様々なオプション指定をして、検索結果を絞り込んだり、順番を変えることができます。
from:noellabo のように、プレフィックスを from + : という書式で書き、空白などを開けずに値を続けて書きます。
個々に詳細を解説したいのですが、スペースが限られますので、ざっくり列記しておきます。
has, is, not
投稿の種類などを指定して絞り込みます。hasとisの動作は同じです。notはFedibirdでのみ指定できる、指定の否定です。
image, audio, video, media, poll, link, embed, sensitive, reply が指定可能です。
またFedibirdでは、quote, bookmark, archive, bot が追加で指定できます。
language
投稿の言語を絞り込みます。
from
投稿者を絞り込みます。
before, after, during
投稿日時を絞り込みます。
in
all または library を指定し、libraryを指定した場合は従来のMastodonの検索結果同様、自分の投稿とリアクションした投稿だけに絞ります。
#fedibird #fedibird_info なお、inについてはFedibirdのフォロワー限定も指定できます。 private です。
以下は、Fedibirdでのみ使える機能です。
to
投稿の宛先(メンション)として指定したアカウントで絞り込みます
domain
サーバーのドメインを指定して絞り込みます。
app, client, source, generator
クライアントアプリを指定して絞り込みます。先頭一致です。
url
Fedibirdでは、ノイズになりやすいため、本文の検索からURL文字列を除外しています。URLを検索したい場合はこちらを使って指定してください。
min_replies
投稿に対する返信数で絞り込みます。指定数より返信が多い場合にヒットします。先頭に – をつけて意味を反転させることが可能です。
min_boosts
投稿に対するブースト数で絞り込みます。
min_favs
投稿に対するお気に入り数で絞り込みます。
min_reactions
投稿に対する絵文字リアクション数で絞り込みます。
min_refs
投稿に対する参照・引用数で絞り込みます。
#fedibird #fedibird_info おっと、is, has, not の指定で抜けているのがありました。
Fedibirdでは、投稿の公開範囲を public, unlisted, private, limited, direct, personal で指定して絞り込みできます。
また、FedibirdではMisskeyの投稿を検索対象としています。プロフィールへのキーワード指定で挙動を変更できるので、Misskeyの人は必要な場合、指定しておくことをお勧めします。
Fedibirdは指定のほとんどにカンマ区切りで複数の値を指定できるので、それも上手に使ってください。
使いこなし方法はいろいろと編み出せるハズです。組みあわせでかなり面白いことができます。
またおそらく、これらの機能拡張は、多くの人にとって、Fediverseの利用体験が一気に変わるほどのインパクトがあるハズです。
逆に、検索対象にならないように公開範囲を設定したり、基本の設定を考えるなど、ガードする方法もよく考えてください。
デフォルト設定で既に守られていますが、検索公開するメリットも大きいですから、うまく使いこなしてくださいね。
#fedibird #fedibird_info おっと、もう一つ重要なのを忘れていました。
order:desc
order:ascFedibird固有の指定ですが、検索結果を最新順、古い順に変更します。デフォルトは最新順です。
期間指定もできるので、これでだいたい任意の投稿をみつけてくることができるのではないかと思います。
#fedibird #fedibird_info 説明の漏れていた仕様ですが、
from:me と指定する(me)ことで、自分のアカウント名を書く代わりになります。Mastodon v4.2の仕様です。
ユーザー名がmeのローカルユーザーを指定する場合、ドメイン名まで書くことで対応できる……かな?
あと、リアクションなどの数で絞り込む機能について。
MastodonやMisskeyなどのサーバが分散しているシステムでは、正確な数字は投稿元のサーバにしか記録されていません。
リモートサーバの投稿に記録されているリアクションなどの数の表示は、そのサーバが把握できる範囲のもので、本来の数字より大幅に少なくなります。
それでも十分に参考にはなりますが、比較には使えないものと思ってください。
人気の投稿を見つけるため使うこともできますが、それを追いかけると不正やスパム行為が増えてノイズになったり、比較して競争心を煽ることにも繋がりますので、慎重に扱ってください。
なお、この検索指定は何に使う意図で設けたかというと、自分の過去投稿を掘り起こすためです。
キーワードになる単語などの記憶が曖昧でも、注目度が高かったものという条件で絞ることで候補が絞れ、非常に探しやすくなります。
Fedibirdの新しい全文検索のオプション指定、一覧が必要と思いましたので、ブログエントリにまとめました。
※ 基本的にFedibird利用者向けですが、Mastodon v4.2をベースにしているため共通部分が多いです。
Mastodon v4.2とFedibirdの検索文字列(早見表) – noellabo’s tech blog https://blog.noellabo.jp/entry/fedibird-advanced-search
#fedibird #fedibird_info 全文検索機能ですが、昨日、参照を含む投稿に絞り込む為の is:ref を追加しています。
途中で追加した機能は、インデックスに情報がのっていません。一部の過去投稿と新しい投稿について機能しますのでよろしく。
また、インデックスの作成が加速するように、メインサーバをフル動員しています。これまでの4倍ぐらいは速く終わりそうかな。
fedibird.comの全文検索は、独立したElasticsearch用サーバを3台用意しています。
この検索サーバの負荷を心配していたのですが、いまのところ全然余裕のようです。
当初、fedibird.comが抱えているデータを全部突っ込む処理をするとなれば、検索サーバの負荷が問題になるんだろうと思っていたんですが、実はデータを用意するMastodon側の方が負荷が高いことがわかりました。
そこで、Mastodon側のCPUをつっこんで、処理を加速しているという次第です。
「Mastodon v4.2とFedibirdの検索文字列(早見表) – noellabo’s tech blog」で一覧にまとめられていました。
元々、Mastodon v4.1までは空白区切りでOR検索だったのが、AND検索になりました (Fedibirdも)。Fedibirdではコンマ,
区切りで、従来のOR検索も残しています。逆に、Mastodon v4.2ではOR検索が不能になりました。
- 二重引用符
”
で検索語を囲むことで、フレーズ検索 (並び順検索) 。 - 検索語の先頭の-: 除外指定 (NOT検索)。指定した単語を含まない投稿を検索。
- URLを直接指定は検索ではなくアカウント・投稿の照会。URL検索時はフレーズ検索かFedibirdのurl検索。
他に、様々なオプション指定が可能です。[<option>:<word>] の書式で指定します。
詳細プロフィール。SNS: X Twitter/GS=gnusocialjp@gnusocial.jp/WP=gnusocialjp@web.gnusocial.jp。2022-07-17からgnusocial.jpとweb.gnusocial.jpのサイトを運営しています。WordPressで分散SNSに参加しています。このアカウントの投稿に返信すると、サイトのコメント欄にも反映されます。
Comments