国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

第七篇-Tesla P40+ChatGLM2+P-Tuning

這篇具有很好參考價(jià)值的文章主要介紹了第七篇-Tesla P40+ChatGLM2+P-Tuning。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

本文目的

本文僅僅是測試一下ptuning技術(shù)方案,使用少量數(shù)據(jù)測試下微調(diào)流程

環(huán)境

  系統(tǒng):CentOS-7
  CPU: 14C28T
  顯卡:Tesla P40 24G
  驅(qū)動(dòng): 515
  CUDA: 11.7
  cuDNN: 8.9.2.26

模型文件

https://huggingface.co/THUDM/chatglm2-6b
下載模型相關(guān)文件到自己目錄
我的是/models/chatglm2-6b

[root@ai-server chatglm2-6b]# pwd
/models/chatglm2-6b
[root@ai-server chatglm2-6b]# ll -h
total 12G
-rw-r--r--. 1 root root   678 Jul 29 09:30 cli.py
-rw-r--r--. 1 root root  1.2K Jul 29 09:30 config.json
-rw-r--r--. 1 root root  2.2K Jul 29 09:30 configuration_chatglm.py
-rw-r--r--. 1 root root   50K Jul 29 09:30 modeling_chatglm.py
-rw-r--r--. 1 root root  4.1K Jul 29 09:30 MODEL_LICENSE.txt
-rw-r--r--. 1 root root  1.8G Jul 29 09:33 pytorch_model-00001-of-00007.bin
-rw-r--r--. 1 root root  1.9G Jul 29 09:33 pytorch_model-00002-of-00007.bin
-rw-r--r--. 1 root root  1.8G Jul 29 09:33 pytorch_model-00003-of-00007.bin
-rw-r--r--. 1 root root  1.7G Jul 29 09:33 pytorch_model-00004-of-00007.bin
-rw-r--r--. 1 root root  1.9G Jul 29 09:33 pytorch_model-00005-of-00007.bin
-rw-r--r--. 1 root root  1.8G Jul 29 09:33 pytorch_model-00006-of-00007.bin
-rw-r--r--. 1 root root 1005M Jul 29 09:32 pytorch_model-00007-of-00007.bin
-rw-r--r--. 1 root root   20K Jul 29 09:30 pytorch_model.bin.index.json
-rw-r--r--. 1 root root   15K Jul 29 09:30 quantization.py
-rw-r--r--. 1 root root   348 Jul 29 09:30 README-env.md
-rw-r--r--. 1 root root  7.9K Jul 29 09:30 README.md
-rw-r--r--. 1 root root  9.9K Jul 29 09:30 tokenization_chatglm.py
-rw-r--r--. 1 root root   244 Jul 29 09:30 tokenizer_config.json
-rw-r--r--. 1 root root  995K Jul 29 09:30 tokenizer.model

創(chuàng)建環(huán)境安

conda create --name glm2 python=3.10
conda activate glm2

下載代碼工程

git clone https://github.com/THUDM/ChatGLM2-6B
cd ChatGLM2-6B

安裝依賴

pip install rouge_chinese nltk jieba datasets  -i https://pypi.tuna.tsinghua.edu.cn/simple

準(zhǔn)備訓(xùn)練數(shù)據(jù)

參考數(shù)據(jù)

data/train.json 文章開頭【自我意識(shí)-訓(xùn)練數(shù)據(jù)train.json】
可以替換【AI小木】【小呂】來構(gòu)建你自己的自我認(rèn)識(shí)數(shù)據(jù)集

一定注意數(shù)據(jù)中格式,符號(hào)中英文等等

data/dev.json
我使用和train.json一致,正式使用是要使用真實(shí)數(shù)據(jù)

調(diào)整代碼

cd ptuning
修改 train.sh
    --train_file data/train.json \
    --validation_file data/dev.json \
    --model_name_or_path /models/chatglm2-6b \
    --max_steps 100 \
    --logging_steps 1 \
    --save_steps 50 \

開始微調(diào)

sh train.sh
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla P40           Off  | 00000000:03:00.0 Off |                    0 |
| N/A   78C    P0   196W / 250W |   7845MiB / 23040MiB |    100%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+


{'train_runtime': 2787.9684, 'train_samples_per_second': 0.574, 'train_steps_per_second': 0.036, 'train_loss': 1.142700309753418, 'epoch': 20.0}                                 
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [46:27<00:00, 27.88s/it]***** train metrics *****
  epoch                    =       20.0
  train_loss               =     1.1427
  train_runtime            = 0:46:27.96
  train_samples            =         80
  train_samples_per_second =      0.574
  train_steps_per_second   =      0.036

train_loss 要小,如果1,2這種未調(diào)出的效果很差

如果調(diào)整了數(shù)據(jù)集,要清理緩存,緩存目錄如下
/root/.cache/huggingface/datasets

驗(yàn)證新模型

output/adgen-chatglm2-6b-pt-128-2e-2/checkpoint-100

命令行驗(yàn)證

vim cli.py

import logging
import os
import sys
import json

import torch
from transformers import AutoConfig, AutoModel, AutoTokenizer

# 載入Tokenizer
tokenizer = AutoTokenizer.from_pretrained("/models/chatglm2-6b", trust_remote_code=True)

config = AutoConfig.from_pretrained("/models/chatglm2-6b", trust_remote_code=True, pre_seq_len=128)
model = AutoModel.from_pretrained("/models/chatglm2-6b", config=config, trust_remote_code=True)
prefix_state_dict = torch.load(os.path.join("./output/adgen-chatglm2-6b-pt-128-2e-2/checkpoint-100", "pytorch_model.bin"))
new_prefix_state_dict = {}
for k, v in prefix_state_dict.items():
    if k.startswith("transformer.prefix_encoder."):
        new_prefix_state_dict[k[len("transformer.prefix_encoder."):]] = v
model.transformer.prefix_encoder.load_state_dict(new_prefix_state_dict)

# 之后根據(jù)需求可以進(jìn)行量化
# Comment out the following line if you don't use quantization
#model = model.quantize(4)
model = model.half().cuda()
model.transformer.prefix_encoder.float()
model = model.eval()

response, history = model.chat(tokenizer, "你是誰", history=[])

print(response)

python cli.py

Web驗(yàn)證

cat web_demo.sh 
PRE_SEQ_LEN=128

CUDA_VISIBLE_DEVICES=0 python3 web_demo.py \
    --model_name_or_path /models/chatglm2-6b \
    --ptuning_checkpoint output/adgen-chatglm2-6b-pt-128-2e-2/checkpoint-100 \
    --pre_seq_len $PRE_SEQ_LEN

注意

web_demo.py
    外網(wǎng)訪問
    demo.queue().launch(share=False, inbrowser=True,server_name='0.0.0.0')
sh web_demo.sh 
http://192.168.0.0:7860/

好,可以體驗(yàn)了文章來源地址http://www.zghlxwxcb.cn/news/detail-636485.html

到了這里,關(guān)于第七篇-Tesla P40+ChatGLM2+P-Tuning的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ChatGLM-6B 部署與 P-Tuning 微調(diào)實(shí)戰(zhàn)-使用Pycharm實(shí)戰(zhàn)

    ChatGLM-6B 部署與 P-Tuning 微調(diào)實(shí)戰(zhàn)-使用Pycharm實(shí)戰(zhàn)

    ChatGLM-6B 是一個(gè)開源的、支持中英雙語的對(duì)話語言模型,基于 General Language Model (GLM) 架構(gòu),具有 62 億參數(shù)。結(jié)合模型量化技術(shù),用戶可以在消費(fèi)級(jí)的顯卡上進(jìn)行本地部署(INT4 量化級(jí)別下最低只需 6GB 顯存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技術(shù),針對(duì)中文問答和對(duì)話進(jìn)行了優(yōu)

    2024年02月15日
    瀏覽(20)
  • LLMs之ChatGLM2:基于ChatGLM Efficient Tuning(微調(diào)工具包)實(shí)現(xiàn)對(duì)ChatGLM2進(jìn)行LoRA微調(diào)(CLI/GUI【text-generation-webui】)并進(jìn)

    LLMs之ChatGLM2:基于ChatGLM Efficient Tuning(微調(diào)工具包)實(shí)現(xiàn)對(duì)ChatGLM2進(jìn)行LoRA微調(diào)(CLI/GUI【text-generation-webui】)并進(jìn)行推理測試圖文教程之詳細(xì)攻略 目錄 1、硬件要求和Python依賴 2、代碼和模型權(quán)重下載 (1)、項(xiàng)目代碼下載

    2024年02月08日
    瀏覽(25)
  • chatglm2-6b在P40上做LORA微調(diào)

    目前,大模型的技術(shù)應(yīng)用已經(jīng)遍地開花。最快的應(yīng)用方式無非是利用自有垂直領(lǐng)域的數(shù)據(jù)進(jìn)行模型微調(diào)。chatglm2-6b在國內(nèi)開源的大模型上,效果比較突出。本文章分享的內(nèi)容是用chatglm2-6b模型在集團(tuán)EA的P40機(jī)器上進(jìn)行垂直領(lǐng)域的LORA微調(diào)。 github: https://github.com/THUDM/ChatGLM2-6B ch

    2024年02月10日
    瀏覽(28)
  • chatglm2-6b在P40上做LORA微調(diào) | 京東云技術(shù)團(tuán)隊(duì)

    chatglm2-6b在P40上做LORA微調(diào) | 京東云技術(shù)團(tuán)隊(duì)

    目前,大模型的技術(shù)應(yīng)用已經(jīng)遍地開花。最快的應(yīng)用方式無非是利用自有垂直領(lǐng)域的數(shù)據(jù)進(jìn)行模型微調(diào)。chatglm2-6b在國內(nèi)開源的大模型上,效果比較突出。本文章分享的內(nèi)容是用chatglm2-6b模型在集團(tuán)EA的P40機(jī)器上進(jìn)行垂直領(lǐng)域的LORA微調(diào)。 github: https://github.com/THUDM/ChatGLM2-6B ch

    2024年02月09日
    瀏覽(29)
  • LLMs:LLaMA Efficient Tuning(一款可高效微調(diào)【全參數(shù)/LoRA/QLoRA】主流大模型【ChatGLM2/LLaMA2/Baichuan等】的高效工具【預(yù)訓(xùn)練+指令監(jiān)督微調(diào)+

    LLMs:LLaMA Efficient Tuning(一款可高效微調(diào)【全參數(shù)/LoRA/QLoRA】主流大模型【ChatGLM2/LLaMA2/Baichuan等】的高效工具【預(yù)訓(xùn)練+指令監(jiān)督微調(diào)+

    LLMs:LLaMA Efficient Tuning(一款可高效微調(diào)【全參數(shù)/LoRA/QLoRA】主流大模型【ChatGLM-2/LLaMA-2/Baichuan等】的高效工具【預(yù)訓(xùn)練+指令監(jiān)督微調(diào)+獎(jiǎng)勵(lì)模型訓(xùn)練+PPO 訓(xùn)練+DPO 訓(xùn)練】)的簡介、安裝、使用方法之詳細(xì)攻略 目錄 相關(guān)文章 LLMs之ChatGLM:ChatGLM Efficient Tuning(一款高效微調(diào)ChatGLM-6B/Ch

    2024年02月09日
    瀏覽(33)
  • [論文筆記]P-tuning

    今天帶來第四篇大模型微調(diào)的論文筆記GPT Understands, Too。 本篇工作提出的方法是P-tuning,使用可訓(xùn)練的連續(xù)提示嵌入,使GPT在NLU上表現(xiàn)比傳統(tǒng)的全量微調(diào)的GPT更好的效果。P-tuning還提高了BERT在少樣本和監(jiān)督設(shè)定下的性能,大幅減少了提示工程的需求。 根據(jù)訓(xùn)練目標(biāo),預(yù)訓(xùn)練語

    2024年02月07日
    瀏覽(16)
  • [論文閱讀筆記75]P-Tuning v2

    [論文閱讀筆記75]P-Tuning v2

    題目 論文作者與單位 來源 年份 P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks Xiao Liu等Tsinghua University 清華大學(xué) 2021 Citations, References 論文鏈接:https://arxiv.org/pdf/2110.07602.pdf [1] Liu X , Ji K , Fu Y , et al. P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Unive

    2024年02月16日
    瀏覽(19)
  • LLM微調(diào) | Prefix-Tuning, Prompt-Tuning, P-tuning, P-tuning-v2

    ?? 下面我只是分析講解下這些方法的原理以及具體代碼是怎么實(shí)現(xiàn)的,不對(duì)效果進(jìn)行評(píng)價(jià),畢竟不同任務(wù)不同數(shù)據(jù)集效果差別還是挺大的。 hard prompt (離散):即人類寫的自然語言式的prompt。 soft prompt (連續(xù)):可訓(xùn)練的權(quán)重,可以理解為偽prompt。【畢竟nn是連續(xù)的模型,在連續(xù)

    2024年02月14日
    瀏覽(50)
  • [論文閱讀筆記76]GPT Understands, Too(P-tuning)

    [論文閱讀筆記76]GPT Understands, Too(P-tuning)

    題目 論文作者與單位 來源 年份 GPT Understands, Too 清華大學(xué) Citations, References 論文鏈接:https://arxiv.org/pdf/2103.10385.pdf 論文代碼: 研究主題 問題背景 核心方法流程 亮點(diǎn) 數(shù)據(jù)集 結(jié)論 論文類型 微調(diào)大模型 采用傳統(tǒng)微調(diào)的gpt在自然語言理解(NLU)方面未能取得良好的效果

    2024年02月09日
    瀏覽(19)
  • Tesla M40 使用分享

    Tesla M40 使用分享

    這是在咸魚上花800元購買的的M40 12G顯卡進(jìn)行深度學(xué)習(xí)的使用說明(時(shí)間節(jié)點(diǎn)2022.1) 注意這里使用的Tesla顯卡是專門的計(jì)算卡,所以沒有視頻輸出接口,網(wǎng)上查到的資料說可以有兩種使用方法,一是使用核心輸出;二是使用另一張quadro亮機(jī)卡的雙卡輸出模式。 注意安裝M40等大于

    2024年02月05日
    瀏覽(15)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包