技術ブログを支える技術 – Jagu’e’r Tech Writers Meetup #9 レポート
Jagu’e’r Tech Writers とは?
Jagu’e’r Tech Writers (以降 Tech Writers) は、Jagu’e’r (Google Cloud のエンタープライズユーザー会) の情報発信を盛り上げる!をテーマに発足した分科会です。2023 年 8 月に立ち上げました。
Tech Writers では Meetup を中心に、情報発信を盛り上げるための様々なアクティビティを実施しています。分科会に参加することで、スキル、ナレッジ、ノウハウ、コツなどを楽しみながら高めあえる場を目指しています。
Meetup #9 を開催しました
2024 年 11 月 19 日 (火) に、Meetup #9 を開催しました。
Meetup #9 では「技術ブログを支える技術」ということで、ゲストに クラスメソッド 社の吉川さん、enechain 社の中山さんをお迎えして、各社で技術ブログに対するテクニカルな取り組みをお話いただきました。
1. 生成AI「Gemini」を活用したZennのスパム投稿自動検出システム
クラスメソッドの吉川さんからは、エンジニア向け情報共有コミュニティ「Zenn」での取り組みをお話しいただきました。
自己紹介
吉川さんは クラスメソッド 株式会社のソフトウェアエンジニアとして、広島からリモートで働かれているとのことです。業務では Google Cloud に加え、AWS についても知見があるとのことで、二刀流エンジニアとしてご活躍されています。
本事例は Generative AI Summit Tokyo ’24 Fall 内で開催された 第 2 回 生成 AI Innovation Awards のファイナリストに選定された事例となっており、本事例でも吉川さんが登壇されたそうです!
Zenn について
Tech Writer にご興味がある皆さまはすでにご存知の方が多いかもしれませんが、Zenn はエンジニア向けの技術情報共有コミュニティサービスです。3 種類の投稿形式で知見を発信でき、記事の著者が対価を得られることが特徴です。個人向け機能に加えて企業向けの Publication 機能も活発に利用されており、アドベントカレンダーなどでも利用されています。
Zenn は 2020 年 9 月に個人プロジェクトとしてリリースされ、2021 年 6 月に運営会社がクラスメソッド株式会社に移管されました。現在も クラスメソッド 株式会社で運営されています。
スパム投稿の急増
2024 年 6 月頃からスパム投稿が急増し、問い合わせの件数が急増しました。これらに対応するためには、月間 140 時間(チーム全体の工数の 15% 以上に相当)もの人的リソースを費やす必要があり、サービス運営に大きな支障をきたす事態になりました。
工数の制約を考慮し自動化が検討されましたが、Zenn チームは機械学習の専門家がおらず、対処に必要な専門知識が不足していました。そこで、生成AI「Gemini」を活用することでスパム検出が行えないか、というのが今回お話する内容になります。
システム概要
実際に動作しているシステムの概要は以下のようになっています。コンテンツに対して Gemini がスパム判定を行い、違反しているおそれがある場合は違反報告を行います。この時点ではあくまで違反報告を上げるだけに留め、実際に管理者が違反内容を確認したうえで対処が必要な場合はコンテンツへの対処を行う、という流れになっています。
生成 AI を活用するメリット
機械学習の専門知識がなくとも、スパム検出という高度な作業を実現できたことが大きな成果であるとお話されていました。プロンプトは自然文になるため、専門家以外でも微調整が可能な点も大きなポイントです。
また、生成 AI の中でも、Gemini を活用するメリットとして以下が挙げられていました。
- Google Cloud 上で完結するので、構築が容易
- JSON 形式での出力を得ることで、システムへの組み込みが容易
- Context Caching / Batch Prediction でコスト最適化の余地が存在
また、吉川さんは「機械学習の専門家が不在」でも「そこそこ高い品質」が実現できる部分が生成 AI のメリットであると強調されていました。専門家がいることで、更に高い品質が目指せたり、コストを軽減できる可能性がある、とお話されていました。
導入結果
スパム判定を自動化したことにより、スパム疑いの投稿数はピーク時に比べて 85 % の削減を実現できました。ユーザーからのスパム報告も減少したそうです。
コスト面で見ても、人的チェックと比較しても、75 % のコストが削減できたそうです。素晴らしいですね!
今後の展望
プロンプトを継続的に見直したり、生成 AI を他の機能(執筆補助や、AI レビューなど)にも活用していくことを想定されているとのことです。
まとめと感想
吉川さんの発表でも触れられていましたが、生成 AI の登場により、高度な知識が必要であったり、甚大なコストをかけて行ったりしていた作業が、誰でも、かつ現実的なコストで実現できるようになったと感じています。これはまさに、生成 AI を「試す」時代から「活用する」時代の変革といっても良いかもしれません。
一方で、技術を利用するためにはその背景を知っておくことも重要です。想定通り動いているときは良いですが、何らかの問題が発生した際には、突如周辺技術を含めた理解が必要になることがあります。そんなとき、役に立つのがまさに「やってみた」「ハマった」「苦労した」が詰まった技術ブログになると考えています。生成 AI 時代だからこそ、より品質の高い技術ブログが世の中にどんどん出てきてほしい、そう思っています。
2. enechain様 Tech Blog を支える技術
株式会社 enechain でエンジニアとして働かれている中山さんから、enechain Tech Blog を支える技術を発表いただきました。
自己紹介
中山さんは、株式会社 enechain でソフトウェアエンジニアとして、札幌からリモートで働かれています。エンジニアとして働かれる傍ら、技術広報としてもご活躍されているとのことです。
enechain Tech Blog について
enechain Tech Blog は、2023 年 1 月に開始されました。以下を目指しているそうです。
- 会社として、技術コミュニティに対する貢献をする
- エンジニアの成長や個人ブランディングを支援する
- (副次的効果として)会社の技術ブランディング
月間 3 〜 4 記事投稿されており、MAU は 10,000 人を超えているそうです。本ブログはもともと「Medium」を利用されていたそうなのですが、運用上のトラブルが発生し、現在は「はてなブログ」に移行されたそうです。
ブログ移行
ブログを移行される際、(移行後に)以下の状態になるようにゴールを設定したそうです。
- 執筆時の課題や不満の改善
- 運営メンバーなしでも執筆、公開ができる
移行前の課題
移行前には、様々な課題があったそうです。
上記の課題を解決するため、以下が満たせるプラットフォームへの移行を検討したそうです。
- マークダウン形式に対応
- GitHub 形式での管理が可能
- Pull Request でレビュー
- 文語表現のチェック
- ヘッダの自動生成
- Google Analytics 埋め込みが可能
その結果、はてなブログを選定したとのことです。プラットフォームを選ぶのは難しい課題になりますが、課題が明確になっていることで技術選定がしやすくなっていている点が素晴らしいと思いました。
移行後の手順
GitHub Actions を利用して、記事を作成してからはてなブログへの公開までをスムーズに実現することができるようになったとのことです。好きなエディタを使えることや、Pull Request 上でレビューを行えるところもポイントということでした。公開するためには Pull Request をマージすることでトリガーが走るとのことです。昼休憩前の時間である 11:30 に公開するとページビューの伸びが良いというノウハウがあるとのことでした。データに基づいた判断というのがエンジニア的アプローチで個人的にはとても好きです。
今後の展望
環境を整えたことにより、記事の投稿数が増えたそうです。記事が増えたことで SEO が改善したことに加え、技術ブログを見て会社の雰囲気を知って入社したという方もいらっしゃるそうです。
まとめと感想
運用上の課題から改善を計画されたとのことですが、執筆者ファーストで仕組みを整えていく流れがとても良いと感じました。体験を改善した結果、記事数が増えたことはもちろん、ページビューが伸びたり、SEOが強くなり導線が改善したり、エンジニアの採用につながったりと、執筆者以外にもメリットが波及していくのが定量的に見えていることも素晴らしいと感じました。
今後も改善を進めながら、素晴らしい記事を世の中に送り出していただくことを期待します!
3. Partner Tech Blog Challenge にて、Gemini で大量なブログ記事を採点した話
ここからのセッションは Google Cloud 社内での取り組みの例になります。本テーマは、Google Cloud の Issei Hiraoka(Issei-san) から発表がありました。
概要
Tech Blog Challenge は、Google Cloud パートナー企業の皆様に Google Cloud の技術ブログを書いていただき、世の中に Google Cloud の技術を広めていったり、パートナー様の技術力向上に役立てていただいたりするのが目的のプログラムです。
課題
エントリーいただいたブログの件数が、開始した 2022 年から比べると 5 倍以上(約300 件から 約1,600 件に)になりました。非常に嬉しい一方で、全てのブログを人力でチェックしていくのには限界がありました。
Gemini を活用した事前分類とスコア付け
ブログの評価については、技術的な正確性などから評価されますが、この内容についても多岐にわたります。そこで、Gemini を活用して事前に要約の作成、カテゴリの分類やスコア付けを行い、一定以上のスコアを獲得したブログを人力でチェックする、といったフローを試してみました。
構築したシステムの概要
- Google Form からエントリー(シンプルに作成)
- Google Sheets から Google App Script を実行して、Gemini を実行
- シート上に結果を埋める
まとめ
人手での評価の場合、どうしてもバイアスがかかりますが生成 AI モデル(Gemini)を利用することで、評価に一定の平準化が実現できたということでした。
また、人的コストの削減については非常に効果的で、Gemini がなかった場合のことを想像できないくらいには効果的だった、と説明されていました。
一方で一定の精度を出すためにはプロンプトのチューニングが必要とのことで、今後は更にコストを下げながらより多くのブログ記事を審査する仕組みを作っていけたら、ということでした。
4. Meetup のレポートを Gemini で書く話
Tech Writers のレポートを Gemini を利用して効率的に執筆する、というテーマで Google Cloud の Yuki Suwa(Swacchi) から発表しました。
概要
録画データを NotebookLM に入れてレポートを記載するのが一番簡単だが、Notebook LM が動画を未サポート(YouTube リンクはサポートあり)のため、Cloud Storage にアップロードした動画を Gemini で処理する方法でレポートの生成を試しました。
結果と考察
- Google Cloud 上の Vertex AI Studio というサービスを利用します。
- 動画をアップロードすることで、解析ができます。
- 動画サイズが 7 MB を超える場合は、Cloud Storage のアップロードが必要です。
- 1 時間以上の動画を入力するには、 Gemini 1.5 Pro (200 万トークン)のモデルが必要です。
- アウトラインを作成し、中を埋めてもらう方法が有効
- 必要なところは補足、修正が必要
事実は Gemini で自動化してある程度生成したうえで、感想は自分で記載する、というやり方が効果的なのではないか、と述べられていました。
全体を通したまとめ
技術ブログを支える技術というテーマでの発表でしたが、技術ブログと一言でいっても多くの要素があるのだな、と改めて考えさせられました。
クラスメソッドさんからはスパムブログの検出のテーマ、enechainさんからは技術ブログを効果的に世の中に出すために必要な基盤、そして Google Cloud のおふたりからは技術ブログの審査、及びレポートの記載の方法について説明いただきました。その中でも多くのテーマで生成 AI に触れられており、テクニカルライティングの世界でも生成 AI を切り離して考えるのは難しくなってきたと感じています。これからは、生成 AI とどのように付き合うのかを考えていく必要があると、改めて感じました。
吉川さんの発表では「24時間巡回してくれるレビュー担当者」、Issei-san の発表では「評価の平準化」、そして Swacchi の発表では「事実を自動化して生成」と、生成 AI のユースケースとして「人間との共存」を垣間見ることができたのも、非常に印象的だったと感じています。
今回も得ることが非常に多かった Meetup でした!ぜひ皆様の日々の業務にお役立ていただけますと幸いです。
Jagu’e’r Tech Writers Meetup にご参加ください!
Jagu’e’r Tech Writers Meetup ではこの記事のような内容を、毎回テーマを決めて月1回ペースで開催しています。技術情報発信にご興味のある方はぜひ参加して交流しましょう!
Jagu’e’r (Google Cloud のエンタープライズユーザー会) にこちらから参加した上で、ぜひ Meetup にもご参加ください。