
#Datawhale#AMDev一、部署运行 Gemma4 大模型检查当前 GPU 是否可用amd-smi2. 确认 PyTorch 能识别 AMD GPUpython-cimport torch; print(PyTorch:, torch.__version__); print(ROCm available:, torch.cuda.is_available()); print(Device:, torch.cuda.get_device_name(0) if torch.cuda.is_available() else N/A)下载 Gemma4 模型Gemma 4 是Google推出的一款大语言模型为了提升国内环境下的依赖下载速度先把 pip 源切换到腾讯云镜像pip configsetglobal.index-url https://mirrors.cloud.tencent.com/pypi/simple/安装 魔搭 ModelScope什么是 ModelScope 它是由阿里达摩院主导的国内开源模型社区是国内的“AI 模型应用商店”。而其服务器在国内因此能帮我们高速、稳定地把大模型拉到本地。下载 Gemma4 模型到当前目录modelscope download--modelgoogle/gemma-4-E4B-it--cache_dir./models确认 Gemma4 模型模型文件完整下载成功其中15G大的 model.safetensors 是模型权重ls-lh./models/google/gemma-4-E4B-it/7. 启动 vLLM 服务vLLM 是一个本地高效推理大模型的项目这里我们使用vLLM来测试刚才下载的模型能否正常使用。在使用 vLLM 前需更新云环境中的 vLLM 版本才能运行 Gemma4 模型。uv pip uninstall torchvision torchaudio# 经测试在该云环境中需卸载重新安装这个库才能正常使用uv pipinstallvllm0.23.0rocm723torchvision torchaudiofastapi[standard]0.136.0\--no-cache\--index-url https://mirrors.aliyun.com/pypi/simple/\--extra-index-url https://wheels.vllm.ai/rocm/\-Uvllm serve ./models/google/gemma-4-E4B-it/ --served-model-name gemma-4-E4B-it注意运行这个命令后这个终端窗口就会 被大模型服务“死死占满” 。请 保持运行绝对不要关闭它 也不要按 CtrlC 否则大模型服务就会立刻停止。8. 打开新终端进行对话测试 为什么要打开一个“新终端”第一个终端正在跑模型服务像后台厨师在做饭被占住了不能再输命令。所以要再开一个新终端当前台,专门用来给模型发命令、跟它对话。新建 一个 终端 在新终端里输入测试命令发送消息给后台的 Gemma 4 模型测试它的推理服务是否正常输入 文本进行测试 复制如下命令粘贴命令运行终端返回模型回答的内容说明Gemma4已经在 AMD ROCm 云环境中正常运行vllm chat--urlhttp://localhost:8000/v1--modelgemma-4-E4B-it9. 关闭 vLLM 服务因为我们后续还要对 Gemma4 模型进行微调因此需关闭这个 vLLM 来为微调任务腾出计算资源1新终端 Mac电脑 按 ControlC Windows电脑 按 Ctrl C 退出聊天2上一个终端 回到第一个终端 Mac电脑 按 ControlC Windows电脑 按 Ctrl C 结束 vLLM 服务二、常见问题排查vllm serve 启动很慢怎么办第一次启动需要加载模型和编译内核等待几分钟是正常现象。只要日志还在输出通常不需要中断。2.提示显存不足怎么办可以降低最大上下文长度后再启动vllm serve ./models/google/gemma-4-E4B-it/ --served-model-name gemma-4-E4B-it --max-model-len8192如果仍然显存不足可以继续降低到 4096 。modelscope download 命令找不到怎么办先确认 ModelScope 是否安装成功pip show modelscope如果没有安装成功重新执行pipinstall-Umodelscope也可以直接使用本文提供的 Python 下载命令。4.聊天命令连接失败怎么办先确认第一个终端中的 vLLM 服务仍在运行并且已经出现 Application startup complete. 。如果服务没有启动完成等待启动完成后再运行 vllm chat 。【科普卡片】一文读懂大模型核心概念大模型是什么先说它和普通软件的区别这是理解一切的起点。普通软件是程序员把规则一条一条写死的。比如一个计算器程序员写明看到加号就做加法它才会做加法。程序员没想到的情况它就不会处理。大模型不一样没有人给它写规则。它是从海量文字里自己总结出语言规律的。那它具体在做什么它的核心工作其实只有一件事看着前面的文字预测下一个词最可能是什么。听起来太简单了但请先记住这件事因为它就是大模型的全部底层逻辑。展开来看模型每生成一个词内部都走了这么五步一个词一个词地往下接接成句子、接成段落就是我们看到的会聊天、会写作的样子。为什么这样就显得聪明 因为要把下一个词猜得准模型在学习时必须暗暗掌握很多东西语法、常识、事实、甚至简单的推理。举例要正确续写中国的首都是____它就必须知道答案是北京。它不是被人手把手教的而是在海量文字里反复见到这个搭配自己总结出来的规律。Gemma 4 是什么Gemma 4 是 Google(旗下 DeepMind 团队)在 2026 年推出的一个 开源大模型家族 。它和 Google 那款闭源、收费的 Gemini 3 用的是同一套底层技术,所以你可以把它看成 Gemini 3 的开源师弟——区别在于,Gemma 把模型权重公开放了出来,而且用的是商业友好的 Apache 2.0 许可 ,意味着 不光能免费下载,还能免费商用 。开源这一点对本次教程特别关键 :任何人都能免费下载模型文件、装到自己环境里运行、甚至拿自己的数据去改造它 (也就是任务四要做的微调)。而闭源模型(比如 GPT、Gemini),你只能隔着网络调用,看不到也改不动里面的东西。顺带一提,Gemma 系列至今 已被下载超过 4 亿次、衍生出 10 万多个模型 , 是开源圈里用得最广的家族之一 。Gemma 4 有好几种大小,从能塞进手机、树莓派的,到要用服务器才跑得动的都有,一共四款:E2B、E4B、26B 和 31B。本次教程用的是其中较小的 E4B :体积小到 单张显卡就能跑,又足够聪明,正好适合上手学习 。(型号里的E是有效参数的意思,E4B 大致是 40 亿参数这个量级。)别看个头小,Gemma 4 这一代主打的就是 单位参数下的高智能 ——按 Google 官方说法,它家最大的 31B 模型在权威的开放模型排行榜上能排进全球前三,甚至打赢比它大 20 倍的对手。能力上,它会做多步推理、能写代码、能看图、能听音频、一次能读进很长的内容,还支持 140 多种语言。本次教程为什么选它? 开源 (能下能改、还能免费商用)、 够小 (单卡跑得动)、 够强 。更多信息详见谷歌官方对Gemma 4 的介绍 https://mp.weixin.qq.com/s/9ocQ4g2v8zmKuIMcle3sDA顺便搞懂几个高频词这几个词在任务三里会反复出现搞懂了后面就不犯迷糊。1️⃣ 参数 / 权重 / “多少 B”参数Parameter 模型内部的数字就像模型的大脑神经元的“记忆”。每个参数都是一个固定的数模型就是靠这些数进行运算算出答案。权重Weight 参数的另一种叫法完全等价。“多少 B” B 10 亿。模型名字里的 4B、15B就是模型里参数的数量。例如4B 模型有 40 亿个参数。模型文件 你下载的 model.safetensors 文件里存的就是这些参数。文件大比如 15G是正常的因为存储结构和精度决定了文件大小。一句话理解 参数 模型的“本体”模型会不会聊天、聪不聪明全在这堆数字里。2️⃣ 推理Inference与部署Deploy推理 用训练好的模型做实际工作跟模型对话、生成内容。部署 把模型放到服务器上让别人可以访问、请求模型生成结果。关系 训练 教模型推理 用模型干活部署 把模型放到服务器上别人也能用3️⃣ 魔搭 ModelScope一个国内的开源模型社区,相当于国内的模型下载站。 用它可以下载模型速度快、稳定不容易卡。任务三第二步,你就是用它把 Gemma 4 下载下来的。因为它的服务器在国内,下载又快又稳、不容易卡——这也是教程让你先把下载源切到国内镜像的原因。4️⃣ vLLM刚下载的模型文件,只是一堆静止的参数,没法直接聊天 。vLLM 就是负责把模型装载起来、发动跑起来的推理框架 ,而且它优化过运算流程, 同一个模型用它跑会更快 。总结一句话模型 一堆参数权重推理 模型开始用参数算东西部署 模型可以被别人访问ModelScope 国内模型下载渠道vLLM 推理框架让模型跑得快读懂本节任务这一连串操作到底在干嘛本节任务命令看着多,其实是一条很清晰的链路。一句话概括目标: 把一个挂在网上的模型文件,变成一个能跟你对话的服务 。理解了这条链路,你敲命令时就不是在盲抄,而是知道每一步在干嘛。第一步,先检查显卡能不能用。 为什么放最前面?因为后面下载、运行、对话全靠显卡。先花几秒确认地基没问题,免得忙活半天才发现显卡用不了——相当于开工前先看看工具齐不齐。第二步,把模型下载到本地。 模型得先待在你这台服务器上,才能被运行。先切换国内镜像、用魔搭来下载,都是为了又快又稳;下完确认那个 15G 的权重文件在,原料就到位了。第三步,用 vLLM 把模型启动成一个服务。 有了模型文件(原料),还需要一个引擎(vLLM)把它点着:它会把模型加载进显存,然后开一个窗口停在那儿等人提问。注意启动后这个终端会被一直占住——因为服务得持续运行,不能关。第四步,另开一个终端连上去对话。 这里藏着一个很真实的概念:大模型实际运行时,往往是 服务端 客户端 的模式。第三步启动的是服务端(像后厨,一直运转);你要跟它说话,得另开一个终端当客户端(像前台,负责传话)。所以让你开新终端不是麻烦,这套结构本来就这么设计的——你以后调用大模型 API,本质也是这个样子。对话测试通过,本次学习任务就达成了:你已经独立把一个开源大模型部署起来、并验证它能正常工作。最后让你关掉服务,是因为下一步微调要用显存,得先把这个后厨腾出来。