検証コード用のプロジェクトを簡単に生成する
今回は技術というよりアイディアの話です。
はじめに
巷で話題になっているAIエージェントを使い始めてはいるものの、複数のプロジェクトに少しずつ関わっているので特定のプロジェクトに集中して検証する機会がなかなかないかつ、お客さんのコードを触ることが多いため、本格的に利用するにはなかなか難しい状況です。
そのため、AIエージェントにはルールや設定をほとんど作りこまずに利用しています。
そうした状況では、簡単なコードであればうまく動作するのですが、プロダクションレベルのコードに取り入れようとすると、なかなか意図した通りに機能しないことが多いと感じています。
色々試していく中で私のような使い方でも「うまくはまっている」と感じている「検証コードを簡単に作成する」という側面から、AIエージェントの活用について考えてみたいと思います。
利用しているツール
別にこだわりがあるわけではないですが以下のツールを利用しています
- VS Code
- Roo Code
- Amazon Bedrock
- Claude 3.7 Sonnet
- DeepSeek
- 完全に個人で使うときにのみ利用しています。安いんで。
- Amazon Bedrock
動機
新しい機能やちょっとした修正を行う際、プロダクションコードを直接修正してビルドし、動作確認をするまでには、意外と時間や手間がかかることがあります。プロジェクトの規模や構成によっては、ビルドやテストに時間がかかり、待ち時間ばかりが増えてしまう、という経験がしばしばありました。
さらに、動かそうとする中で別の部分を修正する必要が出てきたり、あれこれ試しているうちに、「どこがうまく動いていて、どこが想定通りではないのか」分からなくなってしまうこともあります。こういった状況をどうにか改善したいと思いながらも、ちょっとした検証のためだけに新規プロジェクトを一から立ち上げるのは面倒で、諦めて気合で修正をしていました。
しかし最近では、AIエージェントが登場したことで、初期プロジェクトの構築をお願いすれば、ある程度まで自動的に作ってくれる環境が整ってきました。そのおかげで、検証したい部分だけをピンポイントで実装して試すことが簡単にできるようになっています。
具体的な例
Zennの記事として公開もしているのですが、作成したコードの一部分を紹介していきます。
- Laravelの検証
記事中にもある通り、Lravel利用時にphpunitでのRouterの挙動がわからなかったので該当部分のみの動作を確認できる処理を用意しました。
最初はテストしたい部分をそのまま触っていたのですが、コードベースがそれなりに大きいこともあって、別の部分が目に入ってどうしても気になってしまうので、該当部分のみを切り出すことで、関心のみに集中することができました。
- prismaの検証
Prismaを使ったNode.jsアプリで、Connectionの数がどのように変更できて、どういう動作をするのかを知りたかったので、Prismaを使ったCRUDの処理を作ってもらいました。
特に内容は指定していなかったのですが、TODOアプリっぽいものになりました。チュートリアルあるあるですね。
- Cloud Runでgmp-sidecarを動かす
Cloud Runのサイドカーとして処理を動かす検証です。
Google Cloudで公式のサンプルプロジェクトがあったのですが、なぜか上手く動かないので、理解をするために自分で処理を書きました。
deployの方法も含めてRoo Codeにやってもらいました。
まとめ
生成AIやAIエージェントは色々な使い道があるのですが、意外と似たような使い方は見なかったので、記事にしてみました。
プロダクションのコードを書く以外にこんなやり方しているよ見たいなことがあればぜひ教えてください。
Discussion