graph TD
A[用户输入GitHub/GitLab/Bitbucket仓库] --> AA{私有仓库?}
AA -->|是| AB[添加访问令牌]
AA -->|否| B[克隆仓库]
AB --> B
B --> C[分析代码结构]
C --> D[创建代码嵌入]
D --> M{选择模型提供商}
M -->|Google Gemini| E1[使用Gemini生成]
M -->|OpenAI| E2[使用OpenAI生成]
M -->|OpenRouter| E3[使用OpenRouter生成]
M -->|本地Ollama| E4[使用Ollama生成]
E1 --> E[生成文档]
E2 --> E
E3 --> E
E4 --> E
D --> F[创建可视化图表]
E --> G[组织为Wiki]
F --> G
G --> H[交互式DeepWiki]
classDef process stroke-width:2px;
classDef data stroke-width:2px;
classDef result stroke-width:2px;
classDef decision stroke-width:2px;
class A,D data;
class AA,M decision;
class B,C,E,F,G,AB,E1,E2,E3,E4 process;
class H result;
DeepWiki 可以配置为在授权模式下运行,在该模式下,生成 Wiki 需要有效的授权码。如果您想控制谁可以使用生成功能,这将非常有用。
限制使用前端页面生成wiki并保护已生成页面的缓存删除,但无法完全阻止直接访问 API 端点生成wiki。主要目的是为了保护管理员已生成的wiki页面,防止被访问者重新生成。
DeepWiki-Open
DeepWiki可以为任何GitHub、GitLab或BitBucket代码仓库自动创建美观、交互式的Wiki!只需输入仓库名称,DeepWiki将:
English | 简体中文 | 繁體中文 | 日本語 | Español | 한국어 | Tiếng Việt | Português Brasileiro | Français | Русский
✨ 特点
🚀 快速开始(超级简单!)
选项1:使用Docker
(上述 Docker 命令以及
docker-compose.yml配置会挂载您主机上的~/.adalflow目录到容器内的/root/.adalflow。此路径用于存储:~/.adalflow/repos/)~/.adalflow/databases/)~/.adalflow/wikicache/)这确保了即使容器停止或移除,您的数据也能持久保存。)
选项2:手动设置(推荐)
步骤1:设置API密钥
在项目根目录创建一个
.env文件,包含以下密钥:步骤2:启动后端
步骤3:启动前端
步骤4:使用DeepWiki!
https://github.com/openai/codex、https://github.com/microsoft/autogen、https://gitlab.com/gitlab-org/gitlab或https://bitbucket.org/redradish/atlassian_app_versions)🔍 工作原理
DeepWiki使用AI来:
graph TD A[用户输入GitHub/GitLab/Bitbucket仓库] --> AA{私有仓库?} AA -->|是| AB[添加访问令牌] AA -->|否| B[克隆仓库] AB --> B B --> C[分析代码结构] C --> D[创建代码嵌入] D --> M{选择模型提供商} M -->|Google Gemini| E1[使用Gemini生成] M -->|OpenAI| E2[使用OpenAI生成] M -->|OpenRouter| E3[使用OpenRouter生成] M -->|本地Ollama| E4[使用Ollama生成] E1 --> E[生成文档] E2 --> E E3 --> E E4 --> E D --> F[创建可视化图表] E --> G[组织为Wiki] F --> G G --> H[交互式DeepWiki] classDef process stroke-width:2px; classDef data stroke-width:2px; classDef result stroke-width:2px; classDef decision stroke-width:2px; class A,D data; class AA,M decision; class B,C,E,F,G,AB,E1,E2,E3,E4 process; class H result;🛠️ 项目结构
🤖 提问和深度研究功能
提问功能
提问功能允许您使用检索增强生成(RAG)与您的仓库聊天:
深度研究功能
深度研究通过多轮研究过程将仓库分析提升到新水平:
要使用深度研究,只需在提交问题前在提问界面中切换”深度研究”开关。
📱 截图
演示视频
观看DeepWiki实际操作!
❓ 故障排除
API密钥问题
.env文件位于项目根目录并包含所需的API密钥连接问题
生成问题
常见解决方案
🤝 贡献
欢迎贡献!随时:
📄 许可证
本项目根据MIT许可证授权 - 详情请参阅LICENSE文件。
⭐ 星标历史
🤖 基于提供者的模型选择系统
DeepWiki 现在实现了灵活的基于提供者的模型选择系统,支持多种 LLM 提供商:
支持的提供商和模型
gemini-2.5-flash,还支持gemini-2.5-flash-lite、gemini-2.5-pro等gpt-5-nano,还支持gpt-5,4o等llama3环境变量
每个提供商需要相应的 API 密钥环境变量:
为服务提供者设计的自定义模型选择
自定义模型选择功能专为需要以下功能的服务提供者设计:
使用者可以通过从服务提供者预定义选项中选择或在前端界面中输入自定义模型标识符来实现其模型产品。
为企业私有渠道设计的基础 URL 配置
OpenAI 客户端的 base_url 配置主要为拥有私有 API 渠道的企业用户设计。此功能:
即将推出:在未来的更新中,DeepWiki 将支持一种模式,用户需要在请求中提供自己的 API 密钥。这将允许拥有私有渠道的企业客户使用其现有的 API 安排,而不是与 DeepWiki 部署共享凭据。
环境变量
每个提供商需要其相应的API密钥环境变量:
如果不使用ollama模式,那么需要配置OpenAI API密钥用于embeddings。其他密钥只有配置并使用使用对应提供商的模型时才需要。
授权模式
DeepWiki 可以配置为在授权模式下运行,在该模式下,生成 Wiki 需要有效的授权码。如果您想控制谁可以使用生成功能,这将非常有用。 限制使用前端页面生成wiki并保护已生成页面的缓存删除,但无法完全阻止直接访问 API 端点生成wiki。主要目的是为了保护管理员已生成的wiki页面,防止被访问者重新生成。
要启用授权模式,请设置以下环境变量:
DEEPWIKI_AUTH_MODE: 将此设置为true或1。启用后,前端将显示一个用于输入授权码的字段。DEEPWIKI_AUTH_CODE: 将此设置为所需的密钥。限制使用前端页面生成wiki并保护已生成页面的缓存删除,但无法完全阻止直接访问 API 端点生成wiki。如果未设置
DEEPWIKI_AUTH_MODE或将其设置为false(或除true/1之外的任何其他值),则授权功能将被禁用,并且不需要任何代码。配置文件
DeepWiki使用JSON配置文件管理系统的各个方面:
**
generator.json**:文本生成模型配置**
embedder.json**:嵌入模型和文本处理配置**
repo.json**:仓库处理配置默认情况下,这些文件位于
api/config/目录中。您可以使用DEEPWIKI_CONFIG_DIR环境变量自定义它们的位置。面向服务提供商的自定义模型选择
自定义模型选择功能专为需要以下功能的服务提供者设计:
使用者可以通过从服务提供者预定义选项中选择或在前端界面中输入自定义模型标识符来实现其模型产品。
为企业私有渠道设计的基础 URL 配置
OpenAI 客户端的 base_url 配置主要为拥有私有 API 渠道的企业用户设计。此功能:
即将推出:在未来的更新中,DeepWiki 将支持一种模式,用户需要在请求中提供自己的 API 密钥。这将允许拥有私有渠道的企业客户使用其现有的 API 安排,而不是与 DeepWiki 部署共享凭据。
🧩 使用 OpenAI 兼容的 Embedding 模型(如阿里巴巴 Qwen)
如果你希望使用 OpenAI 以外、但兼容 OpenAI 接口的 embedding 模型(如阿里巴巴 Qwen),请参考以下步骤:
api/config/embedder_openai_compatible.json的内容替换api/config/embedder.json。.env文件中,配置相应的环境变量,例如:这样即可无缝切换到 OpenAI 兼容的 embedding 服务,无需修改代码。