私有化部署实战案例
基于 Ollama + DeepSeek + Nomic-Embed + Cherry Studio 的本地知识库建设方案
本地私有化部署方案
完全离线运行 · 数据自主可控 · 零云端依赖
硬件环境配置
操作系统
Ubuntu 22.04 LTS
系统内存
32GB DDR4
显存容量
8GB GDDR6
存储空间
500GB NVMe SSD
网络环境
内网局域网
安全等级
涉密内网
核心技术栈
Ollama
本地大模型运行平台
负责本地大语言模型的加载与推理。支持
deepseek-r1:7b 等模型的本地部署,提供 REST API 接口供上层应用调用。
DeepSeek-R1 7B
本地推理模型
深度求索开源的推理模型,7B 参数版本可在 8GB 显存环境下运行。擅长逻辑推理、代码生成和文档理解。
nomic-embed-text
本地嵌入模型
完全开源可复现的文本嵌入模型,768 维向量输出。在 Ollama 中直接运行,无需联网即可完成文本向量化。
Cherry Studio
AI 客户端
开源 AI 客户端,支持多模型管理和知识库功能。通过配置本地 Ollama 接口,实现完全离线的智能问答体验。
部署架构图
Cherry Studio 客户端
用户交互界面,配置本地 Ollama 接口,管理知识库和对话历史
Ollama 本地服务
运行
deepseek-r1:7b 大模型和 nomic-embed-text 嵌入模型,提供模型推理 API本地向量存储
存储知识库文档的向量嵌入,支持语义检索和相似度匹配
本地文档库
地震安评报告、合同文档等原始资料,完全离线存储
知识库原理解析(RAG流程)
基于 Cherry Studio 官方文档的 RAG(检索增强生成)工作流程。系统通过向量检索将用户问题与知识库文档片段关联,再由大模型生成精准答案。
1
问题向量化
用户使用自然语言提问,Application 调用 EmbeddingModel 将问题转换为高维向量(768维)
2
向量相似度检索
在 VectorDB 中使用余弦相似度计算,检索与问题向量最接近的 Top-K 个文档片段
3
上下文构建
将检索到的文档片段与原始问题组合,构建包含上下文的 Prompt(通常遵循特定模板)
4
大模型生成
LLM 基于提供的上下文生成答案,确保回答内容基于知识库而非模型预训练知识
知识库建设案例
地震安评知识库
建设工程地震安全性评价收集整理地震安全性评价相关的技术规范、评审标准、历史案例等资料,构建专业的地震安评知识库,支持评审人员快速检索相关技术要求和案例参考。
数据案例:康良路项目
康良路(京杭大运河-运溪路)工程地震安全性评价报告,包含场地地震地质条件分析、地震动参数确定、地震地质灾害评价等章节内容。
1
核心项目
5
技术规范
50+
文档片段
合同管理知识库
项目合同文档智能管理收录项目合同文本、补充协议、变更签证等文档,建立合同条款知识库。支持合同内容检索、条款对比分析、履约风险识别等智能应用。
数据案例:3份项目合同
包含技术服务合同、设备采购合同、工程承包合同三类样本,涵盖付款条款、交付标准、违约责任、争议解决等关键条款内容。
3
合同类型
12
核心条款
30+
文档片段
部署操作步骤
1
安装 Ollama
在 Ubuntu 系统上安装 Ollama 本地大模型运行平台
curl -fsSL https://ollama.com/install.sh | sh
2
下载 DeepSeek-R1 7B 模型
拉取适合 8GB 显存的量化版本模型
ollama pull deepseek-r1:7b
3
下载 Embedding 模型
拉取 nomic-embed-text 用于文本向量化
ollama pull nomic-embed-text
4
安装 Cherry Studio
下载并安装 Cherry Studio 客户端,配置本地 Ollama 接口
# 下载地址:https://github.com/CherryHQ/cherry-studio/releases
# 配置 Ollama 地址:http://localhost:11434
5
创建知识库
在 Cherry Studio 中创建知识库,导入地震安评和合同文档
# 1. 点击"知识库" → "新建知识库"
# 2. 选择 Embedding 模型:nomic-embed-text
# 3. 上传文档:支持 PDF、Word、TXT 格式
# 4. 等待向量化完成
6
开始智能问答
选择配置了知识库的模型,开始基于本地知识库的智能问答
# 在对话框中 @知识库 或选择知识库关联
# 输入问题,系统将基于本地知识库返回答案
待改进方向
基于当前部署实践的经验总结与优化建议(含GIS空间能力升级)
1
知识矢量化能力需加强
当前使用的基础文本切分方式较为简单,对于复杂文档(如表格、图表混排)的处理能力不足,检索精度有待提升。
💡 优化建议
引入 Unstructured 或 LlamaParse 进行文档智能解析,采用语义切分(Semantic Chunking)替代固定长度切分,添加文档结构元数据。
2
LLM 模型能力受限
7B 参数的 DeepSeek-R1 在复杂推理和长文本理解方面能力有限,且推理速度受硬件限制,难以满足高并发需求。
💡 优化建议
升级至 32GB+ 显存设备运行 32B 或 70B 模型;或采用混合方案,本地处理敏感数据,非敏感查询调用云端 API(如 DeepSeek-V3)。
3
GIS空间数据向量化与检索 ⭐核心
当前GIS数据(GeoJSON/SHP/GDB)仅以原始文件存储,未进入向量索引,无法实现"某坐标附近的水利设施"等空间语义查询。
💡 优化建议(2024-2025技术趋势)
① 双向量表示:将GIS要素转为"文本描述向量(768维)+空间坐标向量(2D)",存入ChromaDB多集合
② 空间索引:采用H3六边形网格或Geohash建立空间索引,支持快速范围查询
③ 混合检索:文本语义检索+空间最近邻检索融合(RRF排序),实现自然语言地理查询
② 空间索引:采用H3六边形网格或Geohash建立空间索引,支持快速范围查询
③ 混合检索:文本语义检索+空间最近邻检索融合(RRF排序),实现自然语言地理查询
4
空间分析与GeoAI推理能力 ⭐核心
缺乏空间关系推理能力,无法回答"哪条河流流经的堤坝最多"、"缓冲区内的地震风险点"等空间分析问题。
💡 优化建议(2024-2025技术趋势)
① Spatial RAG架构:集成GeoPandas/Shapely处理空间关系,LLM生成空间分析代码并执行
② GeoLLM集成:使用支持地理推理的模型(如GPT-4o/Claude-3.5-Sonnet或开源K2-GeoLLM)
③ Function Calling:定义空间查询工具(spatial_search/buffer_analysis/intersect_query)供模型调用
② GeoLLM集成:使用支持地理推理的模型(如GPT-4o/Claude-3.5-Sonnet或开源K2-GeoLLM)
③ Function Calling:定义空间查询工具(spatial_search/buffer_analysis/intersect_query)供模型调用
5
地图可视化与交互查询 ⭐核心
当前纯文本交互无法直观展示空间查询结果,缺少地图选点、画框查询、半径检索等GIS标准交互能力。
💡 优化建议(2024-2025技术趋势)
① 前端地图引擎:集成MapLibre GL(开源无token)或Leaflet,叠加天地图/OSM底图
② 交互查询组件:支持画框查询(BBOX)、圆形缓冲区(Circle Buffer)、多边形选择
③ 结果可视化:GeoJSON渲染+热力图+聚类,支持点击要素查看AI生成的属性摘要
② 交互查询组件:支持画框查询(BBOX)、圆形缓冲区(Circle Buffer)、多边形选择
③ 结果可视化:GeoJSON渲染+热力图+聚类,支持点击要素查看AI生成的属性摘要
6
多源异构数据融合
文档知识(PDF)、空间数据(GIS)、结构化数据(数据库)各自独立,无法联合回答"某项目所在区域的地震安评要求"。
💡 优化建议
① 统一知识图谱:构建GeoKnowledgeEntity统一实体模型,关联文档条款与空间要素
② PostGIS+pgvector:使用PostgreSQL同时存储空间几何和向量嵌入,SQL统一查询
③ 跨源RAG:单次查询同时检索文档、GIS特征、数据库记录,融合生成综合答案
② PostGIS+pgvector:使用PostgreSQL同时存储空间几何和向量嵌入,SQL统一查询
③ 跨源RAG:单次查询同时检索文档、GIS特征、数据库记录,融合生成综合答案
7
增加 WebUI 团队协作
Cherry Studio 为单机版客户端,缺少 Web 访问能力和团队协作功能,知识库难以共享和统一管理。
💡 优化建议
部署 Dify 或自建 Web 服务,提供浏览器访问入口;集成企业微信/飞书登录,实现团队成员权限管理和知识库共享。
空间智能升级路线图
Phase 1
基础GIS向量化
2-3周
- GeoJSON/SHP自动向量化管道
- ChromaDB多集合结构扩展
- 地理实体识别模块(NER)
- 基础空间属性联合查询
技术栈:GeoPandas + SentenceTransformer + ChromaDB
Phase 2
空间索引与可视化
2-3周
- H3/Geohash空间索引集成
- 范围查询API(半径/矩形/多边形)
- 空间-语义融合排序(RRF)
- MapLibre GL地图可视化
技术栈:H3-py + MapLibre GL + PostGIS
Phase 3
GeoAI推理能力
3-4周
- GeoLLM集成(GPT-4o/Claude)
- Function Calling空间工具链
- 自然语言地理查询解析
- 空间分析(缓冲区/叠加/网络)
技术栈:LangChain + Shapely + GeoLLM API
Phase 4
空间智能体
4-6周
- 知识图谱(实体关系抽取)
- 时序GIS数据支持
- 多模态查询(文本+地图+语音)
- 自主空间决策Agent
技术栈:Neo4j + TimescaleDB + Multi-Agent
空间技术选型对比(2024-2025)
| 技术领域 | 方案A(推荐) | 方案B(替代) | 选择理由 |
|---|---|---|---|
| 向量数据库 | ChromaDB升级 | Milvus / PGVector | 保持现有架构,支持多集合,升级成本低 |
| 空间数据库 | PostGIS + pgvector | GeoMesa / HBase | 成熟稳定,SQL生态完善,同时支持空间+向量 |
| 空间索引 | H3六边形网格 | Geohash / S2 | Uber开源,精度分级清晰,聚合分析友好 |
| 地图引擎 | MapLibre GL | Leaflet / Cesium | 开源无token限制,矢量渲染性能优异 |
| GeoAI模型 | GPT-4o / Claude-3.5 | K2-GeoLLM / 自研LoRA | 地理推理能力强,API稳定,无需训练成本 |
| 空间计算 | GeoPandas + Shapely | ArcPy / GDAL | Python原生,与AI生态无缝集成 |