0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人開発でAIとアプリを作ってストア公開してわかった、AIの4つの弱点

Last updated at Posted at 2026-01-18

最近、AIと共に作った「世界時計」アプリを、App StoreとGoogle Playに公開しました。

その過程で、AIの弱点がはっきり見えました。同じようにAIを使って開発している方の参考になればと思い、共有します。

Gemini_Generated_Image_8pqd1n8pqd1n8pqd.png

弱点1:回答は統計処理である

多くの人がここで騙されます。

AIは「次に来る確率が高いトークン」を予測しているだけです。正しいから回答しているのではありません。確率的に高いから回答しています。

私のような少数派の開発スタイル(Riverpodを使わない、小さな自己完結型Widgetで構成するなど)を取ると、AIの回答がしばしば的外れになります。大多数が採用しているアプローチが「正解」として返ってくるからです。

大量のテキストを学習した結果、博士のような知識を持っていますが、回答はその統計処理にすぎません。

弱点2:自分で作ったコードを追えなくなる

Geminiは「ベストプラクティス」を知っています。だから勝手にRiverpod(状態管理ライブラリ)を入れてきました。

しかし、開発が進んで複雑になっていくと、自分で作ったコードを追えなくなりました。

Providerの修正が必要な変更を頼むと、修正すべき箇所をすべて修正できません。文法エラーになるものは検出できますが、そうでないものは実行時エラーになったり、意図しない表示になったりします。

これが「推論の弱さ」です。

知識は博士レベル。でも推論は小学生レベル。

複雑な依存関係を追い続けることができません。だからこそ、私はRiverpodを使わず、小さな自己完結型Widgetで構成する方法を選んでいます。AIと協働するなら、AIが追える範囲に複雑さを抑える設計が重要です。

弱点3:学習データの時期が古い

Gemini 2.5 Proに「いつまでのFlutterを学習しているか」と問うと「2025年後半(10月〜11月頃)」と答えます。

しかし、どんどん追求していくと、回答の実質的なベースはデータ量が豊富なFlutter 3.24〜3.27(2024年末〜2025年初頭)あたりということを白状します。

最新のFlutterでコードを書きたい場合、Geminiのハルシネーションはひどいものになります。

ChatGPTは「2024年の春〜初夏まで」と正直に言うので、まだ信頼できます。ただし「最新の情報を調べて」と明示的に言わないと古い情報で回答が返ってきます。そうすると時間がかかり、トークンの使用量も増えます。

これが「継続学習の問題」です。

現在のLLMは一度学習したら固定されます。新しい知識を追加しようとすると、古い知識を忘れる(破滅的忘却)。だからWeb検索で補っていますが、それは継続学習ではなく外部ツール依存です。

だから私は、モダンなパッケージを避けて、SQLiteなど昔からある技術を選んでいます。

新しいパッケージは学習データが少なく、AIのハルシネーションが多発します。一方、SQLiteのように長年使われている技術は、学習データが豊富で、AIの回答精度が高い。FlutterでもDrift(旧Moor)のような新しいORMより、sqfliteで直接SQLを書く方が、AIとの協働はうまくいきます。

枯れた技術を選ぶことは、AIと協働する上での実践的な戦略です。

弱点4:継続学習ができないことによる経済的限界

継続学習ができないため、毎回一から学習してモデルを作らなければなりません。

だからOpenAIは非営利から営利に転換し、巨額の投資を集めています。あまりにも経済性が悪すぎます。このビジネスモデルがいつまで持つのか、私には疑問です。

これらの弱点が企業導入を阻む

継続学習ができないことは、業務導入の最大の障壁になっていると考えられます。

企業は自社の業務知識をAIに学習させたい。でも学習させると他の知識を忘れる。だからRAGやSkillsで回避するしかありません。

では、RAGを設計できるのは誰か。Skillsを作れるのは誰か。

優秀なPM兼アーキテクトです。

そんな人材はほとんどいません。だから企業導入は進まない。

AIは「誰でも使える」と宣伝されています。でも現状は「優秀な人しか使いこなせない」のが実態です。

個人開発者として生き延びるために

AIの弱点は多いですが、改善されていくでしょう。問題は、私たちがどうAIと付き合うかです。

私が実践していることは3つです。

1. AIの限界を理解する

魔法ではなく、確率と最適化の道具だと理解する。だからこそ、AIが追える範囲に設計を収める。Riverpodを避けて自己完結型Widgetを選んだのは、この理由です。

AGIに期待しない。 「もうすぐAGIが来る」「AIがすべてを解決する」という話を聞くと、今の苦労が無駄に思えるかもしれません。でも、AGIを待ちながら競争に巻き込まれると、みんな消耗するだけです。

来るかどうかわからないものを待つより、今のAIの限界を理解して、その範囲で使いこなす。その方が確実に成果が出ます。

2. 目的・設計・構造を手放さない

実装はAIに任せても、「何を作るか」「なぜ作るか」は自分で決める。AIは優秀な実行機械ですが、目的を与えなければ、目的そのものを代行してきます。

3. 自分の思考様式を活かす

私は言語化が苦手です。でも、だからこそAIは「翻訳装置」として強力な武器になります。頭の中の構造をAIに言語化してもらい、コードに変換してもらう。この使い方なら、弱点を補い合えます。

結論:AIに使われないようにする

感情がなく疲れもしらないAIに使われると悲惨なことになると思いませんか?

AI時代に価値を持つのは、コードを書く人間ではありません。構造を作れる人間です。

考えることをやめない。設計を手放さない。判断を委ねない。

それが、AIと共に開発を続けるための条件だと、今回のアプリ公開を通じて確信しました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?