Latest / TanaRadio / 301 AIによる堅実な開発の20日間 | テックLTポッドキャストカレンダー
Transcript
- 0:00たなと申します。今回は「AIによる堅実な開発の20日間」と題しまして、語ってみたいと思います。
- 0:10ここで私が開発したのは、歴史研究者用の研究支援システムです。
- 0:17私は大学で科学史を担当しておりまして、科学史の研究をやっています。
- 0:25その研究に役立つような、個人用の、私だけのために、自分の研究に一番役立つような機能を備えたウェブのシステムを作りたいと思いまして、開発を始めました。
- 0:42開発した機能は、まず研究ノード管理システムを作りました。
- 0:49これは最初の10日間でできました。
- 0:51その後の10日間で文献検索機能と文献情報管理機能を付け加えました。
- 1:00特にこの文献検索機能というのは、歴史研究に限りませんが、さまざまな研究情報を検索するウェブサービスが2つありまして、
- 1:16CiNiiというものと、それからNDL、国立国会図書館が提供しているもの、この2つがあるんですが、そこのAPIを使いまして、
- 1:28網羅的にキーワードその他で検索をして、何百、あるいは場合によっては何千という情報が一気に得られますので、
- 1:39そういった情報を集めるのはこれまで非常に手間がかかりましたが、あっという間にできてしまうという夢のようなシステムを作りたいと思いまして、
- 1:51やったらばそれが大体できたということでとても喜んでいます。
- 1:56またその膨大な文献情報を管理するためのシステムも必要だということで、それも作りました。
- 2:04現在はPDFファイルを登録して検索した文献をその場で見られるような機能も作っています。
- 2:15今後はそれにAIを組み込みまして、またいろいろなことをやりたいと思っているんですが、それは今後の課題としたいと思っています。
- 2:24それで今回の開発の方法なんですけれども、こんなふうにやりました。
- 2:31まず、私が作りたい機能をClaudeのSonnet 4.5に伝えます。これはチャットで伝えます。
- 2:39そうしまして、CursorのAIエージェントに渡す指示書を書いてもらいます。
- 2:45そしてCursorのほうへ行きまして、Gitでブランチを新しく作り、そこで開発を始めます。
- 2:53Cursorのエージェントに先ほどの指示書を渡してコードを書いてもらいます。
- 2:59そしてうまくいったかどうか、開発サーバーを立ち上げてテストをしまして、エラーが出たらばまたCursorに伝えて修正してもらう。
- 3:11それでもうまくいかない場合は、Claudeに報告しまして、また対応を考えてもらい、それをCursorに渡してCursorに修正してもらうということを繰り返しました。
- 3:25そしてテストがうまくいったらば、Gitでブランチをメインにマージしまして、Vercelでディプロイするという、そういう流れです。
- 3:36結構問題なくいくところも多かったんですけれども、うまくいかなかったところもありました。
- 3:44例えば、文献を3000件までいっぺんに集めたいと思ってやったんですが、これはなかなかうまくいかなかったので目標を下げまして、
- 3:54簡単に集められる500件までにしたりとかですね。
- 3:59あとAIが結構、こちらが必要としていない機能まで開発してしまうことがあるんですね。
- 4:09その機能はですね、やっぱりいろんな問題を引き起こすことがあるので、そういうふうになってしまったらば、もうそれはあっさりと捨ててしまう。
- 4:21また元に戻ってですね、開発を再開するというようなこと。
- 4:26そんなことを繰り返しやったことがあります。
- 4:31ですが、本当にコードを一行も書くこともなく、自分が作りたいものをただAIに言うだけで、それができてしまうということがこの20日間で実現したというのは、
- 4:46本当に驚くべき時代に突入したなというふうに思っています。
- 4:53以上です。