ただ考えただけでプログラムが出てきたら、どんなにいいだろうか。
そんな夢のようなツールが次々と登場している。
github copilotやそれを搭載したVisual Studio Codeのような「プログラミング支援」系のものから、ChatGPT CanvasやClaude-3 Artifactのような「自動プログラミング系」
OpenInterpreterやAIderのような「OS操作系」に加えて、最近はReplitのような「統合環境系」が跳梁跋扈している。
プログラミング支援系の生成するコードは限定的で、プログラマーにとってはコードスニペット(プログラムの断片)を探す検索の手間が省けてかなり便利で、今これを使わないプログラマーはごく一部の専門職だけだろう。
ChatGPT CanvasでiOS向けアプリを作った時、確かに「これは時代が変わるかもしれない」という手応えを感じたことは認めよう。
ただ、当たり前だがそれほど世の中は甘くない。
ChatGPT Canvasで書かれたプログラムをiOSの開発環境であるXCodeにコピペして動かすには依然として人間の手が必要だし、XCodeにもApple Intelligenceが搭載されるとかなんとかという話はあるものの、それほど便利に使える感じがしない。
最近鳴り物入りで登場したReplit Agentは、プログラミングだけでなくデプロイ(実際の本番環境への投入)までやってくれるというので、「これは俺の仕事もいよいよ楽になるか。というか外注もしなくて済むかな」と期待して有料会員になった。
確かに、「Netflixみたいな動画配信サービスを作れ」と言うと、ものの数分でそれっぽいものが出来上がる。
しかし、いざ課金システムを組み込むためにStripeと連携したり、それをデプロイしたりしようとするとデプロイエラーが出まくる。
そもそも自分で構築したわけじゃないので、この構成がどういう意図で作られているのかもよくわからないし、どうすれば修正できるかもよくわからない。
エラーメッセージをコピペして修正に次ぐ修正を重ねていると、ついにはこんなことを言われてしまう。
言葉は悪いが、これではまるで詐欺だ。
だって筆者は一度たりとも自分の意思でコードを入力していないのだ。
Replit Agentが勝手に操作して勝手にミスっていて、「ミスを直せ」としか言ってないのに、「お前は使いすぎだから4時間待機な」と言われてしまう。
この制限を外す方法はない。
もしもこれを実運用する環境で使っていたとしたら致命的すぎる。
顧客にそんな言い訳ができるか?
クラウド系LLMがどれもイマイチ信用できないのは、まさにこの制限にある。
真面目に仕事に使おうとすると、すぐに制限にぶち当たる。気持ちはわかるが、これでは仕事の道具としては使えない。
今日発表されたQwen2.5-Coder-32Bは、GPT-4oの性能を抜き去り、Claude-3-Haikuに迫る性能のオープンLLMだ。
AIderからも使えるし、Artifactsのような機能もある。
この手のローカルLLMは、勝手にモデルが変更されたりディスコンになったりしないので、安定して動かせるというメリットがある。
科学にとって一番大事なのは再現性だからだ。
特に開発者の領域で、おそらくローカルLLM化が急速に進んでいくだろう。
この流れは必然で、少なくともローカルLLMなら従量課金に怯えたりする必要はないし、唐突に一方的に仕事が止まることもない。
性能が多少落ちたとしても、そのぶん試行回数を増やせばいいのでローカルでも全然問題ない。
以前、新潟県長岡市で行った「AIxビギナーハッカソン」では、継之助(小規模AIスーパーコンピュータ)の上に構築したSwallow-llama3.1をOpenAIのGPTの代わりに呼び出してハッカソンを行った。
これは、やはりハッカソンを行うときに同一IPからの大量アクセスとみなされて、OpenAIやGeminiを使うとブロックされるからだ。
実際、ハッカソン中はGoogle Colabを使っていたのだが、案の定、Google ColabのGeminiは程なくしてブロックされた。
クラウドは大金が投じられているにも関わらず、こういうつまらない問題を常に持っている。
ハッカソンのように使う場合は、ローカル環境のLLMで動くことが大前提となる。
Replit Agentがデプロイまで面倒見てくれるのは魅力的ではあるが、本質的な解決策にはなってない。
しかし、Replitに驚く人たち、Replitをすごいすごいと持ち上げる人たちは、Replit Agentがあればまるでプログラマーも、プログラミングの知識もいらないかのような誇大宣伝をしているように見える。それが彼らにどんなメリットをもたらすのかわからないのだが、個人的には90年代にノストラダムスの大予言について真面目に語っていた人たちのことを思い出す。
Replit Agentは実際にはプログラミング経験40年以上を持つ筆者にも手に追えない代物だし、これで本当に実用的なツールを運用するのはかなり勇気がいる。
そう言うこともちゃんと伝えなければならない。
その上で、今月末のOpenAIの発表はどんなことが発表されるのか、相変わらずクラウドの話か、ローカル環境の話に言及されるのか、見極めなければならない。
ただ個人的にはクラウドのLLMは、プロトタイプの実装には使えても実サービスに使うのは厳しいと感じている。理由は前述の通りだが、過渡期にしてももう少し安定するか、もう少し明朗なリミットの回避方法が用意されない限り、クラウド上の開発環境を実用的に使うのはかなり難しいと言わざるを得ない。
これが現時点での感想である。
おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)
登録はこちら新潟県長岡市生まれ。1990年代よりプログラマーとしてゲーム業界、モバイル業界などで数社の立ち上げに関わる。現在も現役のプログラマーとして日夜AI開発に情熱を捧げている。