【AI实战】开源中文 llama2 来了,30 分钟搭建 130 亿参数大模型 Llama2-Chinese-13b-Chat

这篇具有很好参考价值的文章主要介绍了【AI实战】开源中文 llama2 来了,30 分钟搭建 130 亿参数大模型 Llama2-Chinese-13b-Chat。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简介

  • Llama2
    2023年7月19日:Meta 发布开源可商用模型 Llama2。

    Llama2 是一个预训练和微调的生成文本模型的集合,其规模从70亿到700亿个参数不等。

    LLaMA2 的详细介绍可以参考这篇文章:【大模型】更强的 LLaMA2 来了,开源可商用、与 ChatGPT 齐平

  • Llama2-Chinese

    Llama2中文社区

    Llama2-Chinese GitHub地址

    Llama2 中文 Hugging Face仓库 FlagAlpha: https://huggingface.co/FlagAlpha

    Llama2在线体验链接 llama.family

    模型数据:
    【AI实战】开源中文 llama2 来了,30 分钟搭建 130 亿参数大模型 Llama2-Chinese-13b-Chat,大语言模型,开源中文 llama2,llama2,llama2-chinese

    中文微调参数:
    【AI实战】开源中文 llama2 来了,30 分钟搭建 130 亿参数大模型 Llama2-Chinese-13b-Chat,大语言模型,开源中文 llama2,llama2,llama2-chinese

环境配置

环境搭建

  • 系统环境

    • Ubuntu 20.04LTS
    • CUDA 11.8
    • Docker 18.09.5
  • 创建docker容器

拉取docker镜像

docker pull nvcr.io/nvidia/pytorch:21.08-py3

创建docker


nvidia-docker run -it -d \
    --name llama2_chinese \
    -p 15550:15550 \
    -p 15551:15551 \
    -v /xx/xx/llm:/notebooks \
    -e TZ='Asia/Shanghai' \
    --shm-size 16G \
    nvcr.io/nvidia/pytorch:21.08-py3
    
# docker exec -it llama2_chinese env LANG=C.UTF-8 /bin/bash

修改 /xx/xx/llm 为自己的路径

进入容器内:

docker exec -it llama2_chinese env LANG=C.UTF-8 /bin/bash
  • 安装conda

下载:

cd /notebooks
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

安装:

bash Miniconda3-latest-Linux-x86_64.sh

安装提升安装即可

将miniconda加入PATH路径:

export PATH="/root/miniconda3/bin:$PATH"

创建 conda 环境:

conda create -n llama2 python=3.10.9
  • 安装依赖库
conda activate llama2
conda init

exit退出docker,重新进入docker

docker exec -it llama2_chinese  env LANG=C.UTF-8 /bin/bash
cd /notebooks
conda activate llama2

依赖安装

安装依赖库:

pip install -r requirements-2.txt  -i https://pypi.tuna.tsinghua.edu.cn/simple

代码及模型权重拉取

拉取 Llama2-Chinese

git clone https://github.com/FlagAlpha/Llama2-Chinese.git

github网站偶尔会抽风,需要耐心等待,如果失败了,执行 rm -rf Llama2-Chinese,再重新拉取

拉取 Llama2-Chinese-13b-Chat 模型权重及代码

cd Llama2-Chinese
git clone git clone https://huggingface.co/FlagAlpha/Llama2-Chinese-13b-Chat

由于权重文件特别大,如果失败了,执行 rm -rf Llama2-Chinese-13b-Chat,再重新拉取。
建议中午时间拉取,速度比较快,大概 1 小时(和你的网络带宽有很大关系!)。

文件大小查看:

du -sh Llama2-Chinese-13b-Chat

输出:

25G    Llama2-Chinese-13b-Chat

如果文件大小不一致,或者太小,说明权重文件下载识别,
请执行: rm -rf Llama2-Chinese-13b-Chat, 再重新拉取
或者 按照后面的方法去下载权重文件

查看文件列表:

ls -l Llama2-Chinese-13b-Chat/

输出:

# ls -l Llama2-Chinese-13b-Chat/
total 25421840
-rw-r--r-- 1 root root       1514 Jul 27 06:33 README.md
-rw-r--r-- 1 root root        683 Jul 27 06:33 config.json
-rw-r--r-- 1 root root        327 Jul 27 07:12 down.sh
-rw-r--r-- 1 root root        175 Jul 27 06:33 generation_config.json
-rw-r--r-- 1 root root 9948728430 Jul 24 23:12 pytorch_model-00001-of-00003.bin
-rw-r--r-- 1 root root 9904165024 Jul 24 12:44 pytorch_model-00002-of-00003.bin
-rw-r--r-- 1 root root 6178983625 Jul 24 12:14 pytorch_model-00003-of-00003.bin
-rw-r--r-- 1 root root      33444 Jul 27 06:33 pytorch_model.bin.index.json
-rw-r--r-- 1 root root        414 Jul 27 06:33 special_tokens_map.json
-rw-r--r-- 1 root root        131 Jul 27 06:33 tokenizer.model
-rw-r--r-- 1 root root        749 Jul 27 06:33 tokenizer_config.json

【】如果大文件下载识别,按照下面的方法下载模型文件;

wget https://huggingface.co/FlagAlpha/Llama2-Chinese-13b-Chat/resolve/main/pytorch_model-00001-of-00003.bin
wget https://huggingface.co/FlagAlpha/Llama2-Chinese-13b-Chat/resolve/main/pytorch_model-00002-of-00003.bin
wget https://huggingface.co/FlagAlpha/Llama2-Chinese-13b-Chat/resolve/main/pytorch_model-00003-of-00003.bin

如果还是没法下载,参考下面的“国内 Llama2 最新下载地址” 进行下载

终端测试

进入python环境:

python3

输入代码:

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained('Llama2-Chinese-13b-Chat',device_map='auto',torch_dtype=torch.float16,load_in_8bit=True)
model =model.eval()
tokenizer = AutoTokenizer.from_pretrained('Llama2-Chinese-13b-Chat',use_fast=False)
tokenizer.pad_token = tokenizer.eos_token
input_ids = tokenizer(['<s>Human: 介绍一下深圳\n</s><s>Assistant: '], return_tensors="pt",add_special_tokens=False).input_ids.to('cuda')        
generate_input = {
    "input_ids":input_ids,
    "max_new_tokens":512,
    "do_sample":True,
    "top_k":50,
    "top_p":0.95,
    "temperature":0.3,
    "repetition_penalty":1.3,
    "eos_token_id":tokenizer.eos_token_id,
    "bos_token_id":tokenizer.bos_token_id,
    "pad_token_id":tokenizer.pad_token_id
}
generate_ids  = model.generate(**generate_input)
text = tokenizer.decode(generate_ids[0])
print(text)

页面测试

使用 gradio 搭建页面

安装 gradio

pip install gradio -i https://pypi.tuna.tsinghua.edu.cn/simple

加载模型并启动服务

修改端口;

vi /notebooks/Llama2-Chinese/examples/chat_gradio.py

到94行:

    demo.queue().launch(share=False, debug=True, server_name="0.0.0.0")

修改为:

    demo.queue().launch(share=False, debug=True, server_name="0.0.0.0", server_port=15550)

启动脚本:

python examples/chat_gradio.py --model_name_or_path Llama2-Chinese-13b-Chat

如果出现下面的错误:

  File "/notebooks/Llama2-Chinese/examples/chat_gradio.py", line 94
    demo.queue().launch(share=False, debug=True, server_name="0.0.0.0")
                                               ^
SyntaxError: invalid character ',' (U+FF0C)

则按照下面的步骤修改代码:

vi /notebooks/Llama2-Chinese/examples/chat_gradio.py
:94 
修改中文逗号,为英文逗号,

94    demo.queue().launch(share=False, debug=True, server_name="0.0.0.0")
=>
94    demo.queue().launch(share=False, debug=True, server_name="0.0.0.0")
  • 测试

    浏览器打开地址:http://10.192.x.x:15550/

国内 Llama2 最新下载地址

Llama2-7B官网版本:https://pan.xunlei.com/s/VN_kR2fwuJdG1F3CoF33rwpIA1?pwd=z9kf

Llama2-7B-Chat官网版本:https://pan.xunlei.com/s/VN_kQa1_HBvV-X9QVI6jV2kOA1?pwd=xmra

Llama2-13B官网版本:https://pan.xunlei.com/s/VN_izibaMDoptluWodzJw4cRA1?pwd=2qqb

Llama2-13B-Chat官网版本:https://pan.xunlei.com/s/VN_iyyponyapjIDLXJCNfqy7A1?pwd=t3xw

Llama2-7B Hugging Face版本:https://pan.xunlei.com/s/VN_t0dUikZqOwt-5DZWHuMvqA1?pwd=66ep

Llama2-7B-Chat Hugging Face版本:https://pan.xunlei.com/s/VN_oaV4BpKFgKLto4KgOhBcaA1?pwd=ufir

Llama2-13B Hugging Face版本:https://pan.xunlei.com/s/VN_yT_9G8xNOz0SDWQ7Mb_GZA1?pwd=yvgf

Llama2-13B-Chat Hugging Face版本:https://pan.xunlei.com/s/VN_yA-9G34NGL9B79b3OQZZGA1?pwd=xqrg

参考

1.https://github.com/FlagAlpha/Llama2-Chinese
2.https://huggingface.co/FlagAlpha/Llama2-Chinese-13b-Chat/tree/main
3.https://github.com/facebookresearch/llama
4.https://huggingface.co/meta-llama文章来源地址https://www.toymoban.com/news/detail-650811.html

到了这里,关于【AI实战】开源中文 llama2 来了,30 分钟搭建 130 亿参数大模型 Llama2-Chinese-13b-Chat的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 在树莓派中跑迷你Llama2中文模型

    在树莓派中跑迷你Llama2中文模型

      OpenAI的Karpathy利用周末搞了一个迷你Llama2项目llama2.c用500行C语言实现无任何依赖项的推理程序,此项目在github发布以来衍生出了基于各种语言的迷你Llama推理实现llama2.go、llama2.java、llama2.py等等;   但该项目原本的模型并不支持中文,最近正好看到一个基于llama2的中文训

    2024年02月12日
    浏览(10)
  • 实战! 30分钟教你用SoFlu软件机器人搭建完成低代码平台

    最近几年,“低代码”俨然成了热门话题,各大云厂商都在加码。作为普通企业的我们是否有也可以深度定制一套自己的“低代码”平台呢? 答案是肯定的,目前主流的就是自建和外购两种方式,随着低代码的发展和广泛应用,这两种方式的不足之处也日益凸显。 外购:贵

    2024年02月14日
    浏览(11)
  • 基于Llama2模型的开源模型

    基于Llama2模型的开源模型

      2023年7月18日Meta开源了Llama2,在2万亿个Token上训练,可用于商业和研究,包括从7B到70B模型权重、预训练和微调的代码。相比Llama1,Llama2有较多提升,评估结果如下所示: 基于Llama2模型的开源模型如下所示: 1.WizardCoder Python V1.0 2.Phind Code Llama v1 3.WizardLM 70B V1.0 4.Dophin Llam

    2024年02月10日
    浏览(11)
  • 大模型部署手记(11)LLaMa2+Chinese-LLaMA-Plus-2-7B+Windows+llama.cpp+中文对话

    大模型部署手记(11)LLaMa2+Chinese-LLaMA-Plus-2-7B+Windows+llama.cpp+中文对话

    组织机构:Meta(Facebook) 代码仓:GitHub - facebookresearch/llama: Inference code for LLaMA models 模型:LIama-2-7b-hf、Chinese-LLaMA-Plus-2-7B   下载:使用huggingface.co和百度网盘下载 硬件环境:暗影精灵7Plus Windows版本:Windows 11家庭中文版 Insider Preview 22H2 内存 32G GPU显卡:Nvidia GTX 3080 Laptop (1

    2024年02月03日
    浏览(13)
  • Sealos 国内集群正式上线,可一键运行 LLama2 中文版大模型!

    Sealos 国内集群正式上线,可一键运行 LLama2 中文版大模型!

    2023 年 7 月 19 日,MetaAI 宣布开源旗下的 LLama2 大模型,Meta 首席科学家、图灵奖得主 Yann LeCun 在推特上表示 Meta 此举可能将改变大模型行业的竞争格局。一夜之间,大模型格局再次发生巨变。 不同于 LLama,LLama2 免费可商用 ! LLama2 的能力在 GPT-3 ~ GPT-3.5 之间,对于关注数据隐

    2024年02月12日
    浏览(15)
  • 大模型部署手记(9)LLaMa2+Chinese-LLaMA-Plus-7B+Windows+llama.cpp+中文文本补齐

    大模型部署手记(9)LLaMa2+Chinese-LLaMA-Plus-7B+Windows+llama.cpp+中文文本补齐

    组织机构:Meta(Facebook) 代码仓:GitHub - facebookresearch/llama: Inference code for LLaMA models 模型:llama-2-7b、Chinese-LLaMA-Plus-7B(chinese_llama_plus_lora_7b)   下载:使用download.sh下载 硬件环境:暗影精灵7Plus Windows版本:Windows 11家庭中文版 Insider Preview 22H2 内存 32G GPU显卡:Nvidia GTX 3080 La

    2024年02月03日
    浏览(11)
  • IDPChat:探索基于LLaMA和Stable Diffusion的「开源」中文多模态AI大模型

    IDPChat:探索基于LLaMA和Stable Diffusion的「开源」中文多模态AI大模型

    中文多模态模型 IDPChat 和大家见面了。 随着GPT4、文心一言等的发布,预训练大模型正式开启由单模态向多模态模型演进。多模态的特性为语言模型带来更加丰富的应用场景。 我们认为,未来的AI应用将主要以大模型为核心基石。 而在大模型的领域,基于基础模型(Foundatio

    2024年02月09日
    浏览(16)
  • LLMs之LLaMA2:LLaMA2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略

    LLMs之LLaMA2:LLaMA2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略

    LLMs之LLaMA-2:LLaMA-2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略 导读 :2023年7月18日,Meta重磅发布Llama 2!这是一组预训练和微调的大型语言模型(LLM),规模从70亿到700亿个参数不等。Meta微调的LLM称为Llama 2-Chat,专为对话使用场景进行了优化

    2024年02月16日
    浏览(12)
  • 使用 Docker 快速上手官方版 LLaMA2 开源大模型

    使用 Docker 快速上手官方版 LLaMA2 开源大模型

    本篇文章,我们聊聊如何使用 Docker 容器快速上手 Meta AI 出品的 LLaMA2 开源大模型。 昨天特别忙,早晨申请完 LLaMA2 模型下载权限后,直到晚上才顾上折腾了一个 Docker 容器运行方案,都没来得及写文章来聊聊这个容器怎么回事,以及怎么使用。 所以,现在就来聊聊如何快速上

    2024年02月16日
    浏览(9)
  • [玩转AIGC]LLaMA2训练中文文章撰写神器(数据准备,数据处理,模型训练,模型推理)

    [玩转AIGC]LLaMA2训练中文文章撰写神器(数据准备,数据处理,模型训练,模型推理)

    好久没更新这个专栏的文章了,今天抽空写了一篇。————2023.12.28 摘要:文体包括新闻,法律文书,公告,广告等,每种文体的书写风格不一样,如果拥有自己的数据集,想针对特定文体来训练一个内容生成的工具,来帮助自己写点文章,如果没接触过AIGC,可能一开始会

    2024年01月17日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包