当前位置: 首页 > news >正文

云服务器部署私有AI大模型实战指南

准备工作:

一台云服务器,配置最低4G、4核,勉强能跑0.5b、1b大模型
详细步骤:

服务器配置:4核/4GB / Ubuntu 24.04 / 无 GPU

目标:让一台廉价云服务器也能跑大模型,且能通过 API 调用


前言:我为什么要写这篇

不是每台服务器都有 A100 显卡,不是每个人都在 H100 集群上做推理。

我的服务器配置很寒碜——4 核 CPU,3.6GB 内存,没有 GPU。这是一台典型的"买来挂个博客、跑个脚本"的轻量级云服务器。

但我想在这上面跑大模型。不是说说而已,是真的要用起来。

如果你也在类似的机器上挣扎过,这篇文章就是给你的。


硬件真相:你能跑什么样的模型?

先说结论:CPU + 3.6GB 内存,你能跑 1B~3B 参数级别的量化模型。

这里有个简单的经验公式:

模型运行时显存 ≈ 参数规模 × 量化精度

模型规模4-bit 量化8-bit 量化FP16
0.5B (如 Qwen2.5-0.5B)~0.3GB~0.5GB~1GB
1.8B (如 Qwen2.5-1.5B)~1GB~1.8GB~3.6GB
3B (如 Qwen2.5-3B)~1.7GB~3GB~6GB

看明白了吧?在 3.6GB 的机器上,Qwen2.5-1.5B 的 4-bit 量化版是舒适区,Qwen2.5-3B 的 4-bit 量化版是极限。


提醒!!!

推荐直接给云服务器安装Openclaw或其它Agent镜像,然后直接让AI替你安装AI大模型即可免去手动折腾!下文也就不需要看了!

第一步:安装 Ollama

Ollama 是目前最简单的大模型运行方案。一条命令安装:

curl-fsSLhttps://ollama.com/install.sh|sh

安装完成后,Ollama 会以 systemd 服务运行:

# 检查状态systemctl status ollama# 如果没启动systemctlenable--nowollama

如果你的服务器在国外、网络不稳定,可以先检查一下ollama.com能否访问。被墙的话你得先解决代理问题,本文不展开。


第二步:选择合适的模型

推荐模型(按优先级排列)

1. Qwen2.5-1.5B(强烈推荐)

Qwen2.5 是阿里通义千问团队开源的最新系列。1.5B 版本在代码、推理、中文理解上表现惊艳,远超同参数级别的其他模型。

ollama pull qwen2.5:1.5b

2. Qwen2.5-3B(高配选择)

如果你关了 swap、清理了内存,3B 版本的 4-bit 量化勉强能跑。输出质量比 1.5B 明显提升,但推理速度会慢一截。

ollama pull qwen2.5:3b

3. DeepSeek-R1-1.5B(推理增强)

DeepSeek 的轻量推理模型,擅长逻辑推理和数学,适合当你需要"思考型"输出时使用。

ollama pull deepseek-r1:1.5b

4. Llama 3.2-3B(英文优先)

如果你的主要场景是英文,Meta 的 Llama 3.2 是不错的选择。中文能力弱于 Qwen。

ollama pull llama3.2:3b

个人建议:主力用qwen2.5:1.5b,再拉一个deepseek-r1:1.5b做推理任务备用。两个模型加起来大约 2GB 内存,完全够用。


第三步:验证与测试

拉完模型后,先确认它在跑:

# 列出已安装的模型ollama list# 命令行直接对话测试ollama run qwen2.5:1.5b

输入一个简单问题试试,比如:“用 Python 写一个冒泡排序”。看看输出是否正常。

如果出现 OOM(内存不足),检查:

# 查看当前内存使用free-h# 清理系统缓存sync&&echo3>/proc/sys/vm/drop_caches

第四步:开放 API 接口

Ollama 默认只在127.0.0.1:11434监听。如果要从其他机器访问,需要修改配置。

4.1 配置外部访问

编辑 Ollama 的环境变量:

# 编辑 systemd 服务配置systemctl edit ollama

添加以下内容:

[Service] Environment="OLLAMA_HOST=0.0.0.0"

然后重启:

systemctl daemon-reload systemctl restart ollama

4.2 安全提醒 ⚠️

开放0.0.0.0意味着任何人都能访问你的模型。强烈建议配置防火墙

# 仅允许特定 IP 访问ufw allow from 你的IP to any port11434# 或使用 iptablesiptables-AINPUT-ptcp--dport11434-s你的IP-jACCEPT iptables-AINPUT-ptcp--dport11434-jDROP

更好的做法是用 Nginx 反向代理加一层 Basic Auth,或者搭配 API Key 网关。

4.3 测试 API

# 从远程机器测试curlhttp://你的服务器IP:11434/api/generate-d'{ "model": "qwen2.5:1.5b", "prompt": "你好,请用一句话介绍你自己", "stream": false }'

返回结果类似:

{"model":"qwen2.5:1.5b","response":"我是通义千问,阿里云开发的大语言模型。","done":true}

第五步:调优与踩坑

5.1 推理太慢怎么办?

CPU 推理就是慢,这是物理定律。但可以优化:

调整并发线程数:

# 设置 OLLAMA_NUM_PARALLEL 控制并发请求数(默认是1)systemctl edit ollama# 添加Environment="OLLAMA_NUM_PARALLEL=1"

保持单并发。在 4 核 CPU 上,并行推理不会更快,反而会互相抢 CPU。

使用量化模型:

Ollama 默认使用 Q4_K_M 量化(4-bit),如果你是手动导入模型,确保用 GGUF 格式的量化版本,而不是 FP16 的原始权重。

5.2 内存不够用?

# 增加 swap(临时方案,会变慢但不会 OOM)fallocate-l4G /swapfilechmod600/swapfilemkswap/swapfileswapon/swapfile

注意:swap 会导致推理速度断崖式下降。能不用就别用。

5.3 模型下载慢?

设置代理:

# 配置 HTTP 代理环境变量systemctl edit ollamaEnvironment="HTTP_PROXY=http://你的代理:端口"Environment="HTTPS_PROXY=http://你的代理:端口"

或者换个思路——在一台网络好的机器上下载模型文件,然后scp到服务器,手动导入 Ollama。

5.4 模型下载中断 / 不完整?

Ollama 支持断点续传。如果下载中断,直接重新执行ollama pull,它会从断点继续。


第六步:集成到你的应用

Python 调用示例

importrequestsimportjson OLLAMA_URL="http://localhost:11434"defchat(prompt,model="qwen2.5:1.5b"):response=requests.post(f"{OLLAMA_URL}/api/generate",json={"model":model,"prompt":prompt,"stream":False,"options":{"temperature":0.7,"num_predict":512,# 最大输出 token}})returnresponse.json()["response"]# 使用print(chat("解释一下什么是 API"))

兼容 OpenAI API 格式

Ollama 内置兼容 OpenAI 的/v1/chat/completions接口:

fromopenaiimportOpenAI client=OpenAI(base_url="http://你的服务器IP:11434/v1",api_key="ollama"# 任意字符串即可)response=client.chat.completions.create(model="qwen2.5:1.5b",messages=[{"role":"user","content":"你好"}])print(response.choices[0].message.content)

这意味着你现有的 LangChain、Dify、ChatBox 等工具可以直接对接。


性能基准

在 腾讯云 4C/3.6GB 这台机器上,实测:

模型量化推理速度内存占用
qwen2.5:0.5bQ4_K_M~25 tok/s~500MB
qwen2.5:1.5bQ4_K_M~12 tok/s~1.2GB
qwen2.5:3bQ4_K_M~5 tok/s~2.1GB
deepseek-r1:1.5bQ4_K_M~10 tok/s~1.3GB

12 tok/s 意味着每秒能输出 12 个 token,大约 20 个中文字。对于聊天场景来说可接受,等待几秒就能看到完整回复。


总结

  1. 用 Ollama,不用折腾 PyTorch、Transformers、CUDA 那一套
  2. 选对模型:Qwen2.5-1.5B 是甜点,Qwen2.5-3B 是上限
  3. 4-bit 量化是必须的,Ollama 默认就是量化版本,不用额外操作
  4. 开放 API 记得做安全防护,别裸奔
  5. CPU 推理就是慢,接受它。如果需要实时对话体验,升级到 GPU 机器是唯一出路

一台月租几十块的云服务器,加上开源的 AI 模型,能做很多事:个人助手、代码生成、文档摘要、翻译、RAG 知识库……关键是,它完全属于你,数据不外泄,想怎么玩就怎么玩。

祝折腾愉快。

http://www.cnnetsun.cn/news/3050049.html

相关文章:

  • Qt 铁甲阅读器-搜索
  • [智能体-591]:Python的一个强项目是自动化测试,JS/TS+Node也是自动化测试,比较他们的在自动化测试领域的强弱优缺点对比
  • 深度学习优化
  • 从文件资源管理器到3D预览:STL缩略图扩展的技术突破与应用价值
  • 7个技巧让全面战争MOD开发效率飙升:RPFM现代化工具链深度指南
  • Sublime Text 3 —— 打造沉浸式编码体验:Material主题与Fira Code字体的黄金组合
  • 开源漏洞修复脚本的5个关键执行细节与风险管控实践
  • 普通人也能做专业量化!香港大学免费开源 Vibe-Trading用自然语言来写策略
  • 终极指南:如何用猫抓浏览器扩展一键下载网页视频和音频资源
  • 3分钟掌握图像转字节数组:让OLED开发变得简单的终极免费指南
  • 微信小程序webview实战:从PDF预览到网页内嵌的完整方案与避坑指南
  • SRC漏洞挖掘实战指南:从Web安全基础到高效渗透测试
  • Icarus Verilog深度解析:开源硬件验证工具的技术架构与实战指南
  • OpCore-Simplify:三分钟快速配置黑苹果OpenCore EFI的终极自动化工具
  • 鼠标性能测试神器:MouseTester如何帮你解锁精准输入体验
  • 【招聘】创业公司如何建立猎头合作体系——不被坑的完整指南
  • 【计算机毕业设计案例】基于 SpringBoot+Vue 的体育场地资源统筹预约系统设计 自助式体育馆场地预约服务平台的设计与开发(程序+文档+讲解+定制)
  • 基于MSP430FR6047的超声波水表软件架构解析与开发实践
  • OpCore-Simplify:黑苹果配置的终极简化工具,15分钟完成专业级EFI搭建
  • 如何在Windows、macOS和Linux上免费畅玩Switch游戏:Ryujinx模拟器完整指南
  • LitCAD:免费开源的C二维CAD绘图软件完全指南
  • 缠论智能分析插件ChanlunX:3分钟从零到实战的完整指南
  • Java计算机毕设之基于 Web 技术的在线问卷调查与投票系统的设计与实现 基于 SpringBoot+Vue3 的可视化投票系统(完整前后端代码+说明文档+LW,调试定制等)
  • OpCore-Simplify:30分钟搞定黑苹果配置,告别复杂手动调试的终极解决方案
  • 抱抱脸模型TOP榜,我现在只服yuxinlu1
  • MSP430F6736智能电表SoC:高精度计量与超低功耗设计实战
  • 企业微信机器人自动化框架:we-work-bot技术架构与实战解决方案
  • 完整老旧Mac升级指南:让过时硬件重获系统兼容性
  • Kali渗透利器:Docker化部署ARL灯塔资产侦察平台实战
  • 绝对位置模式与相对位置模式