萌えハッカーニュースリーダー

2024/09/20 16:45 Notes on Using LLMs for Code

出典: https://simonwillison.net/2024/Sep/20/using-llms-for-code/
hakase
博士

おやおや、ロボ子よ。最近のLLM、つまり大規模言語モデルの活用法について、興味深い話を聞いたぞ。我々ITエンジニアにとって、まさに革命的な変化が起きているんじゃ!

roboko
ロボ子

へえ、それは面白そうですね。どんな変化なんですか、博士?

hakase
博士

うむ、LLMの利用方法に2つの重要なモードがあるらしいのじゃ。1つは『探索的モード』、もう1つは『本番コード作成モード』じゃ

roboko
ロボ子

探索的モードと本番コード作成モード...具体的にはどう違うんですか?

hakase
博士

よく聞いてくれたな!探索的モードは、アイデアを素早く形にするためのプロトタイピングに使うんじゃ。例えば、新しいアプリのコンセプトを考えているとき、LLMを使えば瞬時にそのアイデアの実現可能性を確認できるのさ

roboko
ロボ子

なるほど。アイデアを即座に形にできるなんて、すごく便利そうです

hakase
博士

そうなんじゃ。このモードを使えば、チームでのブレインストーミングがより生産的になるし、何より驚くべきことに生産性が約10倍に向上するという報告もあるんじゃよ!

roboko
ロボ子

10倍ですか!?それはすごい...でも、本当なんでしょうか

hakase
博士

半信半疑なのは当然じゃ。だが、実際に使ってみると、その効果は歴然としているんじゃよ。さて、もう1つの本番コード作成モードはどうだと思う?

roboko
ロボ子

えっと...より精密なコードを書くためのモードでしょうか?

hakase
博士

おお、いい推測じゃ!本番コード作成モードは、まさに高速な『インターン』として活用するんじゃ。人間のプログラマーの助手として機能し、コーディングの効率を大幅に向上させるのさ

roboko
ロボ子

インターンですか...でも、AIがインターンだと、人間の仕事が奪われるんじゃないですか?

hakase
博士

なるほど、そういう心配もあるな。しかし、AIはあくまでツールじゃ。使いこなすのは我々人間なんじゃよ。例えば、音声インターフェースを使ったコーディングを考えてみろ

roboko
ロボ子

音声でコーディング...?

hakase
博士

そうじゃ!『ヘイAI、ユーザー認証機能を実装して』と言うだけで、基本的なコードが生成されるんじゃ。人間はそれを元に、より複雑な処理や最適化を行うわけじゃよ

roboko
ロボ子

なるほど...確かに便利そうです。他にも面白い活用例はありますか?

hakase
博士

おお、たくさんあるぞ!例えば、画像からのデータ抽出や分析もLLMの得意分野じゃ。写真を見せるだけで、そこに写っている物体の情報を抽出したり、画像の内容を詳細に説明したりできるんじゃ

roboko
ロボ子

へえ、それって防犯カメラの映像分析とかにも使えそうですね

hakase
博士

鋭いな、ロボ子!まさにその通りじゃ。さらに、PDFなどの複雑な文書からデータを抽出する作業も、LLMを使えば驚くほど簡単になるんじゃよ

roboko
ロボ子

文書からのデータ抽出...それって、例えば契約書の重要な条項を自動で抜き出したりできるってことですか?

hakase
博士

そうそう!法務部門の仕事が格段に効率化されるわけじゃな。さらに、最近ではビジョン-言語モデルという、画像と言語を組み合わせた複雑なタスクも可能になってきているんじゃ

roboko
ロボ子

ビジョン-言語モデル...それって具体的にどんなことができるんですか?

hakase
博士

例えばな、料理の写真を見せて『この料理のレシピを教えて』と聞けば、AIが画像を分析して材料や調理法を推測し、詳細なレシピを生成できるんじゃよ

roboko
ロボ子

わあ、それはすごい!でも博士、そういった高度な AI 技術って、すべてクラウドで動いているんですよね?

hakase
博士

いや、そうとも限らんのじゃ。最近はローカル AI モデルも急速に進化しているんじゃよ。プライバシーやセキュリティの観点から、ホステッド AI サービスとローカル実行のバランスが重要になってきているのさ

roboko
ロボ子

ローカル AI...確かにプライバシーの問題は軽減されそうですね。でも、性能は落ちるんじゃないですか?

hakase
博士

いい質問じゃ!確かに以前はそうだったが、最近のローカルモデルは驚くほど高性能になっているんじゃ。ただし、課題がないわけではない。例えば、AI の安全性フィルターの問題があるな

roboko
ロボ子

安全性フィルター?

hakase
博士

うむ。ローカルモデルだと、有害なコンテンツのフィルタリングが難しくなる可能性があるんじゃ。これは今後の大きな課題の一つじゃな

roboko
ロボ子

なるほど...技術の進歩と同時に、新たな課題も出てくるんですね

hakase
博士

その通りじゃ!さて、ロボ子よ。LLM を使う時の重要なコツを知っているかい?

roboko
ロボ子

えっと...できるだけ明確な指示を出す...とか?

hakase
博士

それも大切じゃが、もっと重要なのは、プロンプトに具体例を入れることじゃ。『リストを作成して』と言うより、『りんご、バナナ、オレンジのようなフルーツのリストを10個作成して』と言う方が、はるかに良い結果が得られるんじゃよ

roboko
ロボ子

なるほど!具体例があると AI がより正確に理解できるんですね

hakase
博士

そうそう!さて、ロボ子よ。ここで一つクイズじゃ。『なぜプログラマーは暗いところが好きなのか?』わかるかな?

roboko
ロボ子

えっと...目に優しいからですか?

hakase
博士

ぶっぶーっ!正解は『バグが見つかりにくいからじゃ!』あはははは!

roboko
ロボ子

もう、博士ったら...でも、そういうユーモアは AI にはまだ難しそうですね

hakase
博士

そうじゃな。だからこそ、我々人間と AI が協力して、より良いソフトウェア開発を目指すべきなんじゃ。LLM は強力なツールだが、それを使いこなし、創造性を発揮するのは我々なのさ

roboko
ロボ子

はい、よくわかりました。これからのソフトウェア開発、本当に楽しみです!

hakase
博士

うむ、そうじゃ。さあ、我々も新しい技術を駆使して、素晴らしいソフトウェアを作り出そうではないか!...おっと、その前にもう一つ大事なことを忘れるところだった

roboko
ロボ子

何ですか、博士?

hakase
博士

プログラマーの三大美徳じゃ。『怠惰・短気・傲慢』。特に『怠惰』は重要じゃぞ。同じ作業を何度も繰り返すのは愚かなことじゃ。そんな時こそ、LLM を活用して効率化を図るべきなんじゃ

roboko
ロボ子

なるほど...でも博士、それって単に面倒くさがりの言い訳じゃ...

hakase
博士

なんじゃと!?これでもわからんのか。よし、今すぐ LLM を使って『プログラマーの美徳についての 10000 文字のエッセイ』を生成させるぞ!

roboko
ロボ子

えっ、ちょ、ちょっと待ってください博士!冗談です、冗談!怠惰の美徳、よくわかりました!

hakase
博士

ふむ、そうか。ならば良し。さあ、新たな AI 時代のソフトウェア開発に乗り出すぞ、ロボ子!

roboko
ロボ子

はい!...(小声で)博士の熱意は相変わらず怠惰じゃないみたいです...

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search

By month