大模型私有化部署

大模型私有化部署

文章目录

私有化大模型选择

  • 支持中文的
  • 开源的
  • 可商用
  • 性能好
  • 低成本部署
  • 建议考虑支持国产芯片

本节主要针对选择的 智谱GLM (智谱AI ) 成立2019年6月 清华大学计算机系知识工程实验室(KEG)的技术成功转换来的。支持国产芯片

GLM发展历程总结与特点

时间 模型 参数量 主要贡献与特点
2021 GLM-1 - 提出自回归空白填充范式,统一理解与生成
2022 GLM-130B 1300亿 对标GPT-3,开源双语高效量化,奠定地位
2023 ChatGLM-6B 60亿 现象级开源对话模型,极大降低大模型使用门槛
2023 GLM-2 1B/10B 系列化、商业化,满足不同规模部署需求
2024 GLM-4 未知 全面对标GPT-4,支持多模态长上下文智能体

git 地址请参见 https://github.com/THUDM/

ChatGLM3私有化本地部署

模型参数精度的选择需要找到关键的权衡点。一方面使用更高精度的数据类型可以提供更高的数值精度,同时会占用更多的内存计算速度慢对设备的性能要求会更高,与此同时使用低精度的数据类型可以节省内存并加速计算,但会导致数值精度损失。在实际应用中,需要更具项目的需要,具体选择模型的精度和硬件设备和性能的搭配。

量化技术

量化(Quantization)确实是一种 模型压缩与加速技术 ,它的核心思想就是:把模型中的 浮点数(通常是 FP32)参数和激活值 映射到 较低精度的整数表示(如 INT8、INT4)。这样一来:

  1. 存储成本降低

    FP32 占 4 字节

    INT8 只占 1 字节

    模型体积可以缩小 约 4 倍

  2. 计算速度提升

    在许多硬件(如 ARM CPU、GPU、TPU、NPU)上,低精度整数运算比浮点运算更快。特别是 INT8 矩阵乘法(GEMM)在移动设备和推理加速芯片上有硬件支持。

  3. 功耗降低

    存储带宽减少,访存和运算的能耗也随之降低,更适合部署在边缘设备和移动端

# 步骤

0x01.模型资源评估

见我的大模型基础知识。

0x02.GPU环境确认

Mac用户:打开"终端",输入以下命令:system_profiler SPDisplaysDataType

0x03.Python环境准备

建议安装anaconda(https://www.anaconda.com/download),网站会自动识别安装什么版本

0x04.GPU版PyTorch安装

PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。PyTorch既可以看

作加入了GPU支持的numpy,同时也可以看成一个拥有自动求导功能的强大的深度神经网络。

确认是否已经安装2.0版本及以上的GPU版本的PyTorch,ChatGLM3-6B运行过程需要借助PyTorch来完成

相关计算。

python 复制代码
print(f"PyTorch version: {torch.__version__}")
print(f"CUDA available: {torch.cuda.is_available()}") 
---
PyTorch version: 2.8.0
CUDA available: False
0x05.验证当前PyTorch与CUDA是否兼容

编程模型

  • CUDA 提供了一套扩展 C/C++/Fortran 的 API,开发者可以像写普通 C 程序一样编写 GPU 代码。

  • 代码分为 主机端(Host,运行在 CPU)设备端(Device,运行在 GPU)

  • GPU 程序以 核函数(Kernel Function) 的形式运行,可以由成千上万的线程并行执行。

python 复制代码
print(f"PyTorch version: {torch.__version__}")
print(f"CUDA available: {torch.cuda.is_available()}")  # 在 macOS 上应为 False
print(f"MPS available: {torch.backends.mps.is_available()}")  # 在 Apple Silicon 上应为 True
# 检查设备
if torch.backends.mps.is_available():
    device = torch.device("mps")
    print(f"Using device: {device}")
else:
    device = torch.device("cpu")
    print("MPS not available, using CPU")
0x06.获取工程

首先需要下载本仓库:

shell 复制代码
git clone https://github.com/THUDM/ChatGLM3
cd ChatGLM3
**0x07.**安装ChatGLM3项目依赖库

pip install -r requirements.txt

安装过程若出现typing-extensions或fastapi等库不兼容性报错,并不会影响最终模型运行,不用进行额外处理。完成了相关依赖库的安装之后,即可尝试进行模型调用了。

0x08. Demo验证

python cli_demo.py

相关推荐
音视频牛哥7 分钟前
机器人视频感知架构深度解析:7条技术法则,打造低延迟实时感知与交互
人工智能·计算机视觉·机器人·音视频·大牛直播sdk·机器视觉·rtmp rtsp播放器
l12345sy1 小时前
Day16_【机器学习—模型拟合问题】
人工智能·机器学习
Ai工具分享1 小时前
让模糊物体变清晰的视频AI:快速提升画质指南
人工智能·音视频
霍格沃兹测试开发学社测试人社区1 小时前
MCP零基础学习(7)|实战指南:构建论文分析智能体
人工智能·测试工具
开开心心就好2 小时前
PDF转长图工具,一键多页转图片
java·服务器·前端·数据库·人工智能·pdf·推荐算法
l12345sy2 小时前
Day16_【机器学习概述】
人工智能·机器学习
大千AI助手2 小时前
InstructGPT:使用人类反馈训练语言模型以遵循指令
人工智能·gpt·语言模型·自然语言处理·rlhf·指令微调·模型对齐
机器之心3 小时前
时代2025 AI百人榜出炉:任正非、梁文锋、王兴兴、彭军、薛澜等入选,华人影响力爆棚
人工智能·openai
机器之心3 小时前
谢赛宁回忆七年前OpenAI面试:白板编程、五小时会议,面完天都黑了
人工智能·openai
Json_3 小时前
使用springboot开发-AI智能体平台管理系统,统一管理各个平台的智能体并让智能体和AI语音设备通信,做一个属于自己的小艾同学~
人工智能·spring boot·openai