简介:本文详细介绍Windows环境下Ollama的下载安装、DeepSeek模型本地部署、UI可视化配置及个人知识库搭建的全流程,提供分步骤操作指南和常见问题解决方案,助力开发者快速构建本地化AI应用。
Ollama官方提供Windows版安装包(.exe格式),建议通过GitHub Release页面下载最新稳定版本。避免使用第三方修改版,以防安全风险。
D:\Ollama)OLLAMA_HOME环境变量,指向安装目录ollama version,应返回版本号(如v0.3.15)ollama serve --port 11440修改端口当前支持版本:
通过命令行下载:
ollama pull deepseek-r1:7b # 下载7B版本ollama pull deepseek-v2:67b # 下载67B版本
ollama run deepseek-r1:7b --gpu-layers 50 # 启用50%层GPU加速
ollama serve --model deepseek-r1:7b --host 0.0.0.0 --port 8080
--quantize q4_k_m参数减少显存占用(约降低50%)--mmap参数避免重复加载模型--devices 0,1指定GPU设备ID推荐方案:
# app.pyimport streamlit as stimport requestsst.title("DeepSeek本地交互界面")user_input = st.text_input("请输入问题:")if st.button("发送"):response = requests.post("http://localhost:8080/api/generate",json={"prompt": user_input}).json()st.write("AI回复:", response["response"])
knowledge_base/├── docs/ # 原始文档│ ├── pdf/│ ├── docx/│ └── txt/├── embeddings/ # 向量存储└── config.json # 索引配置
格式转换:使用unstructured库统一转为文本
from unstructured.partition.auto import partitiontext = partition("input.pdf")
向量嵌入:通过Ollama的嵌入模型生成向量
response = ollama_client.generate(model="bge-small-en-v1.5",prompt="将以下文本转为向量:\n" + text)
索引构建:使用chroma或pgvector存储
from chromadb import Clientclient = Client()collection = client.create_collection("deepseek_kb")collection.add(documents=[text],embeddings=[vector],ids=["doc1"])
def search_knowledge(query):query_vec = get_embedding(query) # 获取查询向量results = collection.query(query_embeddings=[query_vec],n_results=3)return results["documents"]
@echo off:: 启动Ollama服务start /B cmd /c ollama serve --model deepseek-r1:7b --port 8080:: 启动知识库服务cd knowledge_basepython indexer.py # 重建索引:: 启动Web界面cd ../webstreamlit run app.py
embeddings/目录nvidia-smi观察GPU利用率| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| 模型加载失败 | 显存不足 | 减少--gpu-layers参数 |
| API无响应 | 端口冲突 | 修改--port参数 |
| 检索结果差 | 索引未更新 | 运行python indexer.py --force |
| 界面乱码 | 编码问题 | 在Streamlit中设置st.set_option('deprecation.showPyplotGlobalUse', False) |
通过本文指南,开发者可在Windows环境下快速构建完整的本地化AI知识管理系统,兼顾性能与易用性。实际部署时建议先在测试环境验证,再逐步迁移到生产环境。