0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ChatGPTに既存のQiita記事を確認させて重複を防ごうとしたが、結局やめた話

0
Posted at

ChatGPTを使って実際に文章を作りながら、人間とAIでどうすればより良いコンテンツを作れるのかを試しています。

現在は、ChatGPTと一緒に長文記事を一本制作・公開し、その制作過程で起きた現象や失敗、気づきを個別のケースとして記録しています。

この記事も、その実験中に実際に起きた一例です。

先に結論

ChatGPTに新しいQiita記事を書いてもらう前に、過去の公開記事や下書きを確認させて、似た記事を作るのを防げないか試しました。

私が試したのは、主に次のような方法です。

  • 過去のQiita記事を直接確認してもらう
  • Qiitaのストックを一覧として使う
  • Google Docsに公開済み記事と下書きをまとめる
  • Google DriveとChatGPTを連携して、そのGoogle Docsを参照させる
  • Markdownなどのファイルにまとめて渡す方法も検討する

ただ、私が試した範囲では、Qiitaの記事URLやストックをChatGPT側から安定して取得できないことがありました。

Google Docsなどに自分で情報をまとめれば管理はしやすくなりますが、今度はその管理資料を更新する作業が発生します。

そのため現在の私は、

新しい記事のタイトルを見て「これ、前にも似たのなかったっけ?」と思ったときだけ確認する

という、かなり雑な方法に戻りました。

この記事は「ChatGPTを使えばQiita記事の重複管理を完全自動化できた」という記事ではありません。

むしろ、

重複を防ごうとして何を試したのか
どこでうまくいかなかったのか
なぜ最終的に厳密な管理をやめたのか

を記録した記事です。

同じような管理方法を検討していて、「できなかったなら自分には必要ない」という方は、ここまでで大丈夫です。

なぜこうなったのか気になる方は、続きをどうぞ。

きっかけは、ChatGPTが似た記事を作ったこと

私は最近、ChatGPTと一緒にQiitaの記事をいくつか作っています。

何本か作っているうちに、かなり短い指示でも記事が作れるようになりました。

たとえば、

「Qiitaの記事作って」

くらいでも、ある程度いつもの形式で記事が出てくるようになりました。

これは便利だったのですが、あるとき新しい記事を作ってもらったところ、

「あれ? これ前に書いた記事とほとんど同じじゃない?」

ということがありました。

確認してみると、すでに公開していた記事とテーマがかなり重複していました。

そこで、

記事を作る前に、過去の記事をChatGPTに確認してもらえばいいのでは?

と考えました。

まず、公開済みのQiita記事を確認してもらおうとした

公開済みの記事ならWeb上にあります。

それなら新しい記事を作る前に、ChatGPTに過去の記事を確認してもらえばいい。

最初はかなり単純に考えていました。

ところが実際に試してみると、私のQiita記事のURLを渡しても、ChatGPT側から本文を取得できないことがありました。

一方で、以前公開した別のQiita記事については取得できる場合もありました。

そのため、

「Qiitaの記事はChatGPTから取得できない」

と単純に言えるわけでもありませんでした。

公開してから時間があまり経っていないことが関係しているのか。
検索やクロールなどの反映に時間差があるのか。
それとも別の理由なのか。

ここについては、今回の検証だけでは原因を特定できませんでした。

少なくとも私の環境では、

人間がブラウザから普通に開ける公開済みQiita記事でも、ChatGPTからは本文を取得できないケースがありました。

というところまでが、実際に確認できたことです。

じゃあQiitaのストックを一覧として使えないか

個別の記事を一つずつ探してもらうのではなく、公開済みの記事をまとめた一覧があればいい。

そこで、Qiitaのストックも試しました。

私は「文系Qiita部」というストックを作り、関連する記事をまとめています。

ここからタイトルと件数を取得できれば、

「現在の記事数は○件」
「このタイトルと似た記事がすでにある」

くらいは確認できそうです。

しかし、今回試した時点では、ChatGPT側からこのストックの中身を取得することができませんでした。

そのため、

QiitaのストックをそのままChatGPT用の記事台帳として利用する

という方法も、私の環境ではうまくいきませんでした。

これについても、Qiitaのストックが常に取得できないのか、今回だけなのかは分かりません。

だったら自分で一覧を作ればいい

そこで次に考えたのがGoogle Docsです。

公開済みの記事と、まだ公開していない下書きを一つのGoogle Docsにまとめることにしました。

私の場合は、記事ごとにタブを分けています。

公開済みの記事にはQiitaのURLを入れます。

まだ公開していないものには、

「下書き」

と書いておきます。

こうしておけば、ChatGPTがこのドキュメントを読めるのであれば、

  • 公開済みの記事
  • 下書きの記事
  • 既存記事と新しい案の重複
  • 公開済みURLの件数
  • 下書きの件数

などを確認できそうです。

たとえば、

「Google Docsには公開済みURLが8件あるのに、管理上の公開済み記事数は9件になっています」

のような差分があれば、更新漏れに気づけます。

また、Qiita上の非公開下書きをChatGPTから取得できない場合でも、

「Google Docsには下書きが5件あります。Qiita側も5件で合っていますか?」

と確認してもらうことはできます。

人間が件数を全部覚えておく必要はありません。

記憶する代わりに記録して、その矛盾をAIに確認してもらう。

これは結構よさそうでした。

ただし、管理資料を管理する仕事が増えた

ここで別の問題が出ました。

Google Docsを正しい状態に保つ必要があります。

新しい下書きを作ったら追加する。

公開したら「下書き」から公開済みに変更してURLを入れる。

記事を削除したら、それも反映する。

つまり、

AIに管理してもらうための資料を、人間が管理する必要がある。

当然といえば当然です。

今回はすでに公開済みの記事や下書きが何本もある状態から管理を始めたため、最初に整理するコストもそれなりにありました。

一度整理してしまえば、今後は記事を一本作るたびに一か所更新するだけなので、かなり軽くなるとは思います。

それでも、

運用コストが0になるわけではありません。

MarkdownをZIPにして渡す方法まで考えた

外部サービスとの連携が安定しないのであれば、もっと単純な方法もあります。

公開済み記事や下書きをMarkdownファイルにして保存しておき、それをまとめてChatGPTに渡す方法です。

必要ならZIPにまとめることもできます。

これなら、Web上の記事をChatGPTが取得できるかどうかに依存しません。

比較したい文章そのものを渡してしまうからです。

重複チェックだけを目的にするなら、かなり確実な方法だと思います。

ただし私は、ここで思いました。

Qiitaの記事管理に、そこまでやる必要ある?

最終的に、自分で「なんか見たことある」と思ったら調べることにした

私にとってQiitaは、厳密なコンテンツデータベースを構築したい場所ではありません。

同じテーマについて別の現象や別の切り口から書くこともあります。

タイトルや内容が多少似ていても、扱っている問題や結論が違えば、別の記事として存在していても特に困りません。

避けたいのは、

ほぼ同じ問題について、ほぼ同じ内容の記事をもう一本作ってしまうこと

です。

そう考えると、私の場合はもっと雑な運用で十分でした。

新しい記事ができたらタイトルを見る。

そこで、

「あれ? こんなの前にもなかったっけ?」

と思ったら、そのときだけ過去の記事を調べる。

実際、今回もそれで重複に気づきました。

完璧ではありません。

忘れていれば、そのまま似た記事を公開する可能性もあります。

ただ、その程度の事故を防ぐために毎回すべての記事をMarkdown化してZIPにまとめ、管理資料を更新し、AIに全文比較させるところまでやると、私の場合は管理コストの方が気になってきます。

AIを使っても、運用コストは0にならなかった

今回試してみて面白かったのは、AIを使えば管理作業そのものが消えるわけではなかったことです。

記憶をChatGPTに任せる。

過去の記事をWebから読ませる。

Google Docsに一覧を作る。

ファイルとして渡す。

いろいろな方法があります。

精度を上げようとすればするほど、そのための情報を人間側で整理する必要が出てきます。

一方で、管理を雑にすれば運用コストは下がります。

どこまでやるかは、扱っているコンテンツの重要度や量によって変わると思います。

私の場合は今回、

「タイトルを見て自分が既視感を覚えたら調べる」

くらいにしました。

もっと重要な情報を管理しているなら、Google DocsやMarkdownファイルを正本にして、毎回AIに確認させる方がいいかもしれません。

逆に、多少似た記事が存在しても困らないのであれば、そこまで厳密に管理しなくてもいい。

AIに仕事を任せると、人間の仕事が全部なくなるわけではありませんでした。

今回は、

「AIに何を覚えさせるか」ではなく、「AIに確認させるために、人間がどこまで管理するか」

を決める作業になりました。

そして私は、その管理を途中まで真面目に考えた結果、

まあ、Qiitaならこのくらい雑でもいいか。

というところに落ち着きました。

文系Qiita部

この記事で扱った現象は、ChatGPTと長文を作っている途中で起きたことの一つです。

実際には、一つの記事を長期間一緒に作っていると、文章が綺麗に整理されすぎたり、途中の細かい情報が消えたり、誰が最初に言った言葉なのか分からなくなったりと、他にもいろいろな「なんか変だ」が起きました。

それらを一つずつ切り出して観察した記録を「文系Qiita部」にまとめています。

文系Qiita部の記事一覧

この実験の元になった長文記事

今回のケースは、私がChatGPTと一緒に長文記事を制作している途中で実際に起きたことを、個別に抜き出して整理したものです。

制作過程全体は、noteの

「何も役に立たないAIに書かせた記事が5000円で売れた」

という記事に残しています。

この記事単体で今回の内容は完結していますが、元になった制作過程そのものを見たい場合はこちらです。

「何も役に立たないAIに書かせた記事が5000円で売れた」|note

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?