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

【chatglm2】使用Python在CPU環(huán)境中運行 chatglm.cpp 可以實現(xiàn)本地使用CPU運行chatglm2模型,速度也特別的快可以本地部署,把現(xiàn)有項目進行AI的改造。

這篇具有很好參考價值的文章主要介紹了【chatglm2】使用Python在CPU環(huán)境中運行 chatglm.cpp 可以實現(xiàn)本地使用CPU運行chatglm2模型,速度也特別的快可以本地部署,把現(xiàn)有項目進行AI的改造。。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1,項目地址

https://github.com/li-plus/chatglm.cpp.git

這個項目和llama.cpp 項目類似,使用C++ 去運行模型的。
項目使用了 ggml 這個核心模塊,去運行的。
可以支持在 cpu 上面跑模型。

ChatGLM2-6B 是開源中英雙語對話模型 ChatGLM-6B 的第二代版本,在保留了初代模型對話流暢、部署門檻較低等眾多優(yōu)秀特性的基礎之上,ChatGLM2-6B 引入了如下新特性:

更強大的性能: 基于 ChatGLM 初代模型的開發(fā)經(jīng)驗,我們?nèi)嫔壛?ChatGLM2-6B 的基座模型。ChatGLM2-6B 使用了 GLM 的混合目標函數(shù),經(jīng)過了 1.4T 中英標識符的預訓練與人類偏好對齊訓練,評測結果顯示,相比于初代模型,ChatGLM2-6B 在 MMLU(+23%)、CEval(+33%)、GSM8K(+571%) 、BBH(+60%)等數(shù)據(jù)集上的性能取得了大幅度的提升,在同尺寸開源模型中具有較強的競爭力。
更長的上下文: 基于 FlashAttention 技術,我們將基座模型的上下文長度(Context Length)由 ChatGLM-6B 的 2K 擴展到了 32K,并在對話階段使用 8K 的上下文長度訓練,允許更多輪次的對話。但當前版本的 ChatGLM2-6B 對單輪超長文檔的理解能力有限,我們會在后續(xù)迭代升級中著重進行優(yōu)化。
更高效的推理: 基于 Multi-Query Attention 技術,ChatGLM2-6B 有更高效的推理速度和更低的顯存占用:在官方的模型實現(xiàn)下,推理速度相比初代提升了 42%,INT4 量化下,6G 顯存支持的對話長度由 1K 提升到了 8K。

2,準備環(huán)境,使用python的docker進行安裝

下載代碼:

git clone --recursive https://github.com/li-plus/chatglm.cpp.git

要是超時可以分開下載:

git clone  https://github.com/li-plus/chatglm.cpp.git
cd chatglm.cpp/third_party

git clone https://github.com/ggerganov/ggml.git
git clone https://github.com/pybind/pybind11.git
git clone https://github.com/google/sentencepiece.git

要是網(wǎng)絡不好可以這樣下載,速度也快:

git clone  https://ghproxy.com/https://github.com/li-plus/chatglm.cpp.git
cd chatglm.cpp/third_party

git clone https://ghproxy.com/https://github.com/ggerganov/ggml.git
git clone https://ghproxy.com/https://github.com/pybind/pybind11.git
git clone https://ghproxy.com/https://github.com/google/sentencepiece.git

然后運行docker 并配置python 的源:

docker run -itd --name python -p 8000:8000 -p 7860:7860 -v `pwd`/chatglm.cpp:/data python:slim-bullseye

docker exec -it python bash

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com/pypi/simple/
 

echo "deb https://mirrors.aliyun.com/debian/ bullseye main contrib non-free" > /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian/ bullseye-updates main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian/ bullseye-backports main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian-security/ bullseye-security main" >> /etc/apt/sources.list 

3,安裝依賴包,使用特殊命令安裝pytorch的cpu版本

只安裝 cpu 版本的 pytorch ,可以減少鏡像大小。
特別注意pytorch2.0 只支持 3.10 的最低版本,其他版本安裝不上。

apt-get update && apt-get -y install g++ cmake

# 只是安裝 cpu 的版本:
pip3 install torch==2.0.1+cpu torchvision==0.15.2+cpu torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cpu


pip3 install uvicorn fastapi==0.92.0 sse_starlette chatglm-cpp tabulate tqdm gradio transformers==4.30.2

4,進行模型轉(zhuǎn)換,把chatglm2-6b模型轉(zhuǎn)換下

需要下載模型,安裝git-lfs 把模型下載即可

cd /data
apt-get install git-lfs
# 下載模型
git clone https://huggingface.co/THUDM/chatglm2-6b-int4

# 然后就可以轉(zhuǎn)換模型了,chatglm2-6b-int4 是下載的模型文件夾
python3 convert.py -i chatglm2-6b-int4 -t q4_0 -o chatglm2-ggml.bin

# 稍等下,如果沒有報錯信息,說明轉(zhuǎn)換成功。會有個  chatglm2-ggml.bin 文件

3.3G  chatglm-ggml.bin # 說明轉(zhuǎn)換成了。

ChatGLM2-6B,各種尺寸的模型,需要消耗的資源:

Q4_0 Q4_1 Q5_0 Q5_1 Q8_0 F16 F32
ms/token (CPU @ Platinum 8260) 64 71 79 83 106 189 372
ms/token (CUDA @ V100 SXM2) 9.7 9.4 10.3 10.2 14.0 19.1 33.0
ms/token (MPS @ M2 Ultra) 11.0 11.7 N/A N/A N/A 32.1 N/A
file size 3.3GB 3.7GB 4.0GB 4.4GB 6.2GB 12GB 24GB
mem usage 3.4GB 3.8GB 4.1GB 4.5GB 6.2GB 12GB 23GB

5,啟動web demo 界面,啟動api 接口

需要修改下 web_demo.py 的最后一行:
因為是docker 做端口映射,需要把 IP 修改成 0.0.0.0 本機就可以訪問了。


demo.queue().launch(share=False, inbrowser=True,server_name="0.0.0.0", server_port=7860)
cd /data/examples
python3 web_demo.py 

Running on local URL:  http://0.0.0.0:7860
To create a public link, set `share=True` in `launch()`.

【chatglm2】使用Python在CPU環(huán)境中運行 chatglm.cpp 可以實現(xiàn)本地使用CPU運行chatglm2模型,速度也特別的快可以本地部署,把現(xiàn)有項目進行AI的改造。,chatgpt,python,人工智能,開發(fā)語言

如果沒有報錯,說明啟動成功了,端口是7860 ,直接通過web訪問即可。

啟動 api 接口:

python3 api_demo.py 
INFO:     Started server process [5843]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

執(zhí)行命令測試接口,和chatgpt 的接口是一樣的。

curl http://127.0.0.1:8000/v1/completions -H 'Content-Type: application/json' -d '{"prompt": "你好"}'
{
    "object":"text_completion",
    "response":"你好??!我是人工智能助手 ChatGLM2-6B,很高興見到你,歡迎問我任何問題。",
    "model":"chatglm2-6b",
    "choices":[
        {
            "text":"你好??!我是人工智能助手 ChatGLM2-6B,很高興見到你,歡迎問我任何問題。",
            "index":0,
            "finish_reason":"stop"
        }
    ],
    "usage":{

    }
}

6,使用docker 把鏡像的運行打包,在CPU下運行環(huán)境搭建

dockerfile

# 構建 python 
# FROM python:slim-bullseye 使用最新的slim 版本。
# docker build . -t chatglm.cpp:latest
FROM python:slim-bullseye as builder


RUN echo "deb https://mirrors.aliyun.com/debian/ bullseye main contrib non-free" > /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian/ bullseye-updates main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian/ bullseye-backports main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.aliyun.com/debian-security/ bullseye-security main" >> /etc/apt/sources.list && \
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/  && \
pip config set install.trusted-host mirrors.aliyun.com/pypi/simple/

RUN apt-get update && apt-get -y install g++ cmake && \
 pip3 install torch==2.0.1+cpu torchvision==0.15.2+cpu torchaudio==2.0.2 \
 --index-url https://download.pytorch.org/whl/cpu && \
 pip3 install uvicorn fastapi==0.92.0 sse_starlette chatglm-cpp tabulate tqdm gradio transformers==4.30.2

# 拷貝本地文件到目錄
COPY . /data

# service
FROM python:slim-bullseye

# 直接使用基礎鏡像然后拷貝 site-packages 安裝包即可。
COPY --from=builder /data/examples /data/examples
COPY --from=builder /usr/local/lib/python3.11/site-packages /usr/local/lib/python3.11/site-packages


WORKDIR /data
# 設置python 的環(huán)境變量和 fask app文件。
ENV LC_ALL="C.UTF-8" LANG="C.UTF-8"
ENV PYTHONPATH="/data"

EXPOSE 8000 7860

ENTRYPOINT ["/data/examples/docker-entrypoint.sh"]

CMD ["/bin/sh"]

其中啟動腳本 docker-entrypoint.sh 是:

#!/bin/sh

ls -lh

echo "############# start python3 web_demo.py #############"
cd /data/examples
python3 web_demo.py
sleep 99999d

執(zhí)行打包命令:

docker build . -t chatglm.cpp:latest

然后就可以啟動了,必須注意不能掛載當前的源代碼文件夾了,否則會報錯:
ModuleNotFoundError: No module named ‘chatglm_cpp._C’
https://github.com/li-plus/chatglm.cpp/issues/91
嘗試下cd到別的路徑下運行,在chatglm.cpp目錄下執(zhí)行,包名會跟倉庫里的chatglm_cpp文件夾沖突

這樣啟動就可以了:

docker run -itd --name chatglm -p 8000:8000 -p 7860:7860 -v `pwd`/chatglm.cpp/chatglm-ggml.bin:/data/chatglm-ggml.bin chatglm.cpp:latest

然后就可以訪問web 界面了。

7,總結

也可以支持英文,但是最后幾個字有點問題。最后有點亂碼,不知道是不是因為模型裁剪的問題。
同時也有可能是原始素材就有這個問題。
【chatglm2】使用Python在CPU環(huán)境中運行 chatglm.cpp 可以實現(xiàn)本地使用CPU運行chatglm2模型,速度也特別的快可以本地部署,把現(xiàn)有項目進行AI的改造。,chatgpt,python,人工智能,開發(fā)語言
可以使用docker 在 CPU上面運行 chatglm ,同時安裝了 pytorch 的CPU 版本,鏡像縮小到 1.5 G了。
并且速度也是非常的快了。可以在非GPU的機器上面運行了。可以解決很多問題呢。文章來源地址http://www.zghlxwxcb.cn/news/detail-721470.html

到了這里,關于【chatglm2】使用Python在CPU環(huán)境中運行 chatglm.cpp 可以實現(xiàn)本地使用CPU運行chatglm2模型,速度也特別的快可以本地部署,把現(xiàn)有項目進行AI的改造。的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領支付寶紅包贊助服務器費用

相關文章

  • Mac(M1Pro)下運行ChatGLM2

    Mac(M1Pro)下運行ChatGLM2

    ? ? ? 最近很多人都嘗試在M1/M2芯片下跑chatglm/chatglm2,結果都不太理想,或者是說要32G內(nèi)存才可以運行。本文使用cpu基于chatglm-cpp運行chatglm2的int4版本。開了多個網(wǎng)頁及應用的情況下(包括chatglm2),總體內(nèi)存占用9G左右。chatglm2可以流暢的運行了。虛擬環(huán)境為python 3.10,使用c

    2024年02月13日
    瀏覽(14)
  • LLMs之ChatGLM2:ChatGLM2-6B本地部署之單機推理(API/CLI/GUI)、低成本部署(GPU量化部署/CPU及其量化部署/Mac部署/多卡部署)、有限資源下高效微調(diào)(全參/P-t

    LLMs之ChatGLM2:ChatGLM2-6B本地部署之單機推理(API/CLI/GUI)、低成本部署(GPU量化部署/CPU及其量化部署/Mac部署/多卡部署)、有限資源下高效微調(diào)(全參/P-tuning v2)、模型評估和推理之圖文教程之詳細攻略 目錄 一、配置基礎環(huán)境及其注意事項 第一步、檢測軟硬件環(huán)境

    2024年02月07日
    瀏覽(29)
  • 基于MacBook Pro M1芯片運行chatglm2-6b大模型

    基于MacBook Pro M1芯片運行chatglm2-6b大模型

    ChatGLM2-6B代碼地址 chatglm2-6b模型地址 Mac M1芯片部署 ChatGLM2-6B 是開源中英雙語對話模型 ChatGLM-6B 的第二代版本,在保留了初代模型對話流暢、部署門檻較低等眾多優(yōu)秀特性的基礎之上,ChatGLM2-6B 引入了如下新特性: 更強大的性能。 更長的上下文。 更高效的推理。 更開放的協(xié)

    2024年01月25日
    瀏覽(23)
  • 使用 CPU 本地安裝部署運行 ChatGLM-6B 獲得自己的專屬 AI 寵物

    ChatGLM-6B 是一個清華開源的、支持中英雙語的對話語言模型,基于GLM架構,具有62億參數(shù)。結合模型量化技術,ChatGLM-6B可以本地安裝部署運行在消費級的顯卡上做模型的推理和訓練(全量僅需14GB顯存,INT4 量化級別下最低只需 6GB 顯存)雖然智商比不過 openAI 的 ChatGPT 模型,但

    2024年02月16日
    瀏覽(29)
  • 在矩池云使用ChatGLM-6B & ChatGLM2-6B

    在矩池云使用ChatGLM-6B & ChatGLM2-6B

    ChatGLM-6B 和 ChatGLM2-6B都是基于 General Language Model (GLM) 架構的對話語言模型,是清華大學 KEG 實驗室和智譜 AI 公司于 2023 年共同發(fā)布的語言模型。模型有 62 億參數(shù),一經(jīng)發(fā)布便受到了開源社區(qū)的歡迎,在中文語義理解和對話生成上有著不凡的表現(xiàn)。 ChatGLM-6B 可以在消費級的顯卡

    2024年02月14日
    瀏覽(18)
  • 清華大學開源ChatGLM2-6B開源模型在anaconda下的虛擬環(huán)境詳細部署及安裝教程

    清華大學開源ChatGLM2-6B開源模型在anaconda下的虛擬環(huán)境詳細部署及安裝教程

    python版本要求:3.8以上 沒有安裝python的沒有關系,我們在下面安裝anaconda中會自動生成python,有了python的建議刪除,通過anaconda安裝python以便于后面創(chuàng)建虛擬環(huán)境。 windows系統(tǒng):Windows 10 以上,推薦N卡(NVIDIA顯卡20系列以上) 注意:處理器為AMD容易報錯,intel的不容易報錯,配

    2024年02月16日
    瀏覽(37)
  • Windows環(huán)境下搭建chatGLM2-6B-int4量化版模型(圖文詳解-成果案例)

    Windows環(huán)境下搭建chatGLM2-6B-int4量化版模型(圖文詳解-成果案例)

    目錄 一、ChatGLM2-6介紹 二、環(huán)境準備 1. 硬件環(huán)境 2. TDM-GCC安裝 3.git安裝 4.Anaconda安裝 三、模型安裝 1.下載ChatGLM2-6b和環(huán)境準備 方式一:git命令 方式二:手動下載? 2.下載預訓練模型 在Hugging Face HUb下載(掛VPN訪問) (1)git命令行下載: (2)手動下載(建議) 3.模型使用(

    2024年03月13日
    瀏覽(48)
  • 使用Triton部署chatglm2-6b模型

    NVIDIA Triton Inference Server是一個針對CPU和GPU進行優(yōu)化的云端和推理的解決方案。 支持的模型類型包括TensorRT、TensorFlow、PyTorch(meta-llama/Llama-2-7b)、Python(chatglm)、ONNX Runtime和OpenVino。 NVIDIA Triton Server是一個高性能的推斷服務器,具有以下特點: 1. 高性能:Triton Server為使用GPU進行推

    2024年02月08日
    瀏覽(20)
  • 【chatgpt】使用docker運行chatglm3,原生支持工具調(diào)用(Function Call)、代碼執(zhí)行(Code Interpreter)和 Agent 任務,可以本地運行啦

    【chatgpt】使用docker運行chatglm3,原生支持工具調(diào)用(Function Call)、代碼執(zhí)行(Code Interpreter)和 Agent 任務,可以本地運行啦

    https://github.com/THUDM/ChatGLM3 介紹 ChatGLM3-6B 是 ChatGLM 系列最新一代的開源模型,在保留了前兩代模型對話流暢、部署門檻低等眾多優(yōu)秀特性的基礎上,ChatGLM3-6B 引入了如下特性: 更強大的基礎模型: ChatGLM3-6B 的基礎模型 ChatGLM3-6B-Base 采用了更多樣的訓練數(shù)據(jù)、更充分的訓練步數(shù)

    2024年02月05日
    瀏覽(18)
  • 關于大模型ChatGLM3-6B在CPU下運行

    關于大模型ChatGLM3-6B在CPU下運行

    ????????最近在調(diào)研市場上語言大模型,為公司的產(chǎn)品上虛擬人的推出做準備。各廠提供語言模型都很豐富,使用上也很方便,有API接口可以調(diào)用。但唯一的不足,對于提供給百萬用戶使用的產(chǎn)品,相比價格都比較貴。所以對ChatGLM3-6B的使用做了深入了解,特別只有CPU沒有

    2024年02月04日
    瀏覽(23)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領取紅包

二維碼2

領紅包