LocalAI 使用教學:2026年在本地伺服器部署開源AI模型完整指南
容器起来之后,LocalAI 的日常使用只有四件事:装模型、调参数、调接口、接应用。下面按这个顺序过一遍,每步都给可复制的命令。
💡 你将学到
容器起来之后,LocalAI 的日常使用只有四件事:装模型、调参数、调接口、接应用。下面按这个顺序过一遍,每步都给可复制的命令。
LocalAI 使用教学:在本地服务器部署开源AI模型的完整流程
容器起来之后,LocalAI 的日常使用只有四件事:装模型、调参数、调接口、接应用。下面按这个顺序过一遍,每步都给可复制的命令。
一、模型管理
看已经装了什么:
curl http://localhost:8080/v1/models
从画廊安装:
docker exec -it local-ai local-ai models install llama-3.2-3b-instruct
手动放 GGUF:把文件拷进模型卷(容器内目录 /models),再写一个同名 YAML。命名规则通常是 名字.yaml 配 名字.gguf。
name: qwen2.5-7b-instruct
backend: llama-cpp
parameters:
model: qwen2.5-7b-instruct-q4_k_m.gguf
context_size: 8192
n_gpu_layers: 35
batch: 512
threads: 8
二、参数怎么调:四个字段决定成败
| 参数 | 作用 | 经验值 |
|---|---|---|
| context_size | 上下文窗口,越大越吃显存 | 从 4096 起,长文档再加 |
| n_gpu_layers | 卸载到显卡的层数 | 显存够就给足,不够逐层减 |
| batch | 批处理大小,影响吞吐 | GPU 从 512 起,CPU 要调小 |
| threads | CPU 线程数 | 一般设为物理核心数 |
调优顺序建议:先保证能跑(context 2048、Q4 量化),再拉满显存卸载,最后才压 batch 和 threads。反过来调,通常会发现瓶颈根本不在这一步。
量化档位里 Q4_K_M 是通用甜点,质量和体积平衡最好;Q5、Q6 更接近原始权重但更占资源;Q8 及以上在多数场景性价比不高。
三、接口对照表
| 用途 | 端点 |
|---|---|
| 对话 | /v1/chat/completions |
| 文本补全 | /v1/completions |
| 向量嵌入 | /v1/embeddings |
| 图像生成 | /v1/images/generations |
| 语音转写 | /v1/audio/transcriptions |
| 语音合成 | /v1/audio/speech |
| 重排 | /v1/rerank |
curl http://localhost:8080/v1/chat/completions -H "Content-Type: application/json" \
-d '{"model":"qwen2.5-7b-instruct","messages":[{"role":"user","content":"解释向量检索"}]}'
四、接进现有应用
OpenAI SDK:换 base_url 就行,密钥随便填非空值。
LangChain:
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="qwen2.5-7b-instruct",
openai_api_base="http://localhost:8080/v1",
openai_api_key="not-needed")
Open WebUI、Dify 等前端:新增一个 OpenAI 兼容连接,地址填 http://主机:8080/v1,模型名照抄 /v1/models 返回的 id。应用侧尽量用模型名而不是写死端口,将来换机器或换后端时改动最小。
五、性能与稳定性
- 首次请求慢是正常的,模型要加载进显存
- 并发上不去,先看显存是否被 KV 缓存吃满,把 context 降下来通常立竿见影
- 长期运行加
--restart unless-stopped,并在前面挂 nginx 做反代和鉴权 - 排查加载失败看
docker logs -f local-ai,原因基本都在里面
常见问题
Q:LocalAI 和 Ollama 能同时跑吗? 可以。端口分开即可,LocalAI 用 8080、Ollama 用 11434。显存紧张时建议只留一个常驻。
Q:怎么加访问控制? 最简单是 nginx 反代加 Basic Auth,或只监听 127.0.0.1 再用 SSH 隧道访问。LocalAI 本身不提供完整用户体系。
Q:GPU 没被用上怎么办?
先确认用的是 GPU 镜像标签,再在容器里执行 nvidia-smi。两者都正常但速度仍慢,就是 n_gpu_layers 设得太低。
Q:模型加载报错去哪里查?
docker logs local-ai 里有后端返回的具体原因,常见的是量化格式不支持或文件名与 YAML 的 model 字段不一致。
注:端点路径、参数名与默认值随版本演进,具体以官方文档为准。
相关文章
本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。
