河源建网站网站开发需求报告模板下载
河源建网站,网站开发需求报告模板下载,厦门450元网站建设公司,wordpress第三方用户系统GLM-4v-9b保姆级教程#xff1a;Ubuntu 22.04 LTS全环境依赖安装与验证
想在自己的电脑上跑一个能看懂图片、还能跟你聊天的AI吗#xff1f;今天#xff0c;我们就来手把手教你#xff0c;在Ubuntu 22.04系统上#xff0c;从零开始安装和运行一个强大的多模态模型——GLM…GLM-4v-9b保姆级教程Ubuntu 22.04 LTS全环境依赖安装与验证想在自己的电脑上跑一个能看懂图片、还能跟你聊天的AI吗今天我们就来手把手教你在Ubuntu 22.04系统上从零开始安装和运行一个强大的多模态模型——GLM-4v-9b。这个模型只有90亿参数但本事不小。它能同时理解文字和图片支持中文和英文对话。最厉害的是它能直接处理1120×1120的高清大图连图片里的小字和表格细节都能看清楚。在一些专业的看图测试里它的表现甚至超过了GPT-4 Turbo和Claude 3 Opus这些业界大佬。而且它对咱们普通玩家特别友好。经过简单压缩后模型大小只有9GB左右一张RTX 4090显卡就能流畅运行。这意味着你不需要昂贵的专业设备就能在本地体验前沿的多模态AI能力。接下来我会带你一步步完成所有环境的搭建和验证确保你一次成功。咱们开始吧。1. 准备工作理清思路与检查清单在动手安装之前我们先花几分钟搞清楚我们要做什么以及需要准备什么。这能帮你避免很多“做到一半卡住”的尴尬情况。1.1 教程目标与最终效果通过这篇教程你将完成以下事情搭建完整环境在Ubuntu 22.04系统上安装运行GLM-4v-9b所需的所有软件和依赖库。验证核心功能运行一个简单的测试脚本确认模型能正确加载并且具备图文理解的能力。获得一个可用的起点得到一个干净、可复现的基础环境你可以基于它进行更复杂的应用开发。完成之后你将能运行一个Python脚本给模型一张图片和一段文字提问然后得到模型的理解和回答。1.2 你的电脑需要满足这些条件请对照检查你的电脑确保满足以下要求操作系统Ubuntu 22.04 LTS。这是本教程的基准系统其他版本可能需要对命令进行微调。显卡GPU这是最重要的部分。你需要一张NVIDIA显卡并且显存至少要有16GB。例如RTX 4090 (24GB)完美运行推荐。RTX 3090 (24GB)完美运行。RTX 4080 Super (16GB)刚好满足最低要求可以运行量化后的模型。如果显存小于16GB运行完整的模型会非常困难你可能需要考虑使用更强的量化版本如INT8或在CPU上运行速度会慢很多。硬盘空间至少需要30GB的可用空间用于存放模型文件、Python环境以及各种依赖库。网络需要稳定的网络连接以下载模型文件约18GB和安装包。如果你的设备符合条件那太好了我们继续。如果不符合你可能需要先升级硬件或者寻找云服务来运行。2. 基础环境搭建安装系统级依赖这一部分我们要为后续的Python和深度学习环境打好地基。请打开你的终端Terminal。2.1 更新系统软件包列表首先我们更新一下系统的软件包列表确保能安装到最新版本的软件。sudo apt update2.2 安装必要的编译工具和库GLM-4v-9b的某些底层依赖比如用来加速计算的flash-attn需要编译安装。因此我们需要提前安装好编译工具和一些基础库。运行以下命令一次性安装它们sudo apt install -y build-essential cmake git wget curl software-properties-commonbuild-essential包含了GCC编译器、make等核心编译工具。cmake一个跨平台的编译配置工具很多C项目用它。git版本控制工具用于克隆代码仓库。wget和curl命令行下载工具。software-properties-common方便我们添加和管理软件源。2.3 安装并配置Python环境Ubuntu 22.04默认可能安装了Python 3.10但我们建议使用更新的Python 3.10或3.11。这里我们通过deadsnakes这个PPA个人软件包存档来安装Python 3.11。添加deadsnakesPPA源sudo add-apt-repository ppa:deadsnakes/ppa -y sudo apt update安装Python 3.11和虚拟环境管理工具python3.11-venvsudo apt install -y python3.11 python3.11-venv python3.11-devpython3.11-dev包含了Python开发所需的头文件和静态库编译某些Python包时会用到。2.4 安装NVIDIA显卡驱动与CUDA这是让模型能在GPU上飞驰的关键。我们将使用Ubuntu官方推荐的ubuntu-drivers工具来安装。首先检查你的显卡型号并查看推荐的驱动版本ubuntu-drivers devices在输出结果中找到带有“recommended”标识的那一行记住驱动版本号例如nvidia-driver-550。安装推荐的驱动版本请将下面的550替换成你看到的版本号sudo apt install -y nvidia-driver-550安装完成后必须重启电脑以使驱动生效。sudo reboot重启后重新打开终端验证驱动是否安装成功nvidia-smi你应该能看到一个表格显示了你的GPU型号、驱动版本、CUDA版本等信息。如果能看到恭喜你驱动安装成功安装CUDA Toolkit。深度学习框架如PyTorch需要CUDA来调用GPU进行计算。我们安装CUDA 12.1这是一个与当前主流深度学习库兼容性很好的版本。wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda-repo-ubuntu2204-12-1-local_12.1.0-530.30.02-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2204-12-1-local_12.1.0-530.30.02-1_amd64.deb sudo cp /var/cuda-repo-ubuntu2204-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda-12-1将CUDA添加到系统环境变量这样系统才能找到它。编辑你的shell配置文件例如~/.bashrcecho export PATH/usr/local/cuda-12.1/bin${PATH::${PATH}} ~/.bashrc echo export LD_LIBRARY_PATH/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH::${LD_LIBRARY_PATH}} ~/.bashrc source ~/.bashrc验证CUDA安装nvcc --version如果显示CUDA 12.1的版本信息说明安装成功。至此最复杂的基础系统环境已经搭建完毕。接下来我们进入Python的世界。3. 创建与配置Python虚拟环境使用虚拟环境是一个好习惯它能将不同项目的依赖隔离开避免版本冲突。我们为GLM-4v-9b单独创建一个环境。创建一个新的目录来存放我们的项目并进入该目录mkdir -p ~/projects/glm-4v-9b-demo cd ~/projects/glm-4v-9b-demo使用Python 3.11创建一个名为venv的虚拟环境python3.11 -m venv venv激活虚拟环境source venv/bin/activate激活后你的命令行提示符前面通常会显示(venv)表示你现在处于这个虚拟环境中。后续所有pip install命令都需要在激活的环境下执行。升级pip和setuptools到最新版pip install --upgrade pip setuptools wheel4. 安装深度学习框架与模型依赖现在我们来安装运行模型所需的Python库。核心是PyTorch和Hugging Face的transformers库。4.1 安装PyTorch根据我们安装的CUDA 12.1去PyTorch官网找到对应的安装命令。在虚拟环境中执行pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu1214.2 安装Transformers及其他核心库transformers库是Hugging Face提供的用于加载和运行各种预训练模型的核心工具。pip install transformers accelerate sentencepieceaccelerateHugging Face的库用于简化混合精度训练和分布式推理。sentencepiece分词器依赖。4.3 安装视觉处理与加速库GLM-4v-9b需要处理图片并且我们希望能更快地运行它。pip install pillow opencv-python-headless flash-attn --no-build-isolationpillow(PIL)Python最常用的图像处理库。opencv-python-headlessOpenCV的无头版本用于更专业的图像读取和预处理。flash-attn一个非常重要的注意力机制加速库能显著提升模型推理速度。安装它可能需要几分钟时间编译。4.4 可选安装Jupyter Notebook用于交互式测试如果你习惯在Notebook里写代码和看结果可以安装它。pip install jupyter环境依赖全部安装完毕接下来就是最激动人心的环节——下载模型并运行测试。5. 下载模型与编写测试脚本5.1 下载GLM-4v-9b模型模型开放在Hugging Face Hub上。我们可以直接用transformers库在代码中下载但为了更稳定我们先使用git-lfs大文件存储来克隆仓库。安装git-lfssudo apt install -y git-lfs git lfs install克隆模型仓库请注意模型较大约18GB下载需要较长时间和稳定网络git clone https://huggingface.co/THUDM/glm-4v-9b你可以去喝杯咖啡耐心等待。如果网络不稳定导致中断可以使用git lfs pull命令继续拉取。5.2 编写一个简单的验证脚本在项目根目录下创建一个名为test_glm4v9b.py的Python文件。# test_glm4v9b.py import torch from PIL import Image from transformers import AutoModelForCausalLM, AutoTokenizer # 1. 指定模型路径指向你刚刚克隆下来的文件夹 model_path ./glm-4v-9b # 2. 加载模型和分词器 print(正在加载模型和分词器这可能需要几分钟...) # 使用半精度fp16加载以节省显存 model AutoModelForCausalLM.from_pretrained( model_path, torch_dtypetorch.float16, # 使用半精度 device_mapauto, # 自动将模型层分配到可用的GPU/CPU上 trust_remote_codeTrue # 信任来自作者的远程代码GLM系列需要 ).eval() # 设置为评估模式关闭dropout等训练层 tokenizer AutoTokenizer.from_pretrained(model_path, trust_remote_codeTrue) print(模型加载完毕) # 3. 准备一张测试图片和问题 # 这里我们使用PIL创建一个简单的纯色图片作为示例 # 在实际应用中你可以用 Image.open(你的图片路径.jpg) 来加载自己的图片 width, height 224, 224 test_image Image.new(RGB, (width, height), colorlightblue) question 请描述这张图片。 # 4. 构建模型输入 # GLM-4v-9b 使用特定的聊天模板 messages [ {role: user, content: [{type: image}, {type: text, text: question}]} ] # 使用tokenizer的apply_chat_template方法构建输入 input_text tokenizer.apply_chat_template(messages, add_generation_promptTrue, tokenizeFalse) # 将文本和图片一起进行tokenize inputs tokenizer([input_text], images[test_image], return_tensorspt).to(model.device) # 5. 生成回答 print(正在生成回答...) with torch.no_grad(): # 禁用梯度计算节省内存 generated_ids model.generate( **inputs, max_new_tokens512, # 生成的最大新token数 do_sampleFalse, # 使用贪婪解码结果更确定 temperature0.1, ) # 6. 解码并打印输出 # 跳过输入部分只解码新生成的token generated_ids_trimmed generated_ids[:, inputs[input_ids].shape[1]:] if generated_ids.shape[1] inputs[input_ids].shape[1] else generated_ids output_text tokenizer.batch_decode(generated_ids_trimmed, skip_special_tokensTrue)[0] print(\n *50) print(用户问题, question) print(模型回答, output_text) print(*50) # 7. 打印显存使用情况可选 if torch.cuda.is_available(): print(f\nGPU显存使用: {torch.cuda.memory_allocated() / 1024**3:.2f} GB)这个脚本做了以下几件事加载我们下载的模型和分词器。创建一张简单的蓝色图片作为输入。按照GLM-4v-9b要求的格式把图片和文字问题组合起来。让模型根据图片和问题生成一段描述。把模型生成的结果打印出来。6. 运行验证与结果分析万事俱备只欠东风。在终端里确保虚拟环境venv是激活状态运行我们的测试脚本python test_glm4v9b.py第一次运行会需要一些时间因为transformers库会检查并可能下载一些额外的配置文件。模型本身已经在我们本地了所以不会重复下载。如果一切顺利你将会看到类似以下的输出正在加载模型和分词器这可能需要几分钟... 模型加载完毕 正在生成回答... 用户问题 请描述这张图片。 模型回答 这张图片是一个简单的纯色矩形颜色是浅蓝色。它没有包含任何具体的物体、纹理或图案。 GPU显存使用: 15.32 GB恭喜你这标志着你的GLM-4v-9b环境已经成功安装并运行起来了6.1 结果解读与验证要点功能验证成功模型正确识别了我们用代码生成的“浅蓝色矩形”图片并给出了合理的描述。这说明模型的视觉编码器和语言模型部分协同工作正常。显存占用脚本显示使用了约15.3GB显存。这符合GLM-4v-9b模型以fp16精度加载时的预期约18GB剩余的显存用于计算过程中的中间变量。如果你的显存刚好16GB这个占用是安全的。响应速度第一次生成可能稍慢因为涉及模型加载和编译。后续在同一进程中的生成会快很多。6.2 进行更多测试可选为了进一步验证环境你可以修改测试脚本使用真实图片将创建test_image的那行代码替换为Image.open(“你的照片路径.jpg”)。尝试不同问题修改question变量例如“图片里有什么”“这张图片的背景色是什么”“根据这张图片写一个简短的故事。”测试中文能力直接用中文提问例如“描述一下这张图。”7. 总结与后续步骤回顾一下我们完成了从零开始在Ubuntu 22.04上部署GLM-4v-9b多模态模型的全部过程检查了硬件和系统要求。安装了系统级依赖包括编译工具、Python 3.11和NVIDIA驱动与CUDA。创建了独立的Python虚拟环境并安装了PyTorch、Transformers、Flash-Attn等所有必要的库。下载了GLM-4v-9b模型权重。编写并运行了验证脚本成功让模型描述了一张图片确认环境完全可用。你现在拥有的是一个强大的本地多模态AI底座。接下来你可以探索更多功能查阅 GLM-4V-9B 官方文档了解如何用它进行图表理解、文档问答等更复杂的任务。集成到应用中将模型封装成API服务例如使用FastAPI为你自己的应用提供视觉问答能力。尝试量化如果你的显存紧张可以探索使用bitsandbytes库进行INT8或INT4量化进一步降低显存需求。使用WebUI部署类似Gradio或Streamlit的交互式网页界面用更直观的方式和模型对话。遇到问题别担心这是学习过程的一部分。请确保所有步骤都严格按照教程进行并仔细核对命令的输出信息。祝你玩得开心获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。