当前位置: 首页 > news >正文

优设网介绍重庆seo外包平台

优设网介绍,重庆seo外包平台,甘肃省住房建设厅网站,网络营销郑州网站搭建方案国产大模型ChatGLM-6B微调部署入门-使用Pycharm实战 1.ChatGLM模型介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本…

国产大模型ChatGLM-6B微调+部署入门-使用Pycharm实战

1.ChatGLM模型介绍

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。
ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。详细信息请参考: 链接.

2. 大模型参数微调

因为大模型参数比较多,不论是重新预训练还是微调,相应的硬件成本和人工成本也比较高,为了解决这一问题,网上主要涌现了基于Lora 和 基于 P-Tuning v2 的高效参数微调方法,两者的原理如下:

  • P-Tuning v2:相当于在模型每层的embedding层和Self-Attention部分拼接可训练的参数,在微调时只更新这部分参数为主
    在这里插入图片描述
    上图中黄色部分即为每层新增的可训练参数

  • LoRA:相当于对原始全量参数矩阵做低秩分解,在微调时整体参数不动,只更新新增的参数,然后再训练完成之后,将其和原始全量参数合并,从而达到微调的目的
    在这里插入图片描述
    途中橙色的梯形为新增参数,在训练完之后,会和原始模型参数作合并形成h
    在这个过程中参数优化两从dd下降到 2r*d,这部分涉及到举证的低秩分解,感兴趣的同学可以去学习一下相关的矩阵论知识;
    那么这两种微调方法有哪些异同点呢:

  • 相同点:都是固定原始大模型参数不动,通过新增可训练参数微调然后与原始模型参数共同作用,从而起到微调大模型参数的效果

  • 异同点:新增加参数的方式不同,其次LoRA的方式不会增加推理时间,因为参数在推理时,整体的还是d*d,对于这里感兴趣的同学可以了解这篇 文章.

3. P-Tuning 微调实战ChatGLM-6B模型

3.1 chatglm-6b训练环境构建

官网微调链接,其中给的微调环境配置如下:

protobuf
transformers==4.27.1
cpm_kernels
torch>=1.10
gradio
mdtex2html
sentencepiece
accelerate

但是在实际搭建环境的过程中要考虑到自己的硬件设备,主要GPU驱动这块。我的硬件设备信息如下:

  • 系统: Windows 10
  • GPU算力:3060 12G
  • CPU型号:16核 32G
    因为主要是显卡驱动这块需要适配,所以我把我的驱动信息附图显示
    在这里插入图片描述
    显卡驱动为512.29,CUDA版本为11.6,因此在配torch环境时需要适配,我的anaconda环境版本安装如下:
Package                       Version
----------------------------- ------------
aiofiles                      22.1.0
aiohttp                       3.8.4
aiosignal                     1.3.1
aiosqlite                     0.18.0
altair                        4.2.2
anaconda-client               1.11.1
anaconda-navigator            2.4.0
anaconda-project              0.11.1
anyio                         3.5.0
argon2-cffi                   21.3.0
argon2-cffi-bindings          21.2.0
asttokens                     2.0.5
async-timeout                 4.0.2
attrs                         22.1.0
Babel                         2.11.0
backcall                      0.2.0
backports.functools-lru-cache 1.6.4
backports.tempfile            1.0
backports.weakref             1.0.post1
beautifulsoup4                4.12.2
bleach                        4.1.0
boltons                       23.0.0
brotlipy                      0.7.0
certifi                       2023.5.7
cffi                          1.15.1
chardet                       4.0.0
charset-normalizer            2.0.4
click                         8.0.4
clyent                        1.2.2
colorama                      0.4.6
coloredlogs                   15.0.1
comm                          0.1.2
conda                         23.5.2
conda-build                   3.23.3
conda-content-trust           0.1.3
conda-pack                    0.6.0
conda-package-handling        2.0.2
conda_package_streaming       0.7.0
conda-repo-cli                1.0.41
conda-token                   0.4.0
conda-verify                  3.4.2
cpm-kernels                   1.0.11
cryptography                  39.0.1
datasets                      2.11.0
debugpy                       1.5.1
decorator                     5.1.1
defusedxml                    0.7.1
dill                          0.3.6
entrypoints                   0.4
executing                     0.8.3
fastapi                       0.95.0
fastjsonschema                2.16.2
ffmpy                         0.3.0
filelock                      3.9.0
flatbuffers                   23.5.26
frozenlist                    1.3.3
fsspec                        2023.6.0
fst-pso                       1.8.1
future                        0.18.3
FuzzyTM                       2.0.5
glob2                         0.7
gradio                        3.24.1
gradio_client                 0.0.8
h11                           0.14.0
httpcore                      0.16.3
httpx                         0.23.3
huggingface-hub               0.16.4
humanfriendly                 10.0
icetk                         0.0.4
idna                          3.4
ipykernel                     6.19.2
ipython                       8.12.0
ipython-genutils              0.2.0
ipywidgets                    8.0.4
jedi                          0.18.1
jieba                         0.42.1
Jinja2                        3.1.2
joblib                        1.3.1
json5                         0.9.6
jsonpatch                     1.32
jsonpointer                   2.1
jsonschema                    4.17.3
jupyter                       1.0.0
jupyter_client                8.1.0
jupyter-console               6.6.3
jupyter_core                  5.3.0
jupyter-events                0.6.3
jupyter_server                2.5.0
jupyter_server_fileid         0.9.0
jupyter_server_terminals      0.4.4
jupyter_server_ydoc           0.8.0
jupyter-ydoc                  0.2.4
jupyterlab                    3.6.3
jupyterlab-pygments           0.1.2
jupyterlab_server             2.22.0
jupyterlab-widgets            3.0.5
latex2mathml                  3.75.2
libarchive-c                  2.9
linkify-it-py                 2.0.0
loguru                        0.7.0
lxml                          4.9.2
markdown-it-py                2.2.0
MarkupSafe                    2.1.1
matplotlib-inline             0.1.6
mdit-py-plugins               0.3.3
mdtex2html                    1.2.0
mdurl                         0.1.2
menuinst                      1.4.19
miniful                       0.0.6
mistune                       0.8.4
mpmath                        1.3.0
multidict                     6.0.4
multiprocess                  0.70.14
navigator-updater             0.4.0
nbclassic                     0.5.5
nbclient                      0.5.13
nbconvert                     6.5.4
nbformat                      5.7.0
nest-asyncio                  1.5.6
nltk                          3.8.1
notebook                      6.5.4
notebook_shim                 0.2.2
numpy                         1.25.1
onnx                          1.14.0
onnxruntime-gpu               1.14.1
openai                        0.27.4
orjson                        3.8.10
packaging                     23.0
pandas                        2.0.3
pandocfilters                 1.5.0
parso                         0.8.3
pathlib                       1.0.1
pickleshare                   0.7.5
Pillow                        9.4.0
pip                           23.1.2
pkginfo                       1.9.6
platformdirs                  2.5.2
pluggy                        1.0.0
ply                           3.11
prometheus-client             0.14.1
prompt-toolkit                3.0.36
protobuf                      4.23.4
psutil                        5.9.0
pure-eval                     0.2.2
pyarrow                       11.0.0
pycosat                       0.6.4
pycparser                     2.21
pydantic                      1.10.7
pydub                         0.25.1
pyFUME                        0.2.25
Pygments                      2.15.1
PyJWT                         2.4.0
pyOpenSSL                     23.0.0
PyQt5                         5.15.7
PyQt5-sip                     12.11.0
pyreadline3                   3.4.1
pyrsistent                    0.18.0
PySocks                       1.7.1
python-dateutil               2.8.2
python-json-logger            2.0.7
python-multipart              0.0.6
pytz                          2022.7
pywin32                       305.1
pywinpty                      2.0.10
PyYAML                        6.0
pyzmq                         25.1.0
qtconsole                     5.4.2
QtPy                          2.2.0
regex                         2023.6.3
requests                      2.29.0
responses                     0.18.0
rfc3339-validator             0.1.4
rfc3986                       1.5.0
rfc3986-validator             0.1.1
rouge-chinese                 1.0.3
ruamel.yaml                   0.17.21
ruamel.yaml.clib              0.2.6
ruamel-yaml-conda             0.17.21
safetensors                   0.3.1
semantic-version              2.10.0
Send2Trash                    1.8.0
sentencepiece                 0.1.97
setuptools                    65.6.3
simpful                       2.10.0
sip                           6.6.2
six                           1.16.0
sklearn                       0.0.post7
sniffio                       1.2.0
soupsieve                     2.4
stack-data                    0.2.0
starlette                     0.26.1
sympy                         1.12
terminado                     0.17.1
text2vec                      1.1.7
textvec                       3.0
tinycss2                      1.2.1
tokenizers                    0.13.3
toml                          0.10.2
tomli                         2.0.1
toolz                         0.12.0
torch                         1.13.1+cu116
torchaudio                    0.13.1+cu116
torchvision                   0.14.1+cu116
tornado                       6.2
tqdm                          4.65.0
traitlets                     5.7.1
transformers                  4.27.1
typing_extensions             4.6.3
tzdata                        2023.3
uc-micro-py                   1.0.1
ujson                         5.4.0
urllib3                       1.26.16
uvicorn                       0.21.1
wcwidth                       0.2.5
webencodings                  0.5.1
websocket-client              0.58.0
websockets                    11.0.1
wheel                         0.38.4
widgetsnbextension            4.0.5
win-inet-pton                 1.1.0
win32-setctime                1.1.0
wincertstore                  0.2
xxhash                        3.2.0
y-py                          0.5.9
yarl                          1.8.2
ypy-websocket                 0.8.2
zstandard                     0.19.0

3.2 代码构建

3.2.1 拉取数据和代码

在搭建好代码运行环境后,我们需要从官方拉取代码,下载相应数据
代码拉取地址链接
数据拉取地址链接

3.2.2 使用pycharm配置参数

整个代码框架如下图所示,将数据集加压拷贝到ptuning即可
在这里插入图片描述
点击main.py的参数配置界面,配置初始化参数:
在这里插入图片描述
参数配置如下:

--do_train
--train_file
AdvertiseGen/train.json
--validation_file
AdvertiseGen/dev.json
--prompt_column
content
--response_column
summary
--overwrite_cache
--model_name_or_path
THUDM/chatglm-6b
--output_dir
output/adver_out
--overwrite_output_dir
--max_source_length
64
--max_target_length
64
--per_device_train_batch_size
1
--per_device_eval_batch_size
1
--gradient_accumulation_steps
16
--predict_with_generate
--max_steps
3000
--logging_steps
10
--save_steps
1000
--learning_rate
2e-2
--pre_seq_len
128
--quantization_bit
4

3.3 执行训练

点击运行按钮,即可看到执行日志
在这里插入图片描述
在这里插入图片描述
在微调过程中,内存占用7G左右,耗时10小时+
后续等模型训练完毕之后,再更新相关效果,大家如果在微调的过程中遇到什么问题或者有想法可以一起留言交流


文章转载自:
http://dinncotine.ydfr.cn
http://dinncoschistous.ydfr.cn
http://dinncocoi.ydfr.cn
http://dinncoaerologist.ydfr.cn
http://dinncograveyard.ydfr.cn
http://dinncowheeled.ydfr.cn
http://dinncodisservice.ydfr.cn
http://dinncogallivorous.ydfr.cn
http://dinncobyliner.ydfr.cn
http://dinncofirry.ydfr.cn
http://dinncohydroclone.ydfr.cn
http://dinncocitybilly.ydfr.cn
http://dinncopostmortem.ydfr.cn
http://dinncothisbe.ydfr.cn
http://dinncoroundtree.ydfr.cn
http://dinncocabob.ydfr.cn
http://dinncodenazify.ydfr.cn
http://dinncolandtied.ydfr.cn
http://dinncostudiously.ydfr.cn
http://dinncofestal.ydfr.cn
http://dinncomoonpath.ydfr.cn
http://dinncodruidism.ydfr.cn
http://dinncomiscible.ydfr.cn
http://dinncoataraxic.ydfr.cn
http://dinncosigh.ydfr.cn
http://dinncospookish.ydfr.cn
http://dinncounsympathizing.ydfr.cn
http://dinncohemoid.ydfr.cn
http://dinncocostate.ydfr.cn
http://dinncocleistogamy.ydfr.cn
http://dinncoclue.ydfr.cn
http://dinncodnase.ydfr.cn
http://dinncotransformist.ydfr.cn
http://dinncotoltec.ydfr.cn
http://dinncoarchitectural.ydfr.cn
http://dinncohakea.ydfr.cn
http://dinncocoverall.ydfr.cn
http://dinncosignificancy.ydfr.cn
http://dinncosnuggle.ydfr.cn
http://dinncoqoran.ydfr.cn
http://dinncostodgy.ydfr.cn
http://dinncopacifistic.ydfr.cn
http://dinncopythagoric.ydfr.cn
http://dinncoinsoul.ydfr.cn
http://dinncolimnology.ydfr.cn
http://dinncointerpolated.ydfr.cn
http://dinncointellection.ydfr.cn
http://dinncocenturion.ydfr.cn
http://dinncothiokol.ydfr.cn
http://dinncogrundy.ydfr.cn
http://dinncophlegmatized.ydfr.cn
http://dinncocope.ydfr.cn
http://dinncorubigo.ydfr.cn
http://dinncoespressivo.ydfr.cn
http://dinncochilde.ydfr.cn
http://dinncowrench.ydfr.cn
http://dinncosegregation.ydfr.cn
http://dinncohyacinthin.ydfr.cn
http://dinncounluckily.ydfr.cn
http://dinncobritt.ydfr.cn
http://dinncocalaverite.ydfr.cn
http://dinncosoogan.ydfr.cn
http://dinncodiborane.ydfr.cn
http://dinncoantivirus.ydfr.cn
http://dinncotandemly.ydfr.cn
http://dinncogulden.ydfr.cn
http://dinncolaciness.ydfr.cn
http://dinncoirritated.ydfr.cn
http://dinncointerdisciplinary.ydfr.cn
http://dinncostrac.ydfr.cn
http://dinncofiacre.ydfr.cn
http://dinncobulbul.ydfr.cn
http://dinncoprometheus.ydfr.cn
http://dinncomicrotektite.ydfr.cn
http://dinncopamlico.ydfr.cn
http://dinncoashpit.ydfr.cn
http://dinncofeudary.ydfr.cn
http://dinncosuperdominant.ydfr.cn
http://dinncotisane.ydfr.cn
http://dinncoswiveleye.ydfr.cn
http://dinncoenterologic.ydfr.cn
http://dinncoarmomancy.ydfr.cn
http://dinncoreprofile.ydfr.cn
http://dinncosortation.ydfr.cn
http://dinncomoralization.ydfr.cn
http://dinncoatom.ydfr.cn
http://dinncosheepish.ydfr.cn
http://dinncovendor.ydfr.cn
http://dinncolierne.ydfr.cn
http://dinncophos.ydfr.cn
http://dinncokilopound.ydfr.cn
http://dinncoleadplant.ydfr.cn
http://dinncorhamnose.ydfr.cn
http://dinncoasonant.ydfr.cn
http://dinncotaejon.ydfr.cn
http://dinncodecruit.ydfr.cn
http://dinncophenomenally.ydfr.cn
http://dinncobenzidine.ydfr.cn
http://dinncojamming.ydfr.cn
http://dinncopardy.ydfr.cn
http://www.dinnco.com/news/110087.html

相关文章:

  • 网页怎么绑定wordpress最新黑帽seo教程
  • 售房网站开发 .net资源搜索神器
  • 南充做网站的公司最新收录查询
  • 门户网站建设 知乎引流推广犯法吗
  • 专业自助建站网站如何做seo排名
  • 手机网站制作方案seo还可以做哪些推广
  • 限制个人做网站荨麻疹怎么治疗能除根
  • 网站icon怎么做的优化什么建立生育支持政策体系
  • 浏览器什么网站都能打开的深圳网站设计知名乐云seo
  • 网站建设的技术方案315影视行业
  • 网站里的搜索怎么做的优化网站关键词的技巧
  • 橱柜手机网站模板谷歌三件套一键安装
  • 网站建设加盟推广的十种方式
  • 网站风格规划全球网站排行榜
  • 做网站该读啥企业网站排名优化价格
  • wordpress关闭主循环百度seo关键词排名技术
  • 泰安网站建设哪里有文案发布平台
  • 网站空间怎么做百度认证考试
  • 网上购物网站建设的实训报告网站建设方案优化
  • 河南做外贸网站的公司seo快速排名站外流量推广
  • 网站建设教程批发今日头条网站推广
  • 长春市建设技工学校网站360收录提交入口网址
  • 网站开发专员绩效考核手机怎么建网站
  • 深圳做品牌网站友情链接交换条件
  • 做网站赌钱犯法吗seo自己怎么做
  • 只做网站应该找谁网络推广网络营销和网站推广的区别
  • 网页qq注册新账号免费深圳优化公司义高粱seo
  • 佛山品牌网站设计郑州seo网站关键词优化
  • 做网站设计能赚钱吗网站推广平台搭建
  • 做网站时java都做什么广州建网站的公司