関連記事が選ばれる仕組み

このプラグインが何をもとに関連記事を選んでいるか、OpenAI をいつ使うか(費用がかかるのはどこか)を説明します。

このページの内容
  1. 記事を「数値(ベクトル)」に変えて比べる
  2. 関連記事の 3 つの選び方
  3. 関連記事の候補になる記事
  4. ベクトルがまだ無い記事・APIキーが無いとき
  5. キャッシュ(選んだ結果の保存)
関連記事が選ばれるまでの流れ
関連記事が選ばれるまで

記事を「数値(ベクトル)」に変えて比べる

「意味の近さで選ぶ」では、記事ごとに内容を表す数値の並び(ベクトル)を作ります。内容が近い記事ほど、数値も近くなります。関連記事を選ぶときは、表示している記事の数値と、候補の記事の数値を比べ、近いものから順に並べます。

段階何をするかOpenAI
① 記事を公開・更新バックグラウンド(WP-Cron)でベクトルを作る予約を入れます。—
② ベクトルを作る記事のタイトル・カテゴリやタグの名前・抜粋・本文(先頭 3,000 文字)を OpenAI に送り、ベクトルにします。最大 20 記事をまとめて 1 回で送ります。使う(費用あり・ごくわずか)
③ 記事ごとに保存ベクトルを記事のデータ(投稿メタ)に保存します。記事の内容が変わらない限り作り直しません。—
④ 数値どうしを比べる記事が表示されたとき、保存済みのベクトルどうしをサイトのサーバーの中で比べます(コサイン類似度)。使わない
⑤ 関連記事に表示近い順に、表示件数の分だけ並べます。結果は記事ごとに保存し(キャッシュ)、期限まで使い回します。使わない
同じ言葉がなくても選べる

たとえば「被リンクの増やし方」と「外部対策の基本」は、同じ言葉をほとんど使っていなくても内容が近いので、関連記事として選ばれます。タグやカテゴリをきちんと付けていない記事でも選べます。

関連記事の 3 つの選び方

「🤖 AIのAPI設定」タブの「関連記事の選び方」で選びます。

関連記事の 3 つの選び方
選び方どう選ぶか費用結果
意味の近さで選ぶ(推奨)ベクトルの近い順に選びます。ベクトルを作るときだけ(ほぼ 0 円)毎回同じ
意味の近さで候補を絞り、GPT が最終的に選ぶベクトルの近い記事を「表示件数+候補数追加」件まで集め、その中から GPT が選びます。選ぶたびに GPT の料金GPT 次第で変わる
従来の方式タグ・カテゴリ・ディレクトリ・タイトル・抜粋の一致で候補を集め、GPT が選びます。選ぶたびに GPT の料金GPT 次第で変わる
GPT を使う方式でも、訪問者の表示中には GPT を呼びません

GPT の選定はバックグラウンド(WP-Cron)で記事ごとに行い、結果ができるまでは意味の近さ(従来の方式では文字の一致)の結果を表示します。同じ記事で GPT を呼ぶのは 10 分に 1 回まで、GPT でエラーが出たときは 10 分間止めます。管理画面の「関連記事を取得」で GPT をその場で使えるのは管理者だけです。

関連記事の候補になる記事

次の条件をすべて満たす記事が候補になります。

どの設定が使われるかは「設定の優先順位と反映」を見てください。

ベクトルがまだ無い記事・APIキーが無いとき

状況どうなるか
APIキーを設定していないタグ・カテゴリ・ディレクトリ・タイトル・抜粋の一致で関連記事を選びます。
表示している記事のベクトルがまだ無いベクトルができるまで、文字の一致で選んだ結果を表示します(この暫定の結果は保存しません)。管理画面で開いたときや WP-Cron の処理でベクトルを作ります。
OpenAI でエラーが出た10 分間は OpenAI を呼ばず、文字の一致の結果を表示します(暫定の結果は保存しません)。

キャッシュ(選んだ結果の保存)

選んだ関連記事は記事ごとに保存し、「キャッシュ有効期限」まで使い回します。期限が過ぎると、次にその記事が表示されたときに選び直します。くわしくは「キャッシュと費用」を見てください。

関連記事のキャッシュの流れ