NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - AI模型在线查看 - Three.js虚拟轴心开发包 - 3D模型在线减面 - STL模型在线切割 - 3D道路快速建模
LLaMA 是 Meta Research 的一种新的开源语言模型,其性能与闭源模型一样好。 与 Stable Diffusion 类似,自该模型公开发布以来,已经进行了大量的实验和创新。 正如 Simon Willison 所阐述的那样,LLaMA 很容易在你自己的硬件上运行,大到足以发挥作用,并且开源到足以进行修补。
LLaMA 功能强大,但它不是为回答问题而构建的。 它的功能更像是一个花哨的自动完成版本,而不是一个对话机器人。 这就是斯坦福的Alpaca派上用场的地方。Alpaca是 LLaMA 的微调版本,可以响应 ChatGPT 等指令。 而且,与 LLaMA 一样,它是开源的。
问题是,Alpaca 的权重还没有发布,所以你不能修改它。 不过,我们确实拥有复制它所需的所有组成部分:LLaMA 权重、训练数据和训练脚本。
在这篇文章中,我们将向你展示如何训练 Alpaca,以便你可以在自己的机器上对其进行修改。
注意:LLaMA 和基于 LLaMA 构建的任何内容仅用于研究目的。 你不能用它来构建任何商业产品。
1、先决条件
- LLaMA 权重。 它们仅供研究使用。 要申请访问权限,请填写Meta的这个表格。
- GPU机器。 你需要一台配备一个或多个 80GB A100 GPU 的 Linux 机器。 如果你有一台有更多 GPU 的机器,它会更快——我们使用了四个。 我们在 Google Cloud 上取得了成功。 你可以在此处按照我们的说明进行操作。
2、克隆 Alpaca 存储库
我们创建了一个 Alpaca 存储库的分支,其中添加了一个 Cog 文件,该文件将为你设置所有依赖项。
通过 SSH 登录你的 GPU 实例。 通过运行克隆存储库:
git clone https://github.com/replicate/cog_stanford_alpaca
cd cog_stanford_alpaca
3、转换 LLaMA 权重
LLaMA 权重目前仅供研究使用。 要申请访问权限,请填写此表格。
将下载的权重放在名为 unconverted-weights 的文件夹中。 文件夹层次结构应如下所示:
unconverted-weights
├── 7B
│ ├── checklist.chk
│ ├── consolidated.00.pth
│ └── params.json
├── tokenizer.model
└── tokenizer_checklist.chk
使用以下命令将权重从 PyTorch 检查点转换为与transformer兼容的格式:
cog run python -m transformers.models.llama.convert_llama_weights_to_hf \
--input_dir unconverted-weights \
--model_size 7B \
--output_dir weights
你最终的目录结构应该是这样的:
weights
├── llama-7b
└── tokenizermdki
4、训练Alpaca模型
开始训练:
cog run ./train_model.sh
这在四个 A100 上大约需要一个半小时,因此你可能想在模型训练时进行一些编程。
5、运行Alpaca模型
完成后,你可以运行 Alpaca:
$ cog predict -i prompt="Tell me something about alpacas."
Alpacas are a species of South American camelid and are closely related to llamas. They are smaller than llamas and have a finer fleece, which is used to make clothing and other crafts. Alpacas are social animals that live in herds and can come in two colors: white and brown. They are very easy to take care of and require minimal grooming.
6、后续环节
以下是你接下来可以做什么的一些想法:
- 微调模型或约束解码器以创建用于特定任务的模型。
- 尝试使用不同的界面与模型进行交互。 你在哪里可以和它说话?
- 将模型推送到复制以在云中运行它。 如果你想要一个 API 来构建接口,或者并行运行大规模评估,这会很方便。 你需要将其保密,以免权重公开。
- 请记住,你只能将 Alpaca 用于非商业研究。 最终,我们预计像这样的模型将以更宽松的许可证发布,允许它们用于各种各样的事情——聊天机器人、编码助手等等。
开源语言模型才刚刚起步,我们迫不及待地想看看你构建的内容。
原文链接:Train and run Stanford Alpaca on your own machine
BimAnt翻译整理,转载请标明出处