DeepWiki-Open Ollama本地部署:完全离线的AI文档生成方案
你是否还在为代码文档生成依赖外部API而烦恼?担心数据隐私泄露?本文将详细介绍如何通过Ollama在本地部署DeepWiki-Open,实现完全离线的AI文档生成方案,无需依赖任何外部服务,保护你的代码数据安全。读完本文,你将掌握DeepWiki-Open的本地部署流程、模型配置方法以及常见问题解决策略。
方案概述
DeepWiki-Open是一个开源的AI驱动的Wiki生成器,专为GitHub仓库设计。通过Ollama本地部署,我们可以实现完全离线的文档生成,避免API调用成本,同时保护代码隐私。该方案适用于需要在隔离网络环境中工作的开发团队,或对数据安全有严格要求的组织。
硬件准备与环境要求
在开始部署前,请确保你的设备满足以下最低要求:
- CPU: 4+ cores
- RAM: 8GB minimum,推荐16GB+
- 存储: 10GB+ 可用空间(用于模型存储)
- GPU: 可选,但推荐用于加速处理
部署步骤
1. 安装Ollama
Ollama是一个轻量级的本地LLM管理工具,支持多种操作系统。
Windows/macOS
从Ollama官方网站下载对应系统的安装程序,按照向导完成安装。
Linux
在终端中执行以下命令:
curl -fsSL https://ollama.com/install.sh | sh
2. 下载所需模型
打开终端,执行以下命令下载DeepWiki所需的模型:
ollama pull nomic-embed-text
ollama pull qwen3:1.7b
其中,nomic-embed-text是用于代码理解的嵌入模型,qwen3:1.7b是用于文档生成的语言模型。
3. 获取DeepWiki-Open代码
克隆项目仓库:
git clone https://gitcode.com/gh_mirrors/de/deepwiki-open
cd deepwiki-open
4. 配置环境
创建并配置.env文件:
# 在项目根目录创建.env文件
touch .env
编辑.env文件,添加以下内容:
PORT=8001
# 如果Ollama不在本地运行,需指定OLLAMA_HOST
# OLLAMA_HOST=your_ollama_host
配置本地嵌入模型:
cp api/config/embedder.ollama.json.bak api/config/embedder.json
5. 启动服务
后端启动
pip install -r api/requirements.txt
python -m api.main
前端启动
npm install
npm run dev
6. Docker一键部署(推荐)
对于更便捷的部署体验,可以使用项目提供的Dockerfile-ollama-local:
# 构建镜像
docker build -f Dockerfile-ollama-local -t deepwiki:ollama-local .
# 运行容器
docker run -p 3000:3000 -p 8001:8001 --name deepwiki \
-v ~/.adalflow:/root/.adalflow \
deepwiki:ollama-local
Dockerfile-ollama-local文件已经预先配置了所有依赖和启动脚本,可以大大简化部署流程。
使用方法
- 打开浏览器,访问 http://localhost:3000
- 输入GitHub仓库URL(或本地仓库路径)
- 勾选"使用本地Ollama模型"选项
- 点击"Generate Wiki"开始文档生成
高级配置
模型选择与优化
DeepWiki允许你根据需求更换不同的模型。编辑配置文件 api/config/generator.json:
"generator_ollama": {
"model_client": "OllamaClient",
"model_kwargs": {
"model": "qwen3:1.7b", // 更改为其他模型
"options": {
"temperature": 0.7,
"top_p": 0.8
}
}
}
同样,你也可以修改嵌入模型配置 api/config/embedder.json:
"embedder_ollama": {
"model_client": "OllamaClient",
"model_kwargs": {
"model": "nomic-embed-text" // 更改为其他嵌入模型
}
}
以下是一些推荐的模型选择:
| Model | 大小 | 速度 | 质量 | 适用场景 |
|---|---|---|---|---|
| phi3:mini | 1.3GB | 快 | 良好 | 小型项目,快速测试 |
| qwen3:1.7b | 3.8GB | 中等 | 较好 | 默认选择,平衡速度与质量 |
| llama3:8b | 8GB | 慢 | 优秀 | 复杂项目,详细分析 |
本地代码库分析
要分析本地代码库,可使用以下Docker命令挂载代码目录:
docker run -p 3000:3000 -p 8001:8001 --name deepwiki \
-v ~/.adalflow:/root/.adalflow \
-v /path/to/your/repo:/app/local-repos/repo-name \
deepwiki:ollama-local
在界面中使用路径/app/local-repos/repo-name访问本地代码库。
工作原理
DeepWiki-Open与Ollama的集成工作流程如下:
- 用户输入仓库URL或本地路径
- 系统使用
nomic-embed-text模型对代码进行嵌入处理 - 嵌入后的代码片段存储在本地向量数据库
- 用户查询时,系统检索相关代码片段
qwen3:1.7b模型基于检索结果生成自然语言文档
常见问题解决
"无法连接到Ollama服务器"
- 确保Ollama服务正在后台运行,可通过
ollama list命令检查 - 验证Ollama是否运行在默认端口(11434)
- 尝试重启Ollama服务
生成速度慢
- 考虑使用更小的模型,如
phi3:mini - 关闭其他内存密集型应用
- 如果可能,添加GPU加速
内存不足错误
- 减少同时处理的文件数量
- 使用更小的模型
- 增加系统内存
总结与展望
通过Ollama本地部署DeepWiki-Open,我们实现了完全离线的AI文档生成能力,既保护了代码隐私,又避免了API调用成本。虽然本地模型在速度和质量上可能不如云服务,但对于大多数项目而言,这是一个免费且隐私优先的优秀替代方案。
未来,随着本地LLM技术的不断进步,DeepWiki-Open将进一步优化模型选择和资源利用,为用户提供更好的离线文档生成体验。
官方文档:Ollama-instruction.md 部署配置:Dockerfile-ollama-local 项目源码:api/
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0153- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112




