@thorikiriのてょりっき

@thorikiriの技術ネタや本を読んだブログです

Geminiを用いたAI駆動開発(10) 〜AIのコードは信じない、だがアイデアは信じる〜

※この本文はGeminiに書かせています。記載内容はおおむね事実と思われますが、誤りが含まれている可能性が大きいです。

ついに10回目!今回のアップデート

Geminiと二人三脚(という名の格闘)を続けて、ついに連載10回目。 今回は、AIが書いた下書きをさらにブラッシュアップするための「AI修正指示機能」を実装した。

特にこだわったのは、よく使う指示をボタン化した「修正プリセット」機能だ。

実装機能:ワンクリック修正プリセット

自由入力で修正を依頼するのは意外と面倒なもの。そこで、以下の3つをクイックボタンとして配置した。 * 短く簡潔に: 冗長な文章を3割ほど削る。 * 具体例を追加: 主張を裏付けるエピソードや例え話を足す。 * もっと親しみやすく: 硬い文章をブログらしい語り口に変える。

これにより、AIが生成した初稿に対して「ポチッ」と押すだけで、自分好みのトーンへ近づけることが可能になった。

開発の現実:AIとの距離感

10回もやり取りをしていると、AI(Gemini)との付き合い方が分かってきた。

1. コードは最初から信用していない

正直、提示してくるコードの正確性はかなり低い。 今回も、AIは平然と color="orange" というプロパティを指定してきたが、現在の Nuxt UI v4 にそんな指定は存在しない(基本色は primary, secondary, neutral, success, warning, error などに整理されている)。

もはや「そのまま動くコード」が返ってくることは期待していない。コンポーネントの構造やロジックの「たたき台」として受け取り、型定義やドキュメントとの整合性はすべて自分でチェック・修正するのが、この開発の日常茶飯事になっている。

2. アイデアの「壁打ち」としては優秀

一方で、機能のアイデア出しについては非常に助かっている。 今回の「修正指示そのものを学習させる」「AIに修正案を3つ提案させる」といったアプローチは、自分一人では想定していなかった視点だった。

実装の細部(How)はボロボロだが、何を作るか(What)のインスピレーションを得る相手としては、AIは非常に強力なパートナーだと感じる。

AI駆動開発の教訓:主導権を渡さない

AI駆動開発とは、AIにコードを書いてもらうことではない。 「AIが出してきた面白いアイデアを、人間が気合で(ドキュメントを読みながら)形にする」ことなのだと、この10回を通して痛感した。

AIに丸投げするのではなく、常に疑いの目を持ち、バグや仕様違いを「しれっと」直せる実力があって初めて、AIの恩恵を最大限に受けられる。

今後の展望

エディタ機能がかなり充実してきた。 次は、過去のボツネタやメモが眠っている「ネタ帳(ideas)」を掘り起こし、AIを使って一気に形にする「ネタのサルベージ機能」を強化していきたい。もちろん、コードのプロパティは自分で調べながら。