テキスト形成、言語解釈、音声作成用に設計された AI アルゴリズムの発表に続き、Meta は Code Llama という別の重要なモデルをオープンソース化しました。最先端の機械学習システムである Code Llama は、簡単な英語でコードを作成し詳細を説明する能力を備えています。
Meta によるこの新しい開発は、GitHub Copilot、Amazon CodeWhisperer などの AI を利用したコード生成ソリューションや、StarCoder、StableCode、PolyCoder などの著名なオープンソース ツールと連携しています。 Code Llama は、Python、C++、Java、PHP、Typescript、C#、Bash などの複数のプログラミング言語にわたる既存のコードを完成させ、トラブルシューティングできる機能を誇ります。
Metaオープンなアプローチを活用して、AI モデル、特にコーディング固有の大規模言語モデルによるイノベーションと安全性への取り組みを主張します。 Code Llama を無料で利用できるようにすることで、同社は技術の進歩を豊かにし、人々の生活を拡張し、能力の評価、問題の認識、脆弱性の修正におけるコミュニティの参加を奨励するつもりです。
Code Llama には複数のバリエーションがあり、Python 用に最適化されたバージョンと、命令 (「フィボナッチ数列を生成する関数を作成する」など) を理解するために微調整されたバージョンが含まれています。 Code Llama の基礎は、以前にオープンソース化された Meta のテキスト生成モデルである Llama 2 です。 Llama 2 はコードを生成できましたが、Copilot のような専用モデルと比較すると、品質が不足し、見劣りすることがよくありました。
Code Llama のトレーニング段階で、Meta は、インターネット上の公開ポータルから選択的に取得した、Llama 2 に適用できる同じデータセットを使用しました。ただし、コードを扱うトレーニング データの領域が優先され、Code Llama がコードと自然言語の相関関係をより詳しく学習できるようになりました。
Code Llama モデルのサイズは 70 億から 340 億パラメータまで変化し、5,000 億トークンのコードと関連データを使用してトレーニングを実施しました。 Python 固有の Code Llama は、追加の 1,000 億トークンの Python コードを使用して細心の注意を払って調整され、指示を理解するバージョンは、クエリに対する「有用」で「安全な」応答を定式化するために人間による注釈付きのフィードバックに基づいて微調整されました。
Code Llama モデルのいくつかは、コードを既存のコードに統合する機能を備えており、最大 100,000 個のコード トークンを入力として受け入れることができます。 Meta は、340 億のパラメーター モデルは、機能の点で他のオープンソース コード ジェネレーターの中でトップであり、パラメーター数でも最大であると主張しています。
Meta は、Code Llama がプロンプトに対して時折「誤った」または「不適切な」応答を生成する可能性があると警告していますが、開発者に対しては、モデルのアプリケーションを展開する前に、カスタマイズされた安全性テストと調整を実施することも推奨しています。
Code Llama の展開において、Meta は開発者が商業目的で使用するか研究目的で使用するかにかかわらず、開発者に厳しい制限を課すことを控えてきました。ただし、開発者は倫理基準を遵守し、有害な目的でモデルを悪用しないことが求められます。月間アクティブ ユーザー数が 7 億人を超えるプラットフォームにモデルを展開する場合は、ライセンスを取得する必要があります。
Code Llama は、研究、産業、オープンソース プロジェクト、NGO、企業など、あらゆる分野のソフトウェア エンジニアを支援するように設計されており、その基本モデルと命令モデルが現在カバーしている範囲を超えて、さらに多くの使用シナリオを実現する余地があります。 Code Llama が、他の人が研究や商用製品用の革新的なツールを作成する際に Llama 2 を活用するよう促すことを期待しています。アプリケーション開発を強化するというAppMasterのビジョンと同様に、Code Llama はコーディングの進化における次のステップを表します。
このような進歩がテクノロジー業界に与える影響を否定することはできません。テクノロジー業界では、 AppMasterなどの他のプラットフォームがアプリケーション作成をよりアクセスしやすくすることに大きく貢献しています。しかし、そのようなテクノロジーの安全かつ効率的な使用を保証するために、倫理と責任の枠組みの中で AI の役割を確立することも重要です。