链载Ai

标题: 了解如何使用 Llama Index 微调 Llama3 [打印本页]

作者: 链载Ai    时间: 3 小时前
标题: 了解如何使用 Llama Index 微调 Llama3

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1.2em;font-weight: bold;display: table;margin: 2em auto 1em;padding-right: 1em;padding-left: 1em;border-bottom: 2px solid rgb(0, 152, 116);color: rgb(63, 63, 63);">用 LLama-Factory 训练和微调 LLama3,打造你的专属 AI 模型!

在这篇文章中,我们将了解如何使用 Llama Index 微调 Llama3。更棒的是,你只需几个简单的步骤和几行代码就可以实现这一点。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">在低成本云 GPU 上构建和扩展 AI 模型。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">目录

    ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;padding-left: 1em;color: rgb(63, 63, 63);" class="list-paddingleft-1">
  1. 1.什么是模型微调?

  2. 2.为什么使用 LLama-Factory?

  3. 3.LLAMABOARD:LLAMAFACTORY 的统一界面

  4. 4.在 Paperspace 上微调 Llama 3

  5. 5.结论

  6. 6.参考文献

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">本文将探索于 2024 年 3 月 21 日发布的 Llama Factory,并了解如何微调 Llama 3。为了我们的任务,我们将使用 NVIDIA A4000 GPU,这被认为是最强大的单槽 GPU 之一,能够无缝集成到各种工作站设置中。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">利用 NVIDIA Ampere 架构,RTX A4000 集成了 48 个第二代 RT 核心,192 个第三代 Tensor 核心和 6144 个 CUDA 核心及配备有 ECC 的 16GB 图形内存;确保创新项目的计算精度和可靠性。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">直到最近,微调大语言模型还是一个复杂的任务,主要由机器学习和 AI 专家处理。然而,随着人工智能领域的不断发展,这一观念正在迅速改变。新工具如 Llama Factory 正在出现,使得微调过程更加便捷和高效。此外,现在还可以使用 DPO、ORPO、PPO 和 SFT 等技术进行微调和模型优化。此外,你现在可以高效地训练和微调 Llama、Mistral、Falcon 等模型。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1.1em;font-weight: bold;margin-top: 2em;margin-right: 8px;margin-bottom: 0.75em;padding-left: 8px;border-left: 3px solid rgb(0, 152, 116);color: rgb(63, 63, 63);">什么是模型微调?

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">微调模型涉及调整预训练或基础模型的参数,使其能够用于特定任务或数据集,从而提升其性能和准确性。这个过程包括为模型提供新的数据,并修改其权重、偏差和某些参数以最小化损失和成本。通过这样做,这个新模型可以在任何新任务或数据集上表现良好,而无需从头开始,从而节省时间和资源。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">通常,当一个新的大型语言模型(LLM)创建时,它会在一个大型文本数据语料库上进行训练,其中可能包含潜在有害或不良内容。在预训练或初始训练阶段之后,模型会被微调加入安全措施,确保其避免生成有害或不良的响应。然而,这种方法并非完美无缺。尽管如此,微调的概念解决了适应特定需求的要求。

为什么使用 LLama-Factory?

引入 Llama Factory,这是一款能够高效且经济地微调 100 多个模型的工具。Llama Factory 简化了模型微调的过程,使其变得易于访问和用户友好。它还提供了 Hiyouga 的 Hugging Face Space,可以用来微调模型。

LLama Board(Huggingface Space)

这个空间还支持 Lora 和 GaLore 配置以减少 GPU 使用。通过一个简单的滑动条,用户可以轻松更改诸如 drop-out、epoch、批量大小等参数。有多种数据集选项可供选择来微调你的模型。如本文所述,Llama Factory 支持众多模型,包括不同版本的 Llama、Mistral 和 Falcon。它还支持先进的算法如 galore、badm 和 Lora,提供了各种功能如闪存注意力、位置编码和缩放。

此外,你可以集成监控工具如 TensorBoard、VanDB 和 MLflow。为了更快的推理,你可以利用 Gradio 和 CLI。总之,Llama Factory 提供了一套多样化的选项来提升模型性能并简化微调过程。

LLAMABOARD:LLAMAFACTORY 的统一界面

LLAMABOARD 是一个用户友好的工具,帮助人们无需编程知识就能调整和改进语言模型(LLM)的性能。它像一个仪表板一样,可以轻松自定义语言模型的学习和信息处理方式。

以下是一些关键特性:

  1. 1.简单定制:你可以在网页上调整设置来改变模型的学习方式。默认设置适用于大多数情况。而且,你还可以在开始之前查看数据在模型中的表现。

  2. 2.进度监控:在模型学习过程中,你可以看到更新和图表,这些图表显示了模型的表现。这将帮助你了解模型是否在改进。

  3. 3.灵活测试:你可以通过与已知答案对比或直接与模型交互来检查模型对文本的理解能力。这可以帮助你看清模型在语言理解方面的提升。

  4. 4.多语言支持:LLAMABOARD 支持英文、俄文和中文,这使得它对不同语言的用户都很有用。未来还可以增加更多语言的支持。

使用 Paperspace 微调 LLama 3

让我们登录平台,选择你喜欢的 GPU,并启动笔记本。你也可以点击文章中的链接来帮助你启动笔记本。

  1. 1.我们将先克隆代码库并安装所需库,

!gitclonehttps://github.com/hiyouga/LLaMA-Factory.git
%cdLLaMA-Factory
%ls
  1. 1.接下来,我们将安装 unsloth,它可以帮助我们有效地微调模型。另外,我们还将安装 xformers 和 bitsandbytes。

#安装所需软件包
!pipinstall"unsloth[colab-new]@git+https://github.com/unslothai/unsloth.git"
!pipinstall--no-depsxformers==0.0.25
!pipinstall.[bitsandbytes]
!pipinstall'urllib3<2'
  1. 1.安装完成后,我们将检查 GPU 规格,

!nvidia-smi
  1. 1.接下来,我们将导入 torch 并检查 CUDA,因为我们使用的是 GPU,

importtorch
try:
asserttorch.cuda.is_available()isTrue
exceptAssertionError:
print("YourGPUisnotsetup!")
  1. 1.现在我们将导入克隆到 GitHub 代码库中的数据集。我们也可以创建自定义数据集并使用它。

importjson
%cd/notebooks/LLaMA-Factory
MODEL_NAME="Llama-3"
withopen("/notebooks/LLaMA-Factory/data/identity.json","r",encoding="utf-8")asf:
dataset=json.load(f)
forsampleindataset:
sample["output"]=sample["output"].replace("MODEL_NAME",MODEL_NAME).replace("AUTHOR","LLaMAFactory")
withopen("/notebooks/LLaMA-Factory/data/identity.json","w",encoding="utf-8")asf:
json.dump(dataset,f,indent=2,ensure_ascii=False)
  1. 1.完成上述步骤后,执行以下代码生成 Llama Factory 的 Gradio web 应用链接。

#生成web应用链接
%cd/notebooks/LLaMA-Factory
!GRADIO_SHARE=1llamafactory-cliwebui

你可以点击生成的链接并按照提示操作,或者使用你自己的参数规格。

  1. 1.模型选择:






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5