当前位置:首页|资讯|Hugging Face|GPT-4|LLaMA|编程

如何在免费 Colab 上使用 Hugging Face 运行 Code Llama

作者:二师兄talk发布时间:2023-12-21


GPT-4 在编码方面表现出色,但竞争对手正在逼近!

Meta 发布的最新开源模型 Code Llama —— 这是开源 Llama 2 的一个微调版本。Code Llama 在一个任务上表现出色:生成代码… 令人惊讶 :)

实际上,Meta 发布了 9 个版本的模型。有 3 个尺寸(7B、13B 和 34B)和 3 个变体:

  • Code Llama ➡️ 基础模型。

  • Code Llama — Instruct ➡️ 专为理解人类指令进行了微调。

  • Code Llama — Python ➡️ 专门用于 Python 代码。

今天,我们将使用最小的标准模型:Code Llama 7B。完成本文后,你将学到:

  • 如何在 Colab 上使用 GPU

  • 如何获取 Meta 的 Code Llama 访问权限

  • 如何创建 Hugging Face 流水线

  • 如何使用 Hugging Face 加载和标记 Code Llama

  • 最后,你将学习如何使用 Code Llama 生成代码! :)

标准版的 Code Llama 不是一个基于指令的模型。

这对我们意味着什么?

我们不会用自然语言指令提示它,比如“写一个返回给定数字的阶乘的函数”。

相反,我们会这样提示它:“def factorial(n):” 然后,Code Llama 就会为我们完成代码。

注意:在本文末尾,你将找到所有有用的链接,包括一个已经准备好的 Colab 笔记本


准备工作。

在我们进入代码之前,你将花费 2 分钟来完成以下 3 个必要的步骤:

  1. 确保已将 Colab 运行时切换到 GPU 以获得最佳性能。在顶部菜单中,转到 Runtime -> Change runtime type 并选择“T4 GPU”。

  2. 在 Hugging Face 上创建一个帐户以访问模型。注册链接

  3. 获取 Llama 2 的访问权限。在此提交表单(确保勾选 Code Llama 复选框)。重要提示:你在表单中提供的电子邮件必须与你的 Hugging Face 帐户的电子邮件完全相同。

步骤 1:安装 Hugging Face Dev。

首先,通过安装 Hugging Face 开始。这是与最新的 Code Llama 模型一起工作所必需的

它应该会安装 transformers==4.35.3 库。


步骤 2:加载 Llama Code 模型和分词器。

获取 Llama Code 模型及其分词器。对于该项目,我们将使用 codellama/CodeLlama-7b-hf 模型。

选择最小的模型使我们能够在免费的 Colab 上运行代码(大模型需要更多的 GPU 资源)。


步骤 3:设置代码生成流水线。

Hugging Face 的流水线是与开源模型一起工作的方便方法。而且设置它们非常简单:

注意:这是我们实际加载 Code Llama 模型的步骤。因此,此代码将需要几分钟来完成。

我们在流水线中设置了 4 个参数,但前两个至关重要:

  • “text-generation” 是我们希望我们的流水线执行的任务。查看完整的任务列表。

  • “model” 是我们使用的模型。对于我们来说,它是先前定义的 Code Llama 7B。


步骤 4:生成代码!

现在,让我们创建一个使用我们的流水线并生成代码的函数:

我们设置了几个参数,但最重要的三个是:

  • prompt:这是你对 Code Llama 的查询。

  • num_return_sequences:LLM 可以对你的查询生成多个响应。但为了节省时间,我们将只创建 1 个。

  • max_length:Llama 响应的令牌限制。


步骤 5:测试魔法。

我们用编码提示,而不是人类指令调用模型!这里有一些例子:

调用函数并查看 Code Llama 编写 Python 函数。


步骤 6:评估结果。

结果还不错,但不如预期那么惊人。

生成的函数在语法和功能上都是正确的。

但是,模型在完成函数后仍然继续生成代码。在 Fibonacci 示例中,Code Llama 开始编写与提示相关的另一个函数。但这并不是我们期望的行为。

但我们使用的是模型的基础版本。也许更先进和“精细”的模型马上就要到来。


结论。

你已经看到了 Llama Code 潜力的冰山一角,在 Colab 中生成 Python 片段。

像往常一样,我强烈鼓励你进行实验!

拿起代码并尝试使用:

  • 用不同的代码示例提示模型

  • 尝试不同的编程语言

  • 更改模型?

这就是你真正学习的方式!看看好奇心带你去哪里!


参考资料:

  1. 当前演示项目 Colab 代码 :https://colab.research.google.com/drive/10wUJ77A5cTPEMNIpgbo2ggFj4jlw8pKn?usp=sharing

  2. Blog Post by Hugging Face:https://huggingface.co/blog/codellama

  3. Code Llama 文档:https://huggingface.co/docs/transformers/main/model_doc/code_llama

  4. HF 上的 Code Llama 模型:https://huggingface.co/codellama/CodeLlama-7b-hf

  5. codellama-13b-chat:https://huggingface.co/spaces/codellama/codellama-13b-chat

  6. Code Llama in Hugging Chat:https://huggingface.co/chat/conversation/6583dedbf6ea513f3a1624b5




Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1