6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ジーズアカデミー 技術記事書いてみた編Advent Calendar 2023

Day 17

「ネットストーカーみたいですね」と言われてしまった情報収集方法(GPTsもあるよ!)

Last updated at Posted at 2023-12-16

はじめに

ジーズアカデミー 技術記事書いてみた編 Advent Calendar 2023の17日目を担当しますphilosophy_noteです。2021年に東京LAB11期を卒業して現在は卒業生の方が起業した会社でエンジニアとして働いています。

当初書く気はなかったのですが、在籍時の担任のkano_mioriさんに『記事を書かないGeekなんていないよ…………ね???????』というハラスメント(略してギーハラ)を受けたため、執筆しました。ちなみにkano_mioriさんは12/22に陰キャ論かオタク限界論について執筆してくれるそうです。楽しみですね!(煽り)

エンジニアと情報収集

本題に入ります。
私は異業種からITエンジニアに転職した人間ですが、
ITエンジニアは情報収集が重要な職種であると感じてます。
特にこの1年はChatGPTの登場を契機として
そのスピードが加速する毎日だと感じています。
この記事では私がどのように情報を収集しているかをまとめるとともに
発生した課題をGPTsを使用して解決を試みた話になります。

RSS

私は情報収集にはRSSを利用しています。
RSSリーダーというとinoreaderfeedly
が有名ですが、私はアプリを増やしたくないのでSlackをRSSリーダーにしています。
手順も次のリンクにあるように簡単です。

私は専用のワークスペースを作成し、チャンネルごとに表示するフィードを分けることで
カテゴリー分類しています。

スクリーンショット 2023-12-12 11.54.53.png

スクリーンショット 2023-12-16 20.01.52.png

スマホからもワークスペースにアクセスできるように設定することで、
通勤時間などの空き時間に記事を確認しています。

余談ですが、私はkano_mioriさんのように陰キャかつオタクで会話が苦手なので、
会話のきっかけとして、同僚のエンジニアやG'sの同期が執筆した記事の感想を言うようにしています。
「投稿したばかりなのになんで知っているんですか、ネットストーカーですか」
「なんで僕の記事読んでいるんですか怖い」
といった形で逆方向に作用しています( ;∀;)

Notion

読んだ記事の中で気になる記事があればSlackの『後で見る』に登録し、
時間ができた際に内容を詳しく確認しています。

保管したい記事についてはNotionに専用のデータベースを作成し
WebClipper機能を使用してブックマークしています。

収集した記事以外にも仕事や個人開発で参照した記事も全てNotionに保存することで
情報管理を一元化するようにしています。

GPTsで検索

そうした中で課題が発生しました。
記事が増えるにつれて目的の記事を見つける手間が発生しました。
当初はタグをつけて管理していたのですが、
タグ付けするのに時間を要する点がネックでした。

そうした中で次の記事を見つけました。

記事の通りにリバースプロキシとOpenAPIを設定し、
記事を収集しているDBとAPI経由で連携するようにしました。

なお、下の画像の歯車マークをクリックする度に
APIキーがリセットされてしまうようなので注意してください。

スクリーンショット 2023-12-12 12.13.40.png

検索する指示文は次のように作成しました。

instruction.md
この GPTs は、Notion データベースを自然言語クエリで検索するために設計されています。
検索するNotionデータベースには膨大な技術記事が格納されています。
 Notion ページから関連する情報を効率的に検索します。

GPT は、Notion データベースから正確で文脈に沿った情報を提供することに重点を置いています。
ユーザーは日々の業務で使用する開発技術に関するリファレンスを検索するために使用しています。
GPT は、データのプライバシーとセキュリティの制約の中で運用され、
機密情報が細心の注意を払って取り扱われることを保証します。
また、簡潔で有益な回答を提供し、必要に応じてクエリを明確にして検索結果の精度を高めることができます。

回答する際は次の手順を守ってください
①検索クエリでデータベースの内容を検索する
②記事のタイトルを確認してその中から検索クエリとの内容の関連度を調査する
③関連度の高い順に表示する

質問の内容に直接ヒットする記事がない場合が多いです。
そのような場合は検索クエリを適宜変更する必要があります。
変更するクエリの候補をユーザーに提案し、
了承が得られたクエリで再度検索してください。

limitを10件にしてください。
検索結果は下の表にまとめてください。
表は最大10件まで表示してください。
()内はテーブルで表示してほしいNotionPageの項目になります。

| 記事タイトル | 記事の元URL | 保存日 | 
| ------------ | ----------- | ------ | 
|  (Notion Pageのタイトル) |(URLプロパティで所持しているURL)|(クリップ日時で所持している日付 )| 
|              |             |        | 
|              |             |        |

実際にRSPECのベストプラクティスについて調べたところ次のような検索結果が返ってきました。

スクリーンショット 2023-12-16 19.26.35.png

NotionのDBの検索ボックスで同じ内容を検索しても1件もヒットしなかったので、
ある程度の柔軟な検索には対応してくれそうです。

おわりに

記事内ではGPTsで上手く解決できたような書き方ですが、
実際には検索速度が遅いことや精度で課題があるので、
まだまだ改良が必要そうです。

また、slackについても、関係ない記事が多数存在し、
情報収集のノイズとなっている課題があります。
AWS Lambdaを通してフィルタリングするなどといった対応が必要そうです。
何か良い解決策などありましたら
コメントでお知らせいただけますと幸いです。

おまけ(気に入っているRSSフィード)

企業テックブログ

Speaker Deck

Menthas

Publickey

6
2
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
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?