ChatGPT が合格した 3 つの AI コーディング課題で Meta の Code Llama をテストしましたが、結果は良くありませんでした
Meta CEO の Mark Zuckerberg は最近、コーディング用に設計された 70B パラメータ AI である Code Llama を発表しました。しかし、ChatGPT のような巨大企業とどのように比較できるのでしょうか?それをテストしてみました。
数週間前、Meta CEO の Mark Zuckerberg 氏は Facebook を通じて、同社の大規模言語モデル (LLM) Code Llama をオープンソース化すると発表しました。Code Llama は、ChatGPT の GPT-3.5 や GPT-4 に似た人工知能 (AI) エンジンです。
Zuck は、この LLM について 3 つの興味深い点を発表しました。それは、オープンソースであること、コードの作成と編集を支援するように設計されていること、モデルに 70B のパラメーターがあることです。開発者がモデルにより困難な問題を与えることができ、エンジンがより正確に答えられるようになることが期待されています。
オープンソースの問題は興味深いです。これは、Facebook の支配者がトレーニングやその他の不正な目的でコードを盗み見る危険を冒さずに、すべてをダウンロードして自分のサーバーにインストールし、そのモデルを使用してプログラミングの支援を得ることができることを意味するアプローチです。
この作業を行うには、Linux サーバーをセットアップし、あらゆる種類のフープ ジャンプを実行する必要があります。ただし、Hugging Face のスペシャリストがすでに Code Llama 70B LLM を HuggingChat インターフェースに実装していることが判明しました。それで、それを次にテストするつもりです。
Code Llama を始める
始めるには、Hugging Face で無料アカウントを作成する必要があります。 (私のように) すでに持っている場合は、そのアカウントで 70B Code Llama LLM を使用できます。
注意すべき重要な点の 1 つは、Code Llama を自分のサーバーにインストールしてコードを共有しないこともできますが、Hugging Face では話が大きく異なるということです。このサービスでは、設定でそのオプションをオフにしない限り、入力したものはすべてモデル作成者と共有される可能性があると述べています。
HuggingChat にログインすると、空白のチャット画面が表示されます。以下に示すように、現在の LLM は openchat/openchat-3.5-0106 ですが、これを Code Llama に変更するつもりです。その方法を説明します。
現在のモデルは設定で変更できます。設定には歯車アイコンをクリックしてアクセスできます。
設定に入ったら、左側の codellama/CodeLlama-70b-Instruct-hf をクリックし (1)、Code Llama LLM が選択されていることを確認し (2)、[アクティブ化] (3) をクリックします。
これで、チャット インターフェイスと会話するときは、チャット インターフェイスの上部で確認されているように、Code Llama モデルを使用することになります。
テストするために、Bard (現在は Gemini) と行った以前のコーディング テスト実行からプロンプトを取得することにし、同じテストを HuggingChat で実行しました。
テスト 1: WordPress プラグインの作成
私の最初のテストは、WordPress プラグインの作成でした。 ChatGPT はこのタスクで非常にうまく機能しました。吟遊詩人は弱かったが、最善を尽くした。しかし、Code Llama はどうでしょうか?さて、見てみましょう。プロンプトは次のとおりです。
行のリストを貼り付けることができるテキスト入力フィールドと、ボタンを押すとリスト内の行をランダム化し、空白のない 2 番目のテキスト入力フィールドに結果を表示するボタンを提供する、PHP 8 互換の WordPress プラグインを作成します。行を作成し、(他にオプションがない限り) 2 つの同一のエントリが隣り合っていないことを確認します。送信された行数と結果の行数は互いに同一です。最初のフィールドの下に、「ランダム化する行:」というテキストと、ソース フィールド内の空でない行の数を表示します。 2 番目のフィールドの下に、「ランダム化された行:」というテキストと宛先フィールドの空でない行の数を表示します。
そして、結果は次のとおりです。
それは多くのレベルで正しくありません。まず、Code Llama は、すべてのプラグインに必要な非常に単純なフィールドのセットであるプラグイン ヘッダーを作成しませんでした。次に、プログラミング エディターのコード フォーマッタでは解釈できないコードが生成され、コードに要素が欠落していることが示されました。
さらに、コードはテストできません。これは失敗です。
テスト 2: 文字列関数の書き換え
このテストでは、以前 ChatGPT に与えた文字列書き換えリクエストを使用しました。ドルとセント(つまり、ある程度の桁数、その後にピリオドが続き、ピリオドがある場合は 2桁数が増えます)。
前回の記事で使用したのと同じプロンプトを入力すると、次の応答が返されました。
このコードは機能し、満足しています。
テスト 3: 見つからなかったバグを見つける
ここでも、以前の記事で書いたテストを再利用しました。 Code Llama で試した問題の詳細が必要な場合は、元の記事を参照してください。コーディングの問題は長く、かなり複雑なので、何が間違っているのかを見つけることができませんでした。
ChatGPT は問題をすぐに解決しました。バードはそうしなかった。 Bard が失敗したのは、コード全体がどのように構築され、実行する必要があるかではなく、問題の表面に注目したためです。例としては、頭痛で医者に行くことです。ある医師は、アスピリンを 2 錠飲んで、朝は電話しないでくださいと言うかもしれません。他の医師は、頭痛の根本的な原因を突き止め、その解決を手助けしようとするかもしれません。
ChatGPT は根本原因に焦点を当て、バグを修正することができました。 Bard は症状を観察しただけで、解決策を思いつきませんでした。
残念ながら、Code Llama は、問題の表面だけを見て、Bard とまったく同じことを行いました。 AI は推奨事項を出しましたが、その推奨事項では状況は改善されませんでした。
そして優勝者は…
私のテストスイートは包括的とは程遠いです。しかし、ChatGPT の速度が低下することさえなかった 3 つのテストのうち 2 つで Code Llama が失敗した場合、AI はゴールデンタイムに向けて準備ができていないようです。
ChatGPT ではなく Code Llama を使用する唯一の理由は、コードを Meta と共有されないため、それを自分のサーバーにインストールする場合です。しかし、正解が得られないのであれば、プライバシーに何の意味があるでしょうか?
ChatGPT がそれほど良くなかったら、おそらく Code Llama にいくつかの点を与えていたでしょう。しかし、私たちは ChatGPT で何ができるかを知っています。そして Code Llama はそのレベルには程遠いのです。つまり、Facebook はそれを徹底的に改善し、いくつかの改善を行う必要があるようです。
正直に言うと、もっと良いものを期待していたので、少しがっかりしました。しかし、テクノロジーコラムニストが慣れ親しんでいることが一つあるとすれば、それは、私たちが注目している製品やプロジェクトの多くに少し失望していることだ。だからこそ、何かが際立っていて世界を揺るがすとき、私たちはとても興奮するのだと思います。そして残念なことに、Code Llama はその中には含まれていません。
コーディング支援用の AI を試したことがありますか?どちらを使用したことがありますか?彼らはどうやってうまくいきましたか?以下のコメント欄でお知らせください。
ソーシャルメディアで私の日々のプロジェクトの最新情報をフォローしてください。 Substack で毎週更新されるニュースレターを購読し、Twitter (@DavidGewirtz)、Facebook (Facebook.com/DavidGewirtz)、Instagram (Instagram.com/DavidGewirtz)、YouTube (YouTube.com/DavidGewirtzTV) をフォローしてください。





