来源:互联网 更新时间:2026-08-27 07:18
“想开发 AI 应用,每次都要调用云端 API?免费额度用完还得付费?跑个 demo 都要担心成本?”
这大概是不少 AI 应用开发者都遇到过的窘境。阿里百炼、智谱 AI、OpenAI 这类平台确实会送些免费额度,但用完了就得真金白银地掏钱。更别说在开发调试阶段,频繁调用 API 不仅烧钱,网络延迟也够让人头疼。
其实有更聪明的办法:
下面这篇文章,就手把手教你用 Docker + Ollama 搭一套本地 AI 开发环境。以后开发 AI 应用时,跑测试、调参数,直接调用本地模型就行。

docker pull 差不多,敲个 ollama pull qwen2.5:7b 就能把模型下到本地| 场景 | 推荐方案 | 原因 |
|---|---|---|
开发测试 | Ollama | 部署简单、API 兼容、迭代快 |
个人/小团队 | Ollama | 资源占用低、开箱即用 |
生产环境 | vLLM / 云端 API | 高并发、高吞吐、稳定可靠 |
企业私有化 | vLLM + K8s | 可扩展、可监控、高可用 |
| 工具 | 特点 | 适用场景 |
|---|---|---|
Ollama | 上手最简单,类 Docker 体验 | 开发测试、个人使用 |
vLLM | 高性能推理引擎,支持 PagedAttention | 生产环境、高并发 |
LM Studio | 图形界面,适合非技术用户 | 个人体验、无代码场景 |
LocalAI | OpenAI API 完全兼容,功能丰富 | 需要完整 OpenAI 替代方案 |
llama.cpp | 底层推理库,性能极致 | 深度定制、嵌入式场景 |
先上一张对比表,看看两种方案到底差在哪:
| 对比项 | 云端 API(百炼/OpenAI) | 本地 Ollama |
|---|---|---|
调用方式 | HTTP API | HTTP API(兼容 OpenAI 格式) |
费用 | 免费额度用完需付费 | 完全免费 |
网络 | 依赖网络,有延迟 | 本地调用,毫秒级响应 |
隐私 | 数据上传云端 | 数据完全本地 |
模型选择 | 平台限定 | 自由选择任意模型 |
适用场景 | 生产环境 | 开发测试、跑 Demo |
去 Docker 官网下载安装包:
https://www.docker.com/products/docker-desktop/
根据操作系统选对应版本就行,Windows / macOS / Linux 都支持。
打开终端,执行:
docker --version docker run hello-world
看到 “Hello from Docker!” 说明安装成功。

mkdir -p /Users/$(whoami)/docker/ollama
sudo mkdir -p /home/docker/ollama sudo chmod 777 /home/docker/ollama
:macOS 的用户目录是说明
/Users/用户名,Linux 是/home/用户名。macOS 的/home是受保护的系统目录,无法写入,千万别搞混。
docker run -d --name ollama -p 11434:11434 -v /Users/$(whoami)/docker/ollama:/root/.ollama ollama/ollama
docker run -d --name ollama -p 11434:11434 -v /home/docker/ollama:/root/.ollama ollama/ollama
-p 11434:11434:暴露 API 端口,供本地应用调用-v <宿主机目录>:/root/.ollama:挂载宿主机目录,模型数据持久化保存curl http://localhost:11434
返回 `Ollama is running` 就说明成功了。
进入容器:
docker exec -it ollama bash
# 中文场景推荐 ollama pull qwen2.5:7b # 通义千问,中文能力强 ollama pull qwen2.5:1.5b # 更轻量,快速测试用 # 推理场景推荐 ollama pull deepseek-r1:7b # DeepSeek R1,推理能力强 ollama pull deepseek-r1:1.5b # 轻量版 # 英文场景推荐 ollama pull llama3.2:3b # Llama 3.2,平衡性能和速度 ollama pull llama3.1:8b # 经典版本
ollama list # 查看已下载模型 ollama ps # 查看运行中的模型 ollama rm <模型名> # 删除模型
Ollama 提供
Base URL: http://localhost:11434/v1 API Key: ollama(随便填,本地不需要验证)
from openai import OpenAI
client = OpenAI(
base_url="http://localhost: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)
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'http://localhost:11434/v1',
apiKey: 'ollama'
});
const response = await client.chat.completions.create({
model: 'qwen2.5:1.5b',
messages: [
{ role: 'user', content: '你好,介绍一下你自己' }
]
});
console.log(response.choices[0].message.content);
curl http://localhost:11434/v1/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "qwen2.5:1.5b",
"messages": [{"role": "user", "content": "你好"}]
}'

Ja va 开发者别着急,Spring AI 对 Ollama 有原生支持,通过 OllamaChatModel 可以直接注入使用。
org.springframework.ai spring-ai-ollama 1.1.0
spring-ai-ollama-spring-boot-starter,但它的最新版是 1.0.0-M6。如果你的项目中 Spring AI 版本较新(比如 1.1.0),直接引入会导致启动报错。
spring-ai-spring-boot-autoconfigure 拆成了多个模块,而旧版 starter 依赖的自动配置类跟新版有 Bean 冲突。
org.springframework.ai spring-ai-autoconfigure-model-ollama 1.1.0
spring:
ai:
ollama:
base-url: http://localhost:11434
chat:
model: deepseek-r1:7b
配置完成后,可以直接注入 ollamaChatModel:
@Autowired
@Qualifier("ollamaChatModel")
private ChatModel ollamaChatModel;
@RestController
@RequestMapping("/ai/ollama")
public class OllamaChatController {
@Autowired
@Qualifier("ollamaChatModel")
private ChatModel ollamaChatModel;
@GetMapping("/stream/chat")
public Flux streamChat(HttpServletResponse response) {
response.setCharacterEncoding("UTF-8");
Flux stream = ollamaChatModel.stream(new Prompt("你是谁?"));
return stream.map(resp -> resp.getResult().getOutput().getText());
}
}
启动应用后,访问这个接口,就能调用到本地部署的 DeepSeek 模型了。

1. 本地开发 → 调用 Ollama(localhost:11434)
2. 本地测试 → 继续用 Ollama,快速迭代
3. 部署上线 → 切换到云端 API(阿里百炼/智谱/OpenAI)
# 开发环境
spring.ai.ollama.base-url: http://localhost:11434
# 生产环境
spring.ai.openai.base-url: https://dashscope.aliyuncs.com/compatible-mode/v1
spring.ai.openai.api-key: ${DASHSCOPE_API_KEY}
选参数更小的模型,比如 qwen2.5:1.5b 或 deepseek-r1:1.5b,响应速度会快很多。
8GB 内存建议用 7B 以下的模型,16GB 可以尝试 14B 模型。
curl http://localhost:11434/v1/models
返回模型列表就说明没问题。
当然在。模型存在挂载的宿主机目录里(macOS: /Users/用户名/docker/ollama,Linux: /home/docker/ollama),容器重启或重建都不会丢。
搭建本地 AI 开发环境,核心就三步:
腾讯ima怎么把微信内容一键导入知识库?
腾讯ima怎么创建共享知识库?
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
比特币 2025 年价格预测:BTC 的未来走势
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
WorkBuddy微信版怎么获得积分?
5000元起的鼠标哪个最值得入手?
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
腾讯ima知识库怎么分类管理?
短剧《史上最强洪荒修为》剧情介绍
海尔消毒柜自动消毒如何中止
博世壁挂炉关闭暖气怎么操作
男生高性价比充电头?
车载冰箱重置到出厂设置几步?
SPX6900(SPX)币是什么?SPX币价格走势分析及未来展望
管线机怎么接云米净水器
Windy卫星云图怎么看?云层变化识别技巧
WorkBuddy积分怎么获得?
5000-6000元鼠标有什么推荐?
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc