🚀 コードラマ
Code Llamaは、70億から340億のパラメータ規模の事前学習および微調整された生成型テキストモデルのコレクションです。これは、Hugging Face Transformers形式のベース13Bバージョンのリポジトリです。このモデルは、一般的なコード合成と理解を目的として設計されています。他のモデルへのリンクは、下部のインデックスにあります。
⚠️ 重要提示
これは非公式のCode Llamaリポジトリです。公式のMetaリポジトリはMeta Llama organizationで見つけることができます。
🚀 クイックスタート
このモデルを使用するには、transformersをインストールする必要があります。
pip install transformers accelerate
✨ 主な機能
- [x] コード補完
- [x] コード埋め込み
- [ ] インストラクション / チャット
- [ ] Python専用
💻 使用例
基本的な使用法
from transformers import AutoTokenizer
import transformers
import torch
model = "codellama/CodeLlama-13b-hf"
tokenizer = AutoTokenizer.from_pretrained(model)
pipeline = transformers.pipeline(
"text-generation",
model=model,
torch_dtype=torch.float16,
device_map="auto",
)
sequences = pipeline(
'import socket\n\ndef ping_exponential_backoff(host: str):',
do_sample=True,
top_k=10,
temperature=0.1,
top_p=0.95,
num_return_sequences=1,
eos_token_id=tokenizer.eos_token_id,
max_length=200,
)
for seq in sequences:
print(f"Result: {seq['generated_text']}")
📚 ドキュメント
モデルの詳細
*注: このモデルの使用はMetaのライセンスによって管理されています。MetaはCode Llamaファミリーの大規模言語モデル(LLM)を開発し、公開しました。
モデル開発者 Meta
バリエーション Code Llamaは3つのモデルサイズと3つのバリエーションで提供されています。
- Code Llama: 一般的なコード合成と理解を目的としたベースモデル
- Code Llama - Python: Python専用に設計されたモデル
- Code Llama - Instruct: インストラクションに従い、より安全にデプロイできるモデル
すべてのバリエーションは、7B、13B、34Bのパラメータサイズで利用可能です。
このリポジトリには、13Bパラメータモデルのベースバージョンが含まれています。
入力 モデルはテキストのみを入力として受け取ります。
出力 モデルはテキストのみを生成します。
モデルアーキテクチャ Code Llamaは、最適化されたトランスフォーマーアーキテクチャを使用した自己回帰型言語モデルです。
モデルの日付 Code Llamaとそのバリエーションは、2023年1月から2023年7月の間に学習されました。
ステータス これはオフラインデータセットで学習された静的モデルです。Code Llama - Instructの将来のバージョンは、コミュニティのフィードバックを元にモデルの安全性を向上させた後にリリースされます。
ライセンス カスタム商用ライセンスはhttps://ai.meta.com/resources/models-and-libraries/llama-downloads/で入手できます。
研究論文 詳細な情報は論文 "Code Llama: Open Foundation Models for Code" またはそのarXivページで確認できます。
想定される使用方法
想定される使用例 Code Llamaとそのバリエーションは、英語と関連するプログラミング言語での商用および研究用途を想定しています。ベースモデルのCode Llamaは、さまざまなコード合成と理解タスクに適用でき、Code Llama - PythonはPythonプログラミング言語を専門に扱うように設計されており、Code Llama - Instructはコードアシスタントや生成アプリケーションでより安全に使用できるように設計されています。
想定外の使用方法 適用される法律や規制(貿易コンプライアンス法を含む)に違反する方法での使用。英語以外の言語での使用。Code Llamaとそのバリエーションの許容使用ポリシーおよびライセンス契約で禁止されているその他の方法での使用。
ハードウェアとソフトウェア
学習要因 カスタム学習ライブラリを使用しました。公開されたモデルの学習と微調整は、Metaの研究スーパークラスターで行われました。
炭素排出量 合計で、9つのCode Llamaモデルすべてを学習するには、A100 - 80GB(TDP 350 - 400W)のハードウェアで40万GPU時間の計算が必要でした。推定総排出量は65.3tCO2eqで、その100%がMetaの持続可能性プログラムによって相殺されました。
学習データ
ここで報告されているすべての実験と公開されたモデルは、Llama 2と同じデータを使用して異なる重みで学習および微調整されています(詳細は研究論文のセクション2と表1を参照)。
評価結果
主要モデルの評価と詳細なアブレーションは研究論文のセクション3、安全性評価はセクション4を参照してください。
倫理的な考慮事項と制限事項
Code Llamaとそのバリエーションは、使用に伴うリスクを持つ新しい技術です。これまでに行われたテストは英語で行われており、すべてのシナリオを網羅していない、または網羅することができない。これらの理由から、すべてのLLMと同様に、Code Llamaの潜在的な出力を事前に予測することはできず、モデルは場合によってはユーザーのプロンプトに対して不正確または不快な応答を生成する可能性があります。したがって、Code Llamaのアプリケーションをデプロイする前に、開発者はモデルの特定のアプリケーションに合わせた安全性テストとチューニングを行う必要があります。
詳細はhttps://ai.meta.com/llama/responsible-use-guideにある責任ある使用ガイドを参照してください。
📄 ライセンス
このモデルの使用は、Llama 2のライセンスに従います。