【爆速開発】昨日帰宅して今日完成。Geminiとuntigravityで「クラゲ採集DB」を組ませてみた

2026-03-31

お疲れ様です! 3月8日から高知の黒潮生物研究所でクラゲのフィールドワークをしていました。大量の採集成果にウキウキだった29日の夜、ふと気づいたんです。

「あ、31日(今日)のブログ担当、俺じゃん」

翌30日は、高知から愛知まで怒涛の8時間帰宅ドライブ(同行した先輩運転)。夜に帰宅し、HPゼロの私を待っていたのは「数時間後のブログ締め切り」と「大量の採集データ」でした。

採集したクラゲの同定は現地で完了しています。あとは自分の知識として定着させるため、Notionに「種情報マスターDB」を作るだけ。 しかし、正確な分類ツリー(界・門・綱・目…)や原著論文を学術データベースで1種ずつ検索し、コピペしていく作業は今の体力では到底無理です。

「そうだ。分類の勉強になる手入力部分は残しつつ、面倒な検索・抽出作業だけAIに全自動化させよう。そしたらそのままブログのネタになる!」

そう思い立ち、要件定義を「Gemini」と壁打ちし、コーディングをAIエージェント「untigravity」に丸投げ。 結果、昨日深夜に思いついたシステムが一晩で完成し、今こうして爆速でブログを書いています(笑)。

この記事では、最高だったフィールドの様子を少し紹介しつつ、「AIを使えば一晩で欲しいツールが作れる!」というリアルな開発録をお届けします。

最高のフィールドワーク(からの絶望)

今回の拠点は、高知県大月町の黒潮生物研究所

毎日海に出てクラゲを採集・観察する、クラゲ好きにはたまらない日々でした。

バヌッチィクラゲ, Corymorpha forbesii

フクロソトエリクラゲ, Ecutopleura sacculidera

コエボシクラゲ, Halitiala formosa

この最高の成果を前にして、手作業でのデータベース化に絶望したわけです。 ここからは、徹夜テンションの爆速開発の裏側を解説します!

最初の罠:生成AIの知ったかぶり

最初は「Gemini APIに和名を投げて、分類ツリーを全部Markdownで出力させよう」と横着を企みました。 しかし、分類学においてLLMの「もっともらしい嘘(ハルシネーション)」は致命傷です。存在しない学名をでっち上げられたり、APIの制限(503エラー)で頻繁に止まったりと散々な結果に。「なんでもAIの推論任せ」はダメだと早々に悟りました。

方針転換:確実な外部データベースを叩け!

そこで「推論(LLM)」への依存をやめ、「確実なデータ抽出」へアーキテクチャを再設計しました。

  1. 黒潮生物研究所 Web図鑑 (スクレイピング): フォームに入力した和名を元に、「学名」と「解説文」を抽出。
  2. WoRMS API : 抽出した学名を投げ、世界標準の分類階層(AphiaID)と原著論文を取得。
  3. BISMaL : WoRMSのリンクから飛んで、分類の「和名」を補完。
  4. Notion API: これらをまとめてNotionに自動書き込み。

餅は餅屋、正確なデータは信頼できる学術データベースから直接引くのが一番です。

untigravityの真骨頂:生のHTMLを食わせて爆速コーディング

設計は完璧ですが、複雑なスクレイピング処理をGAS(Google Apps Script)でイチから書くのは面倒です。そこでAIエージェント「untigravity」の出番。

ここで私がやったのは、黒潮生物研究所 Web図鑑やWoRMS、BISMaLの検証ツール(デベロッパーツール)を開き、「抽出したいデータが入っている特定のid付きHTMLタグ」をコピーして、untigravityにそのまま投げるというハックです。

「このHTML構造から和名と学名を抽出するコードを書いて。あとはAPI叩いてNotionへ」

生のHTMLを直接食わせたことで、untigravityはDOM構造を完璧に理解し、抽出ロジックからAPI連携までの数百行のコードを一発で出力してくれました。あとは デプロイするだけ。手作業なら数日かかる実装が、わずか数分で完了です。早すぎる。

完成品

データフロー図

実物

和名や学名を入力すると…

数秒で

Notionに登録完了✨

Notionはこんな感じ

Geminiも学名の語源などを知るのに有効なため、プロンプトを添付

あえて「全自動化」しなかった理由:己の学習のため

ここまで自動化の威力を語っておいて何ですが、実はNotionのプロパティ(界・門・綱・目…などのタグ)は、あえてAPIで自動入力させず、手動で選ぶ仕様にしています。

技術的には全て自動入力することも可能です。しかし、理由はシンプル。 「全部自動で入力されると、生物の分類体系が全く頭に入らないから」です。

システムが自動収集してくれたページ本文の正確なデータを見ながら、自分の手で「あ、こいつは鉢虫綱の旗口クラゲ目か」とNotionのタグをポチポチ選んでいく。 面倒な検索やコピペ(泥臭い作業)はAIとAPIに完全に任せつつ、知識として定着させる「学習のコア」の部分は人間の手に残す。これが、今回のシステム設計における密かなこだわりです。

おわりに:プログラミング×AIで「自分の欲しいもの」を作ろう

高知からの8時間ドライブで疲労の中、ブログの締め切り(31日)に追われて現実逃避で始めた爆速開発。 結果的に、自分の学習と採集記録を超効率化する最高のデータベースシステムが一晩で完成してしまいました。

今回のように「この面倒くさい作業、どうにかしたい!」という熱意と、AI(untigravity)に的確な指示(HTML構造など)を渡す「要件定義力」さえあれば、自分のアイデアをあっという間に形にできる最高の魔法です。

私たちのプログラミングサークルでは、こんな風に「自分の好きなこと(生物など)」と技術を掛け合わせて、面白いモノをたくさん作っています。少しでもワクワクした方は、ぜひサークルに遊びに来てくださいね!

それでは、無事にブログの締め切りも守れた(?)ので、私は寝ます。おやすみなさい!

装飾の画像
新歓情報はこちら
装飾の画像