
AI 应用人工智能RAG文档【免费下载链接】deepwiki-openOpen Source DeepWiki: AI-Powered Wiki Generator for GitHub/Gitlab/Bitbucket Repositories. Join the discord: https://discord.gg/gMwThUMeme项目地址https://gitcode.com/gh_mirrors/de/deepwiki-open点击查看免费下载DeepWiki-Open 是一个开源的 AI Wiki 生成器只需输入任意 GitHub、GitLab 或 Bitbucket 仓库地址它便会自动克隆代码、分析结构、生成文档与 Mermaid 图表并组装成可交互浏览的 Wiki同时提供基于 RAG 的 Ask 问答与 DeepResearch 深度研究能力。本文以仓库的 README.fr.md 为骨架结合api/后端源码与api/config/下的真实配置文件系统讲解从快速部署到模型选型、Embedding 替换、日志、鉴权与故障排查的完整实战路径。项目概览输入仓库地址AI 自动生成交互式 WikiDeepWiki-Open 是作者对 DeepWiki 的独立开源实现面向 GitHub、GitLab 与 Bitbucket 仓库其核心流程为分析代码结构生成完整的技术文档创建可视化图表Mermaid解释代码运行方式将所有内容组织为易于导航的 Wiki生成 Codemap提供以代码为中心的引导式浏览。从 api/services/wiki/tasks.py 的状态机可以看到一次生成任务会依次经历INDEXING索引→DETERMINING_STRUCTURE确定结构→GENERATING生成页面→COMPLETED的状态流转与 README 描述的步骤一一对应。核心功能特性即时文档化数秒内将 GitHub、GitLab、Bitbucket 仓库转换为 Wiki私有仓库支持通过 Personal Access Token 安全访问智能分析借助 AI 理解代码结构与关系优雅图表自动生成 Mermaid 图可视化架构与数据流前端渲染组件见 src/components/Mermaid.tsx轻松导航简单直观的交互界面Ask 功能基于 RAG 向仓库提问DeepResearch多步骤研究流程探索复杂主题多模型供应商支持 Google Gemini、OpenAI、OpenRouter、Azure OpenAI 与本地 Ollama。快速开始两种启动方式方式一Docker 一键启动# 克隆仓库 git clone https://github.com/AsyncFuncAI/deepwiki-open.git cd deepwiki-open # 创建 .env 文件并写入 API 密钥 echo GOOGLE_API_KEYvotre_cle_google .env echo OPENAI_API_KEYvotre_cle_openai .env # 可选OpenRouter 密钥 echo OPENROUTER_API_KEYvotre_cle_openrouter .env # 可选自定义 Ollama 主机 echo OLLAMA_HOSTvotre_hote_ollama .env # 可选Azure OpenAI echo AZURE_OPENAI_API_KEYvotre_cle_azure .env echo AZURE_OPENAI_ENDPOINTvotre_endpoint .env echo AZURE_OPENAI_VERSIONversion_api .env # 用 Docker Compose 启动 docker-compose updocker-compose.yml中预置了portsAPI 默认 8001、前端 3000、env_file: .env、数据持久化卷~/.adalflow:/root/.adalflow与日志卷./api/logs:/app/api/logs还包含mem_limit: 6g的内存上限和针对/health的健康检查。与 Ollama 本地联动的详细说明见 Ollama-instruction.md。各密钥获取位置Google AI Studio 获取 Google API KeyOpenAI Platform 获取 OpenAI API KeyAzure Portal 创建 Azure OpenAI 资源后可获取 API Key、Endpoint 与 API 版本。方式二手动安装推荐第 1 步配置 API 密钥。在项目根目录创建.envGOOGLE_API_KEYvotre_cle_google OPENAI_API_KEYvotre_cle_openai # 可选使用 OpenRouter 模型 OPENROUTER_API_KEYvotre_cle_openrouter # 可选使用 Azure OpenAI AZURE_OPENAI_API_KEYvotre_cle_azure_openai AZURE_OPENAI_ENDPOINTvotre_endpoint_azure_openai AZURE_OPENAI_VERSIONvotre_version_azure_openai # 可选远程 Ollama 主机默认 http://localhost:11434 OLLAMA_HOSTvotre_hote_ollama第 2 步启动后端# 安装 Python 依赖 python -m pip install poetry2.0.1 poetry install -C api # 启动 API 服务器 python -m api.main入口 api/main.py 会读取PORT环境变量默认 8001以uvicorn启动 FastAPI 应用并开启热重载开发模式下还通过 monkey-patch 让 watchfiles 仅监视api目录下的子目录与.py文件、排除logs目录。第 3 步启动前端# 安装 JS 依赖 npm install # 或 yarn install # 启动 Web 服务 npm run dev # 或 yarn dev第 4 步使用 DeepWiki浏览器打开http://localhost:3000输入 GitHub、GitLab 或 Bitbucket 仓库地址如https://github.com/openai/codex、https://github.com/microsoft/autogen、https://gitlab.com/gitlab-org/gitlab、https://bitbucket.org/redradish/atlassian_app_versions私有仓库点击「 添加访问令牌」输入 GitHub/GitLab Personal Access Token点击「生成 Wiki」等待完成。工作原理从克隆到交互式 Wiki 的完整流水线DeepWiki 使用 AI 完成以下链路克隆并分析 GitHub/GitLab/Bitbucket 仓库私有仓库通过访问令牌鉴权为代码创建 Embedding支撑智能检索使用上下文感知的 AIGoogle Gemini、OpenAI、OpenRouter、Azure OpenAI 或本地 Ollama生成文档创建可视化图表解释代码关系组织为结构化 Wiki通过 Ask 功能实现与仓库的智能问答通过 DeepResearch 提供深度研究能力。从源码看Embedding 与检索的落地实现在 api/rag/rag.pyprepare_retriever会调用DatabaseManager.prepare_database完成克隆、分块与向量化随后对文档向量做一致性校验剔除维度不匹配的文档最后用 FAISSRetriever 构建检索器检索参数top_k由 embedder.json 中的retriever节点控制默认 20。模型选择系统多供应商灵活切换DeepWiki 实现了灵活的模型选择系统支持多个 LLM 供应商且无需修改代码即可切换。支持的供应商与默认模型Google默认gemini-2.5-flash另支持gemini-2.5-flash-lite、gemini-2.5-pro等OpenAI默认gpt-5-nano另支持gpt-5、4o等OpenRouter通过统一 API 访问多模型含 Claude、Llama、Mistral 等Azure OpenAI默认gpt-4o另支持o4-mini等Ollama支持本地运行的开源模型如llama3。api/config/generator.json 给出了每个供应商的完整模型清单与采样参数。例如 Google 系模型配置为temperature: 1.0、top_p: 0.8、top_k: 20OpenAI 的gpt-4o为temperature: 0.7、top_p: 0.8而 Ollama 使用独立的options结构可额外设置num_ctx如qwen3:1.7b为 32000llama3:8b为 8000。此外generator.json还内置了dashscope通义千问 qwen-plus/qwen-turbo/deepseek-r1与bedrockClaude 3 系列、Titan、Command R、J2 Ultra等供应商。供应商对应的环境变量# API Keys GOOGLE_API_KEYvotre_cle_google # 使用 Google Gemini 模型必需 OPENAI_API_KEYvotre_cle_openai # 使用 OpenAI 模型必需 OPENROUTER_API_KEYvotre_cle_openrouter # 使用 OpenRouter 模型必需 AZURE_OPENAI_API_KEYvotre_cle_azure_openai # 使用 Azure OpenAI 必需 AZURE_OPENAI_ENDPOINTvotre_endpoint_azure_openai # 使用 Azure OpenAI 必需 AZURE_OPENAI_VERSIONvotre_version_azure_openai # 使用 Azure OpenAI 必需 # 自定义 OpenAI API 端点 OPENAI_BASE_URLhttps://custom-api-endpoint.com/v1 # 可选 # 自定义 Ollama 主机 OLLAMA_HOSTvotre_hote_ollama # 可选Ollama 非本地时设置默认 http://localhost:11434 # 配置目录 DEEPWIKI_CONFIG_DIR/chemin/vers/dossier/de/configuration # 可选自定义配置存储目录模型解析逻辑见 api/config.py 的get_model_config先按providers表找到供应商再取其default_model最后从models中取出对应采样参数合并进model_kwargsOllama 特殊拼接options结构。供应商客户端类的映射由CLIENT_CLASSES与_DEFAULT_PROVIDER_MAP见 api/config.py完成客户端实现集中在 api/clients。三个核心 JSON 配置文件默认位于api/config/目录可用DEEPWIKI_CONFIG_DIR环境变量整体迁移generator.json文本生成模型配置。定义可用供应商Google、OpenAI、OpenRouter、Azure、Ollama、Bedrock、Dashscope 等指定各供应商的默认/可选模型并含temperature、top_p等模型专属参数embedder.jsonEmbedding 模型与文本处理配置。定义向量存储使用的 Embedding 模型、RAG 检索器配置top_k以及文档分块的text_splitter参数按word切分chunk_size350、chunk_overlap100repo.json仓库管理配置。包含排除特定文件与目录的过滤器、仓库大小上限与处理规则max_size_mb为 50000。api/config.py 的load_json_config会先依据DEEPWIKI_CONFIG_DIR定位配置文件未设置则回退到api/config/随后通过replace_env_placeholders用正则\$\{([A-Z0-9_])\}递归替换 JSON 中所有${ENV_VAR}形式的占位符——这正是下文 Embedding 替换机制能零代码切换的基础。服务商自定义模型选择该功能专为需要以下能力的服务提供商设计在组织内部向用户提供多种 AI 模型选择在 LLM 格局快速演变时无需改代码即可适配支持不在预置列表中的专用/微调模型。服务商既可以从预置选项中挑选也可以在界面中直接输入自定义模型 ID 来完成模型落地。企业私有通道的 base_url 配置OpenAI 客户端的base_url配置主要面向拥有私有 API 通道的企业用户允许连接企业私有或专属 API 端点允许组织使用自托管或定制部署的 LLM 服务支持与兼容 OpenAI API 的第三方服务集成。即将推出后续版本将支持用户在请求中自带 API 密钥的模式使拥有私有通道的客户企业可以沿用既有 API 协议而无需向 DeepWiki 部署方共享凭证。使用 OpenAI 兼容的 Embedding 模型如阿里 Qwen若希望使用兼容 OpenAI API 的 Embedding 服务例如阿里云通义千问按以下步骤操作用api/config/embedder_openai_compatible.json.bak的内容替换api/config/embedder.json在项目根目录.env中设置对应环境变量例如OPENAI_API_KEYvotre_cle_api OPENAI_BASE_URLvotre_endpoint_compatible_openai程序会自动将embedder.json中的${OPENAI_API_KEY}、${OPENAI_BASE_URL}占位符替换为环境变量值。该模板文件api/config/embedder.openai_compatible.json.bak展示了关键写法initialize_kwargs内通过${OPENAI_API_KEY}与${OPENAI_BASE_URL}占位符注入密钥与端点模型为text-embedding-v3、dimensions: 256batch_size为 10其余retrievertop_k20、text_splitter 350/100与默认保持一致。替换后无需任何代码改动即可切换到任意 OpenAI 兼容的 Embedding 服务。补充说明默认 embedder.json 内置了四套 Embedding 方案——OpenAItext-embedding-3-small256 维batch 500、Ollamanomic-embed-text、Googlegemini-embedding-001batch 100与 Bedrockamazon.titan-embed-text-v2:0256 维DEEPWIKI_EMBEDDER_TYPE环境变量可控制选型相关判定函数见 api/config.py。日志与诊断DeepWiki 使用 Python 内置logging模块输出诊断信息可通过环境变量控制日志级别与文件落盘变量说明默认值LOG_LEVEL日志级别DEBUG、INFO、WARNING、ERROR、CRITICALINFOLOG_FILE_PATH日志文件路径设置后日志将写入该文件api/logs/application.log开启调试日志并输出到自定义文件export LOG_LEVELDEBUG export LOG_FILE_PATH./debug.log python -m api.main或用 Docker ComposeLOG_LEVELDEBUG LOG_FILE_PATH./debug.log docker-compose up在 api/logger.py 的实现中setup_logging优先加载当前目录下的log_cfg.json存在时否则读取LOG_FILE_PATH构建默认配置控制台 StreamHandler 加RotatingFileHandler滚动文件日志单文件默认 10MB、保留 5 个备份可由LOG_MAX_SIZE、LOG_BACKUP_COUNT调整。Docker Compose 运行时容器内api/logs通过 volume 挂载到宿主机./api/logs保证重启后日志持久化。也可以把配置写入.envLOG_LEVELDEBUG LOG_FILE_PATH./debug.log然后直接执行docker-compose up日志路径安全提示生产环境中请确保api/logs目录与自定义日志路径具备合适的文件系统权限与访问控制。应用会确保LOG_FILE_PATH位于项目api/logs目录内以防止路径穿越或未授权写入。高级配置环境变量全表变量说明必填备注GOOGLE_API_KEYGoogle Gemini 生成用密钥否仅使用 Google Gemini 模型时需要OPENAI_API_KEYOpenAI Embedding 与生成用密钥是即使不使用 OpenAI 模型也需要因为 Embedding 依赖它OPENROUTER_API_KEYOpenRouter 备选模型密钥否仅使用 OpenRouter 模型时需要AZURE_OPENAI_API_KEYAzure OpenAI 密钥否仅使用 Azure OpenAI 模型时需要AZURE_OPENAI_ENDPOINTAzure OpenAI 端点否仅使用 Azure OpenAI 模型时需要AZURE_OPENAI_VERSIONAzure OpenAI 版本否仅使用 Azure OpenAI 模型时需要OLLAMA_HOSTOllama 主机默认 http://localhost:11434否仅使用外部 Ollama 服务器时需要PORTAPI 服务器端口默认 8001否API 与前端同机部署时需同步修改SERVER_BASE_URL的端口SERVER_BASE_URLAPI 服务器基础 URL默认 http://localhost:8001否DEEPWIKI_AUTH_MODE设为true或1开启锁定模式否默认false开启后需设置DEEPWIKI_AUTH_CODEDEEPWIKI_AUTH_CODE锁定模式下 Wiki 生成所需的授权码否仅DEEPWIKI_AUTH_MODE为true/1时生效若不使用 Ollama 模式则必须配置 OpenAI API 密钥用于 Embedding其余密钥仅在使用对应供应商模型时必需。另外api/config.py顶部还会读取DEEPWIKI_EMBEDDER_TYPE默认 openai、AWS 系变量Bedrock 用与LITELLM_API_KEY等扩展变量。锁定模式Auth ModeDeepWiki 可配置为锁定模式Wiki 生成必须携带有效授权码适合需要控制谁可以使用生成功能的场景。它能限制前端初始化并保护缓存删除但无法完全阻止通过 API 端点直达后端的生成。启用方式设置以下环境变量——DEEPWIKI_AUTH_MODE设为true或1。开启后界面显示授权码输入框DEEPWIKI_AUTH_CODE设为期望的密钥。限制前端初始化并保护缓存删除。若DEEPWIKI_AUTH_MODE未设置或为false或其他非true/1值鉴权功能关闭无需输入任何代码。源码实现上api/config.py 将DEEPWIKI_AUTH_MODE归一化为布尔值true/1/t视为开启api/routers/auth.py 提供/auth/status返回auth_required与/auth/validate比对DEEPWIKI_AUTH_CODE与提交的 code两个接口前端通过 src/app/api/auth/status/route.ts 与 validate/route.ts 与之对接。Docker 部署进阶运行官方容器# 从 GitHub Container Registry 拉取镜像 docker pull ghcr.io/asyncfuncai/deepwiki-open:latest # 携带环境变量运行容器 docker run -p 8001:8001 -p 3000:3000 \ -e GOOGLE_API_KEYvotre_cle_google \ -e OPENAI_API_KEYvotre_cle_openai \ -e OPENROUTER_API_KEYvotre_cle_openrouter \ -e OLLAMA_HOSTvotre_hote_ollama \ -e AZURE_OPENAI_API_KEYvotre_cle_azure_openai \ -e AZURE_OPENAI_ENDPOINTvotre_endpoint_azure_openai \ -e AZURE_OPENAI_VERSIONvotre_version_azure_openai \ -v ~/.adalflow:/root/.adalflow \ ghcr.io/asyncfuncai/deepwiki-open:latest上述命令同时将宿主机~/.adalflow挂载到容器内/root/.adalflow该路径用于存放克隆的仓库~/.adalflow/repos/对应的 Embedding 与索引~/.adalflow/databases/生成的 Wiki 内容缓存~/.adalflow/wikicache/。这样即使容器停止或被删除数据也能持久保留。也可以直接使用仓库自带的docker-compose.yml# 先在 .env 中填入 API 密钥 docker-compose updocker-compose.yml已预配置~/.adalflow挂载用于数据持久化与上述docker run方式一致。挂载 .env 文件运行# 创建含密钥的 .env 文件 echo GOOGLE_API_KEYvotre_cle_google .env echo OPENAI_API_KEYvotre_cle_openai .env echo OPENROUTER_API_KEYvotre_cle_openrouter .env echo AZURE_OPENAI_API_KEYvotre_cle_azure_openai .env echo AZURE_OPENAI_ENDPOINTvotre_endpoint_azure_openai .env echo AZURE_OPENAI_VERSIONvotre_version_azure_openai .env echo OLLAMA_HOSTvotre_hote_ollama .env # 挂载 .env 运行容器 docker run -p 8001:8001 -p 3000:3000 \ -v $(pwd)/.env:/app/.env \ -v ~/.adalflow:/root/.adalflow \ ghcr.io/asyncfuncai/deepwiki-open:latest该命令同样将~/.adalflow挂载到/root/.adalflow用于持久化克隆仓库、Embedding 索引与 Wiki 缓存保证容器重启/删除后数据不丢失。本地构建镜像# 克隆仓库 git clone https://github.com/AsyncFuncAI/deepwiki-open.git cd deepwiki-open # 构建 Docker 镜像 docker build -t deepwiki-open . # 运行容器 docker run -p 8001:8001 -p 3000:3000 \ -e GOOGLE_API_KEYvotre_cle_google \ -e OPENAI_API_KEYvotre_cle_openai \ -e OPENROUTER_API_KEYvotre_cle_openrouter \ -e AZURE_OPENAI_API_KEYvotre_cle_azure_openai \ -e AZURE_OPENAI_ENDPOINTvotre_endpoint_azure_openai \ -e AZURE_OPENAI_VERSIONvotre_version_azure_openai \ -e OLLAMA_HOSTvotre_hote_ollama \ deepwiki-open自签名证书环境如果身处使用自签名证书的网络环境可以将其纳入 Docker 镜像构建为证书创建目录默认是项目根目录下的certs将.crt或.pem证书文件复制到该目录构建镜像# 使用默认证书目录certs构建 docker build . # 或用自定义证书目录构建 docker build --build-arg CUSTOM_CERT_DIRmy-custom-certs .API 服务器能力FastAPI 后端api/main.py根路径动态列出全部端点提供三大能力仓库克隆与索引RAG检索增强生成流式聊天补全。RAG 的实现位于 api/rag/rag.pyRAG组件聚合对话记忆、Embedder 与 FAISSRetriever使用 Ollama Embedding 时启动前会通过check_ollama_model_exists校验模型是否已拉取未拉取会提示先执行ollama pull model并发的索引任务受DEEPWIKI_MAX_CONCURRENT_RAG默认 4信号量约束见 api/rag/rag.py。Wiki 生成任务侧的并发控制则由DEEPWIKI_MAX_CONCURRENT_WIKI_TASKS、WIKI_PAGE_RETRIES单页重试 2 次等变量管理详见 api/services/wiki/tasks.py。更多细节请查阅 api/README.md。OpenRouter 集成DeepWiki 将 OpenRouter 作为模型供应商接入用单一 API 访问数百个 AI 模型多模型选项可访问 OpenAI、Anthropic、Google、Meta、Mistral 等厂商模型配置简单只需添加 OpenRouter API 密钥并选择模型成本可控按预算与性能需求挑选模型轻松切换无需改动代码即可在不同模型间切换。使用步骤在 OpenRouter 注册并获取 API 密钥将OPENROUTER_API_KEYvotre_cle加入.env在首页勾选「使用 OpenRouter API」选项从 GPT-4o、Claude 3.5 Sonnet、Gemini 2.0 等热门模型中选择。OpenRouter 尤其适合以下场景无需注册多个服务即可试用不同模型访问所在地区受限的模型对比不同供应商的表现按需优化成本/性能比。Ask 与 DeepResearch 功能Ask基于 RAG 的仓库对话Ask 功能使用检索增强生成RAG与仓库对话上下文感知的回答基于仓库真实代码给出精准答案RAG 驱动系统检索相关代码片段提供有依据的回答实时流式输出答案生成过程实时可见交互更流畅对话历史系统保留问题之间的上下文维持连贯的多轮交互。DeepResearch多步骤深度研究DeepResearch 将仓库分析提升到新高度采用多步骤研究流程深度调查通过多轮研究迭代深入探索复杂主题结构化流程遵循清晰的研究计划包含更新与完整结论自动续研AI 自动持续推进直到得出结论最多 5 次迭代研究步骤研究计划概述方法与初步发现研究更新在前序迭代基础上补充新信息最终结论综合全部迭代给出完整回答。使用方式在 Ask 界面提交问题前打开「Deep Research」开关即可。常见问题排查API 密钥问题「缺少环境变量」确认.env位于项目根目录且包含必需密钥「API 密钥无效」检查是否完整复制了密钥且无多余空格「OpenRouter API 错误」确认密钥有效且账户余额充足「Azure OpenAI API 错误」核对 Azure 凭据密钥、端点、版本是否正确且服务已正确部署。连接问题「无法连接 API 服务器」确认 API 服务运行在 8001 端口「CORS 错误」API 默认允许所有来源api/main.py 的 CORSMiddleware 配置为allow_origins[*]若仍有问题尝试将前后端部署在同一台机器。生成问题「Wiki 生成出错」超大仓库建议先尝试较小的仓库「仓库格式无效」确认使用的是合法的 GitHub/GitLab/Bitbucket URL 格式「无法获取仓库结构」私有仓库请确认输入了具备相应权限的有效 Personal Access Token「图表渲染错误」应用会自动尝试修复损坏的图表。通用解决思路重启两个服务简单的重启往往能解决大部分问题检查浏览器控制台打开浏览器开发者工具查看 JS 错误检查 API 日志在 API 运行终端查看 Python 错误输出详见上文日志配置。结语至此你已经掌握了 DeepWiki-Open 从 Docker/手动双路径部署、模型选择系统、Embedding 供应商替换、日志与鉴权配置到 Ask/DeepResearch 实战的完整知识链。配合 README.fr.md及 README.zh.md 等各语言版本与 api/README.md即可将任意 GitHub/GitLab/Bitbucket 仓库快速转化为可交互、可问答的智能 Wiki。赞分享AI 应用人工智能RAG文档【免费下载链接】deepwiki-openOpen Source DeepWiki: AI-Powered Wiki Generator for GitHub/Gitlab/Bitbucket Repositories. Join the discord: https://discord.gg/gMwThUMeme项目地址https://gitcode.com/gh_mirrors/de/deepwiki-open点击查看免费下载相关推荐DeepWiki-Open 实战指南开源 AI Wiki 生成器一键为 GitHub / GitLab / Bitbucket 仓库生成交互式文档与代码地图DeepWiki Open 实战指南开源 AI Wiki 生成器一键为 GitHub / GitLab / Bitbucket 仓库生成交互式文档与代码地图AI 应用人工智能RAG文档DeepWiki-Open部署指南Docker与手动安装方案全对比DeepWiki Open部署指南Docker与手动安装方案全对比 你还在为开源项目文档整理烦恼DeepWiki Open让AI帮你自动生成知识库本文对比AI 应用人工智能RAG文档DeepWiki-Open终极部署指南5分钟极速安装与开发环境最佳配置DeepWiki Open终极部署指南5分钟极速安装与开发环境最佳配置 还在为复杂的开源项目文档整理而头疼DeepWiki Open让AI帮你自动生成智能知AI 应用人工智能RAG文档上一篇Fast-GitHub告别GitHub下载慢让开源项目获取更顺畅下一篇你的桌面需要一位智能伙伴吗DyberPet虚拟桌宠框架深度体验创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考