DeepWiki-open可以为任何GitHub、GitLab或BitBucket代码仓库自动创建美观、交互式的Wiki,也可以提交本地仓库给它。试用了下发现效果还不错,可以作为项目开发指南。

GitHub 主页:https://github.com/AsyncFuncAI/deepwiki-open

使用方法很简单,clone 仓库代码,配置环境变量,启动前端和后端服务即可。

下载

git clone https://github.com/AsyncFuncAI/deepwiki-open.git
cd deepwiki-open

配置

需要提前准备 openai 和 google ai 的 api key。

Google AI api:https://makersuite.google.com/app/apikey
openai api:https://platform.openai.com/api-keys

根目录新建 .env 文件,配置环境变量:

GOOGLE_API_KEY=XXXXXXXXXXXXXXXXXXX
OPENAI_API_KEY=XXXXXXXXXXXXXXXXXXX
OPENROUTER_API_KEY=XXXXXXXXXXXXXXX

OPENROUTER_API_KEY 是可选项,其他两个是必须项。

注意,我测试发现免费帐户的 openai api 在生成少数几个 wiki 后就会报错超出最大请求次数 error。而且项目必须使用 OpenAI-Compatible Embedding Models,解决方法是给 openai 充值或者使用 Alibaba Qwen 的 openai 兼容 api。

alibaba qwen api:https://bailian.console.alibabacloud.com/?tab=app#/api-key

如果使用其他 OpenAI-Compatible Embedding Models 需要将环境变量的 OPENAI_API_KEY 改为此第三方的 api key,然后在环境变量指定 OPENAI_BASE_URL:

OPENAI_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1  #示例中是 alibaba cloud 的 base url 地址

然后修改 api/config/embedder.json 为:

{
  "embedder": {
    "client_class": "OpenAIClient",
    "initialize_kwargs": {
      "api_key": "${OPENAI_API_KEY}",
      "base_url": "${OPENAI_BASE_URL}"
    },
    "batch_size": 10,
    "model_kwargs": {
      "model": "text-embedding-v3",
      "dimensions": 512,
      "encoding_format": "float"
    }
  },
  "embedder_ollama": {
    "client_class": "OllamaClient",
    "model_kwargs": {
      "model": "nomic-embed-text"
    }
  },
  "retriever": {
    "top_k": 20
  },
  "text_splitter": {
    "split_by": "word",
    "chunk_size": 350,
    "chunk_overlap": 100
  }
}

使用

安装环境并启动后端,提前建立一个虚拟环境:

python -m venv .venv
.venv\Scripts\activate

pip install -r api/requirements.txt
python -m api.main

安装环境并启动前端:

npm install
npm run dev

然后打开浏览器访问:http://localhost:3000,即可按照提示操作。

标签:无

你的评论