日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

最近ChatGPT很火,但是用起來需要翻墻,國內也有很多模型,什么百度的文心一言、阿里的盤古、還有科大訊飛的模型等等,那么今天我們就來介紹下怎么在本地自己部署自己的聊天模型,也可以學習很多知識。

一、開源模型

1、ChatGLM-6B介紹

  • 清華大學知識工程 (KEG) 實驗室和智譜AI公司與于2023年共同訓練的語言模型;ChatGLM-6B 參考了 ChatGPT 的設計思路,在千 億基座模型 GLM-130B 中注入了代碼預訓練,通過有監督微調等技術實現與人類意圖對齊(即讓機 器的回答符合人類的期望和價值觀);
  • ChatGLM-6B 是一個開源的、支持中英雙語的對話語言模型,基于 General Language Model (GLM) 架構,具有 62 億參數;
  • 結合模型量化技術,用戶可以在消費級的顯卡上進行本地部署(INT4 量化級別下最低只需 6GB 顯存); 
  • ChatGLM-6B 使用了和 ChatGPT 相似的技術,針對中文問答和對話進行了優化。經過約 1T 標識符的中英雙語訓練,輔以監督微調、反饋自助、人類反饋強化學習等技術的加持,62 億參數的 ChatGLM-6B 已經能生成相當符合人類偏好的回答;

2、ChatGLM-6B 有如下特點

  • 充分的中英雙語預訓練: ChatGLM-6B 在 1:1 比例的中英語料上訓練了 1T 的 token 量,兼具雙語能力;
  • 優化的模型架構和大小: 吸取 GLM-130B 訓練經驗,修正了二維 RoPE 位置編碼實現,使用傳統FFN結構。6B(62億)的參數大小,也使得研究者和個人開發者自己微調和部署 ChatGLM-6B 成為可能;
  • 較低的部署門檻: FP16 半精度下,ChatGLM-6B 需要至少 13GB 的顯存進行推理,結合模型量化技術,這一需求可以進一步降低到 10GB(INT8) 和 6GB(INT4), 使得 ChatGLM-6B 可以部署在消費級顯卡上;
  • 更長的序列長度: 相比 GLM-10B(序列長度1024),ChatGLM-6B 序列長度達 2048,支持更長對話和應用;
  • 人類意圖對齊訓練: 使用了監督微調(Supervised Fine-Tuning)、反饋自助(Feedback Bootstrap)、人類反饋強化學習(Reinforcement Learning from Human Feedback) 等方式,使模型初具理解人類指令意圖的能力。輸出格式為 markdown,方便展示;因此,ChatGLM-6B 具備了一定條件下較好的對話與問答能力;

3、ChatGLM-6B 也有相當多已知的局限和不足

  • 模型容量較小: 6B 的小容量,決定了其相對較弱的模型記憶和語言能力;在面對許多事實性知識任務時,ChatGLM-6B 可能會生成不正確的信息;
  • 她也不擅長邏輯類問題(如數學、編程)的解答;
  • 可能會產生有害說明或有偏見的內容:ChatGLM-6B 只是一個初步與人類意圖對齊的語言模型,可能會生成有害、有偏見的內容;
  • 較弱的多輪對話能力:ChatGLM-6B 的上下文理解能力還不夠充分,在面對長答案生成,以及多輪對話的場景時,可能會出現上下文丟失和理解錯誤的情況;
  • 英文能力不足:訓練時使用的指示大部分都是中文的,只有一小部分指示是英文的。因此在使用英文指示時,回復的質量可能不如中文指示的回復,甚至與中文指示下的回復矛盾;
  • 易被誤導:ChatGLM-6B 的“自我認知”可能存在問題,很容易被誤導并產生錯誤的言論。例如當前版本模型在被誤導的情況下,會在自我認知上發生偏差。即使該模型經過了1萬億標識符(token)左右的雙語預訓練,并且進行了指令微調和人類反饋強化學習(RLHF),但是因為模型容量較小,所以在某些指示下可能會產生有誤導性的內容;

 

 

圖片

 

二、系統部署

1、硬件需求

圖片

2、系統環境

操作系統:centos 7.6/Ubuntu (內存:32G)

顯卡配置: 2x NVIDIA Gefore 3070Ti 8G (共16G顯存)

Python/ target=_blank class=infotextkey>Python 3.8.13 (版本不要高于3.10,否則有些依賴無法下載,像paddlepaddle 2.4.2在高版本Python還不支持)

# 安裝Python3.8所需依賴
sudo yum -y install gcc zlib zlib-devel openssl-devel
# 下載源碼
wget https://www.python.org/ftp/python/3.8.13/Python-3.8.13.tgz
# 解壓縮
tar -zxvf Python-3.8.13.tgz
# 編譯配置,注意:不要加 --enable-optimizations 參數
./configure --prefix=/usr/local/python3
# 編譯并安裝
make && make install

3、部署ChatGLM 6B

3.1 下載源碼

直接下載chatGLM-6B  https://Github.com/THUDM/ChatGLM-6B

git下載  git clone https://github.com/THUDM/ChatGLM-6B

3.2 安裝依賴

進入ChatGLM-6B目錄

使用 pip 安裝依賴:pip install -r requirements.txt,其中 transformers 庫版本推薦為 4.27.1,但理論上不低于 4.23.1 即可。

此外,如果需要在 cpu 上運行量化后的模型,還需要安裝 gcc 與 openmp。多數 linux 發行版默認已安裝。對于 windows ,可在安裝 TDM-GCC 時勾選 openmp。 Windows 測試環境 gcc 版本為 TDM-GCC 10.3.0, Linux 為 gcc 11.3.0

3.3 下載模型

從 Hugging Face Hub 下載

可以手動下載https://huggingface.co/THUDM/chatglm-6b/tree/main

git下載 git clone https://huggingface.co/THUDM/chatglm-6b

將模型下載到本地之后,將以上代碼中的 THUDM/chatglm-6b 替換為你本地的 chatglm-6b 文件夾的路徑,即可從本地加載模型;

在chatglm-6b文件下創建一個model文件夾放模型文件

3.4 代碼調用

可以通過如下代碼調用 ChatGLM-6B 模型來生成對話:

模型的實現仍然處在變動中。如果希望固定使用的模型實現以保證兼容性,可以在 from_pretrained 的調用中增加 revisinotallow="v1.1.0" 參數。

>>> from transformers import AutoTokenizer, AutoModel
>>> tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", tRust_remote_code=True)
>>> model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
>>> model = model.eval()
>>> response, history = model.chat(tokenizer, "你好", history=[])
>>> print(response)
你好

分享到:
標簽:ChatGPT
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定