Hugging Face上でQMLコード補完用のCodeLlama-13B-QML大規模言語モデルをリリースしました。
CodeLlama-13B-QMLとは?
CodeLlama-13B-QMLは、Fill-In-the-Middle方式でQt 6準拠のコードを記述するために設計されたLLMです。MetaのCodeLlama-13Bベースモデルを基に構築されており、4000以上のQMLコードスニペットを使用して微調整を行っています。
CodeLlama-13B-QMLモデルは、UI開発用のLLMをサードパーティのホスティングサービスに依存するのではなく、プライベートクラウドでセルフホスティングしたい企業や個人を対象としています。
QML100FIMベンチマークによると、最高のQML生成
CodeLlama-13B-QMLは、Qt 6リリース準拠のコードを対象としたQML100 Fill-In-the-Middle コード補完ベンチマークで79%のスコアを獲得しました(関連ブログ記事はこちら)。これに対し、Claude 3.5 Sonnetは68%、CodeLlama-13B baseは66%、GPT-4oは62%のスコアでした。
ベースモデルの微調整とは何を意味するのでしょうか?
LLMのニューラルネットワークに追加のトレーニングデータを使用して最適化するLoRAメソッドを、コストとエネルギー効率の高い方法として、CodeLlama-13Bベースモデルにさらに多くの知識を追加するために使用しました。すべてのコードスニペットは、Qt 6.8リリースに対して、Qt Creator 15で手動で検証されています。 すべてがQMLリンターに合格しています。
私たちは、コード生成の最初のPoC(概念実証)のために、2023年11月には早くもこれらのコードスニペットをまとめ始めました。 ある時点では、豊富な顧客プロジェクト経験を持つ3人のフルタイムの経験豊富なQML開発者がこれらの作成に携わりました。 コードスニペットの一部は、公式のdoc.qt.ioのサンプルに基づいています。
微調整データセットの範囲は、Qt Quick Controls と一般的な QML コンポーネントに焦点を当てており、次の QML ライブラリを含みます。
QtCore、QtQuick、QtQuick.Controls、QtQuick.Dialogs、QtQuick.Layouts、QtQuick.Effects、QtMultimedia、QtQuick.Shapes、QtGraphs。
CodeLlama-13B-QML の使用方法
企業および個人は、Hugging Face から調整済みの CodeLlama-13B-QML モデルをこちらからダウンロードできます。CodeLlama-13B-QML モデルを使用するには、商用 Qt ライセンスは必要ありません。例えば、Ollama のコマンドラインインターフェイス (CLI) プロンプトで直接使用できます。
CodeLlama-13B-QML は、自動コード補完に適した推論(応答)時間で動作させるには相当なコンピューティングリソースを必要とする中型の言語モデルです。 したがって、AWS、Google Cloud、Microsoft Azure などのクラウド環境、またはローカル環境で、GPU アクセラレータと併用する必要があります。お客様のパソコンのハードウェアによっては、Ollama技術を使用してCodeLlama-13B-QMLをローカルに展開することも可能です。ただし、Ollamaで使用できる強力なGPUがない場合、パソコンでの日常的な使用には推論時間が不十分かもしれません。
LLMをプライベートクラウドに展開するサポートをご希望の場合は、Qtのプロフェッショナルサービスにお問い合わせいただければ、CodeLlama-13B-QMLをプライベートクラウドに展開する方法をご案内いたします。
CodeLlama-13B-QMLを含む大規模言語モデルは、単独で展開するように設計されているものではなく、必要に応じて追加の安全対策を施した総合的なAIシステムの一部として展開すべきものです。AIシステムを構築する際には、開発者がシステム上の安全対策を施すことが求められます。
CodeLlama-13B は Llama 2 ファミリーのモデルです。 Llama 2 は LLAMA 2 Community License の下でライセンスされています。著作権 (c) Meta Platforms, Inc. すべての権利を保有します。
もっと詳しい情報が必要ですか?
Qt AI Assistantが提供する機能についてもっと詳しく知りたい方は、製品ページをご覧ください。
使い始め方については、ドキュメントを参照してください。