描述
Code Llama 是 Meta 开发的一系列大型语言模型,基于 Llama 2 构建,并专门针对代码相关任务进行了优化。此存储库提供了运行这些强大模型所需的推理代码。Code Llama 模型在开源模型中提供了最先进的性能,具备代码补全、支持长达 100,000 个 token 的扩展输入上下文以及针对编程的零样本指令遵循等功能。
该系列包括基础模型(Code Llama)、Python 特定版本(Code Llama - Python)以及指令遵循模型(Code Llama - Instruct)。它们有不同的参数规模:7B、13B、34B 和 70B。所有模型都经过 16k token 序列的训练,并在高达 100k token 的输入下表现出性能提升。Code Llama 和 Code Llama - Instruct 的 7B 和 13B 版本能够根据周围内容补全代码。
通过对 Llama 2 进行更高采样率的代码微调而开发,Code Llama 包含了相当多的安全缓解措施。该存储库提供了这些预训练和微调模型的模型权重和起始代码。它作为加载 Code Llama 模型和执行推理的最小示例。用户在接受许可后,可以从 Meta 网站下载模型权重和分词器,然后使用提供的 `download.sh` 脚本。
设置过程包括克隆存储库,并在带有 PyTorch/CUDA 的 conda 环境中安装依赖项。推理需要指定模型并行(MP)值,该值因模型大小而异(例如,7B 为 1,70B 为 8)。该存储库包含代码补全(`example_completion.py`)、代码补全(`example_infilling.py`)和指令遵循(`example_instructions.py`)的示例脚本,演示了如何有效地提示和运行不同类型的模型。
Code Llama - Instruct 模型经过专门微调以遵循指令,需要特定的格式才能获得最佳结果。该存储库还强调了与 AI 技术相关的潜在风险,并引导用户参考《负责任使用指南》和研究论文以获取更多信息。可以通过提供的 GitHub 链接报告与软件错误或模型行为相关的问题。
Code Llama的核心功能
Code Llama 模型的推理代码
支持基础模型、Python 特化模型和指令遵循模型
提供 7B、13B、34B 和 70B 参数规模
在开源代码模型中提供最先进的性能
7B 和 13B 模型的代码补全能力
支持长达 100,000 个 token 的大型输入上下文
针对编程任务的零样本指令遵循
经过 16k token 序列训练
包含模型权重和起始代码
提供补全、代码补全和指令遵循的示例脚本
包含安全缓解措施
对研究人员和商业实体均有许可
Code Llama入门
克隆:从 GitHub 克隆存储库。
安装:设置一个带有 PyTorch/CUDA 的 conda 环境,并使用 `pip install -e .` 安装依赖项。
下载:从 Meta 网站获取模型权重和分词器,并使用 `download.sh`。
配置:根据模型大小确定适当的模型并行(MP)值。
执行:使用提供的示例脚本(例如 `example_completion.py`、`example_infilling.py`、`example_instructions.py`)运行推理。
优化:根据硬件和用例调整 `max_seq_len` 和 `max_batch_size`。
Code Llama的使用案例
- 代码生成
- 代码补全
- 代码补全
- 指令遵循
- Python 开发
- 研究
- 大型上下文任务








