🚀 Code Llama
Code Llama是一系列預訓練和微調的生成式文本模型,參數規模從70億到340億不等。本倉庫是Hugging Face Transformers格式下70億參數Python專業版本的模型。該模型專為通用代碼合成和理解而設計。其他模型的鏈接可在底部索引中找到。
🚀 快速開始
若要使用此模型,請確保安裝transformers:
pip install transformers accelerate
✨ 主要特性
- 代碼補全:支持代碼補全功能。
- Python專業:專門針對Python語言進行優化。
📚 詳細文檔
模型詳情
- 注意:使用此模型需遵循Meta的許可協議。Meta開發並公開發布了Code Llama系列大語言模型(LLM)。
- 模型開發者:Meta
- 模型變體:Code Llama有三種模型規模和三種變體:
- Code Llama:基礎模型,用於通用代碼合成和理解。
- Code Llama - Python:專門為Python設計。
- Code Llama - Instruct:用於遵循指令和更安全的部署。
所有變體都有70億、130億和340億參數的版本。
- 本倉庫包含70億參數模型的Python版本。
- 輸入:模型僅接受文本輸入。
- 輸出:模型僅生成文本。
- 模型架構:Code Llama是一種自迴歸語言模型,採用了優化的Transformer架構。
- 模型訓練時間:Code Llama及其變體於2023年1月至2023年7月期間進行訓練。
- 狀態:這是一個基於離線數據集訓練的靜態模型。隨著我們根據社區反饋改進模型安全性,未來將發佈Code Llama - Instruct的新版本。
- 許可證:可在此處獲取自定義商業許可證。
- 研究論文:更多信息可參考論文“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(熱設計功耗為350 - 400W)類型的硬件上進行400000 GPU小時的計算。估計總排放量為65.3 tCO2eq,其中100%由Meta的可持續發展計劃抵消。
訓練數據
此處報告的所有實驗和已發佈的模型均使用與Llama 2相同的數據進行訓練和微調,但權重不同(詳情請參閱研究論文的第2節和表1)。
評估結果
有關主要模型的評估和詳細消融實驗,請參閱研究論文的第3節,安全評估請參閱第4節。
倫理考量和侷限性
Code Llama及其變體是一項新技術,使用時存在風險。迄今為止進行的測試均使用英語,且未涵蓋也無法涵蓋所有場景。因此,與所有大語言模型一樣,Code Llama的潛在輸出無法提前預測,在某些情況下,模型可能會對用戶提示產生不準確或令人反感的響應。因此,在部署Code Llama的任何應用之前,開發者應針對其特定應用對模型進行安全測試和調整。
請參閱負責任使用指南。
模型使用權限相關說明
- 額外訪問提示:你需要與Meta共享聯繫信息才能訪問此模型。
- 使用許可協議:點擊下方的“我接受”,或使用或分發Llama材料的任何部分或元素,即表示你同意受本協議的約束。協議詳細規定了許可權利和再分發、額外商業條款、免責聲明、責任限制、知識產權、期限和終止、適用法律和管轄權等內容。
- 使用政策:使用Llama 2需遵守可接受使用政策,禁止用於違反法律或他人權利、從事危險活動、故意欺騙或誤導他人等行為。如發現違反政策的情況,可通過以下方式報告:
模型信息表格
模型變體表格