进货渠道网,莆田网站建设方案优化,用asp做网站视频,wordpress图片本地化插件一 模型下载 二 模型推理
本文基于Chinese-LLaMA-Alpaca-2项目代码介绍#xff0c;使用原生的llama2-hf
克隆好了Chinese-LLaMA-Alpaca-2 项目之后#xff0c;基于GPU的部署非常简单。下载完成以后的模型参数(Hugging Face 格式)如下#xff1a; 简单说明一下各个文件的作…一 模型下载 二 模型推理
本文基于Chinese-LLaMA-Alpaca-2项目代码介绍使用原生的llama2-hf
克隆好了Chinese-LLaMA-Alpaca-2 项目之后基于GPU的部署非常简单。下载完成以后的模型参数(Hugging Face 格式)如下 简单说明一下各个文件的作用
文件名称示例说明config.json{ architectures: [ LlamaForCausalLM ], hidden_size: 4096, ... vocab_size: 55296 }hugging face Transformer的配置文件 文档路径在https://huggingface.co/docs/transformers/main/main_classes/configurationgeneration_config.json{ _from_model_config: true, bos_token_id: 1, eos_token_id: 2, pad_token_id: 0, transformers_version: 4.31.0 }这个主要是为了generation方法提供参数https://huggingface.co/docs/transformers/main_classes/text_generationpytorch_model.bin.index.json{ metadata: { total_size: 13858521088 }, weight_map: { ... } }包含一些元数据以及一个参数名映射表包含权重指示信息pytorch_model-*.bin标准的Pytorch state dicts它们各自包含模型的一部分special_tokens_map.json{ ... pad_token: , unk_token: { content: , lstrip: false, normalized: true, rstrip: false, single_word: false } }映射文件里面包含 unknown token 等特殊字符的映射关系tokenizer_config.json{ add_bos_token: true, ... unk_token: { __type: AddedToken, content: , lstrip: false, normalized: true, rstrip: false, single_word: false }, use_fast: false }分词器配置文件存储构建分词器需要的参数tokenizer.model标记器(Tokenizer)将文本转换为模型可以处理的数据。模型只能处理数字因此标记器(Tokenizer)需要将我们的文本输入转换为数字数据。
模型推理 Chinese-LLaMA-Alpaca-2 提供了一些使用脚本可以很方便的体验模型推理的过程 教程
aiofiles23.1.0
fastapi0.95.2
gradio_client0.2.5
gradio3.33.1accelerate0.22.*
colorama
datasets
einops
markdown
numpy1.24
optimum1.12.0
pandas
peft0.5.*
transformers4.33.1
Pillow9.5.0
pyyaml
requests
safetensors0.3.2
scipy
sentencepiece0.1.99
tensorboard
tqdm
wandb# bitsandbytes
bitsandbytes0.41.1 启动运行环境使用docker docker run -it -v pwd:/home/work --gpus 1 pytorch:2.0.1-transformers /bin/bash python scripts/inference/inference_hf.py --base_mode /home/work/llama2/ --with_prompt --interactive 可以看出原生的LLAMA2模型对中文支持不好回答的答案基本都是英文 三、搭建text-generation-webui
text-generation-webui是github上的一个开源项目也是目前运行开源模型最广泛使用的软件之一。如果你之前用过第一代LLama应该对这个项目比较熟悉。
text-generation-webui的安装方式相当简单同样需要从github上克隆项目https://github.com/oobabooga/text-generation-webui。克隆完成后我们把刚才转换好的huggingface格式的模型文件夹整个放入models中目录结构如下
我们将刚才生成好huggingface格式的模型文件夹整个放入models中文件结构如下图 如果这一步做完了模型部署这块就大功告成啦。现在我们运行text-generation-webui就可以和llama2模型对话了具体的命令如下
python server.py --api --listen --model /home/work/text-generation-webui-main/models/llama-2-7b/ 四、使用模型
现在LLama2模型已经搭建好了怎么样把它分享给你的朋友或同事使用呢
我们用YourChat来完成这个工作。YourChat是一个聊天客户端它支持text_generation_webui的API适配了Android、iOS、Windows和MacOS以下我们以Windows版本为例当然其他平台也大同小异。 下载地址https://yourchat.app/download
在上一步我们在启动text_generation_webui的时候添加了一个--api参数这就让text_generation_webui支持了API调用。如果你想要使用YourChat那这个API功能就必须要打开。
首先让我们把刚刚搭建的text_generation_webui添加到YourChat的服务里面。如果是第一次使用YourChat它会弹出一个新手教程。如果text-generation-webui参数没有动过那就按照教程的指引填入服务的IP地址就可以了。 如果之前已经下载过YourChat那就在YourChat的服务界面点击右下角的按钮添加一个新的服务。在名称栏中输入你的服务名称比如模型名字llama-2-7b。在Host栏中填写你的模型服务器的地址例如192.168.1.100。 然后点击右上角的保存按钮你的Llama2模型就成功地被添加到了YourChat中你现在可以开始和LLama2进行聊天了。 LLama 2干货部署教程模型分发 - 知乎 (zhihu.com)
从0开始微调LLama2系列 (2) : 运行一下llama2 - 知乎 (zhihu.com)