Aprendizagem pessoal com IA
e orientação prática
TRAE

DeepWiki-Open: geração automatizada de documentação de IA para repositórios do GitHub e do GitLab

Introdução geral

O DeepWiki-Open é um projeto de código aberto desenvolvido para gerar automaticamente documentação estruturada para repositórios de código no GitHub, GitLab e Bitbucket. Ele usa a tecnologia de IA para analisar a estrutura do código, o conteúdo do arquivo e as relações lógicas para gerar rapidamente uma página de base de conhecimento semelhante à Wikipedia. Os usuários só precisam inserir a URL do repositório para obter uma descrição clara da arquitetura do código, dos módulos funcionais e dos detalhes da implementação. O projeto oferece suporte à implantação local com dados armazenados localmente para fins de privacidade e segurança. Ele também fornece a funcionalidade Retrieval Augmented Generation (RAG), permitindo que os usuários se envolvam em perguntas e respostas contextuais com a base de código e se aprofundem em problemas complexos com a funcionalidade DeepResearch.Desenvolvido pela AsyncFuncAI, o DeepWiki-Open é gratuito e de código aberto e é adequado para desenvolvedores, equipes e a comunidade de código aberto para ajudar a entender rapidamente códigos complexos.

DeepWiki-Open: geração automática de documentação de IA para GitHub, repositórios GitLab-1


 

Lista de funções

  • Geração automatizada de documentação: analise os repositórios do GitHub, GitLab ou Bitbucket para gerar documentação estruturada no estilo wiki.
  • Análise de inteligência de código: identifica a estrutura do código, os principais módulos e as relações de arquivos, fornecendo descrições claras.
  • Perguntas e respostas contextualizadas: via RAG tecnologia para ajudar os usuários a fazer perguntas relacionadas ao depósito e obter respostas precisas.
  • Recurso DeepResearch: suporta várias rodadas de pesquisa, analisa questões complexas em profundidade e fornece conclusões detalhadas.
  • Suporte à implantação local: os dados são armazenados localmente, nenhum serviço de nuvem é necessário, a privacidade dos dados é garantida.
  • Diagramas interativos: gere diagramas de arquitetura e fluxogramas no formato Mermaid para visualizar a lógica do código.
  • Suporte multiplataforma: compatível com GitHub, GitLab e Bitbucket, com suporte a repositórios públicos e privados.
  • Respostas de IA em fluxo contínuo: via Google Gêmeos O modelo oferece geração de documentos e perguntas e respostas em tempo real.
  • Código aberto gratuito: totalmente de código aberto, os usuários são livres para modificar e ampliar a função.

 

Usando a Ajuda

Processo de instalação

O DeepWiki-Open oferece suporte ao Docker e à instalação manual para Ubuntu, macOS ou Windows (via WSL2). Aqui estão as etapas detalhadas.

1. clonagem de armazéns

Clonar a base de código do DeepWiki-Open localmente:

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

2. configuração de variáveis de ambiente

O DeepWiki-Open requer chaves de API do Google Gemini e do OpenAI para geração de documentos e incorporação de código. No diretório raiz do projeto, crie o arquivo .env Documentação:

echo "GOOGLE_API_KEY=your_google_api_key" > .env
echo "OPENAI_API_KEY=your_openai_api_key" >> .env
  • GOOGLE_API_KEY: De Estúdio de IA do Google Obtido para uso no modelo do Google Gemini.
  • OPENAI_API_KEY: De Plataforma OpenAI Fetch para gerar incorporação de código.
  • Variáveis opcionais:
    • PORTPorta do servidor de API, padrão 8001.
    • NEXT_PUBLIC_SERVER_BASE_URLEndereço do servidor de API, padrão http://localhost:8001.

3. instalação com o Docker (recomendado)

O Docker é fácil de instalar e adequado para implantação rápida.

  • Certifique-se de que o Docker e o Docker Compose estejam instalados.
  • Execute o seguinte comando para iniciar o serviço:
docker-compose up
  • Ou obter uma imagem pré-criada e executá-la:
docker pull ghcr.io/asyncfuncai/deepwiki-open:latest
docker run -p 8001:8001 -p 3000:3000 \
-e GOOGLE_API_KEY=your_google_api_key \
-e OPENAI_API_KEY=your_openai_api_key \
-v ~/.adalflow:/root/.adalflow \
ghcr.io/asyncfuncai/deepwiki-open:latest
  • Depois que o serviço é iniciado, a API é executada no http://localhost:8001As páginas de front-end no http://localhost:3000.
  • Também é possível montar o .env Documentação:
docker run -p 8001:8001 -p 3000:3000 \
-v $(pwd)/.env:/app/.env \
-v ~/.adalflow:/root/.adalflow \
ghcr.io/asyncfuncai/deepwiki-open:latest

4. instalação manual

Se você não estiver usando o Docker, poderá instalá-lo manualmente.

  • Instale as dependências do Python (backend):
pip install -r api/requirements.txt
  • Inicie o serviço de API:
python -m api.main
  • Instale as dependências do JavaScript (front-end):
npm install
  • Inicie o servidor de desenvolvimento front-end:
npm run dev
  • A página de front-end está no diretório http://localhost:3000.

5. verificação da instalação

  • Abra seu navegador e acesse http://localhost:3000.
  • Digite o URL do repositório (por exemplo https://github.com/facebook/react talvez https://bitbucket.org/redradish/atlassian_app_versions).
  • Clique em "Generate Wiki" (Gerar Wiki) para visualizar o documento gerado.

Funções principais

Geração automática de documentos

  1. Insira o URL do repositório na página de front-end (por exemplo https://gitlab.com/gitlab-org/gitlab).
  2. Para repositórios privados, clique em "+ Adicionar tokens de acesso" e insira seu token de acesso pessoal para GitHub, GitLab ou Bitbucket.
  3. Clique em "Generate Wiki" (Gerar Wiki), o sistema clona o repositório e analisa o código para gerar a documentação.
  4. A documentação gerada inclui:
    • Visão geral da arquitetura de código.
    • Descrição funcional dos principais módulos.
    • Descrições detalhadas de arquivos e diretórios.
    • Diagrama de arquitetura e fluxograma interativos da Mermaid.

Perguntas e respostas contextuais (função Perguntar)

  1. Localize a área "Ask" (Perguntar) na página Documentação.
  2. Insira uma pergunta como "Como é implementada a conexão de banco de dados para este repositório?". .
  3. O sistema recupera trechos de código por meio da técnica RAG para gerar respostas contextualmente relevantes.
  4. As respostas são exibidas em uma forma de fluxo contínuo, dando suporte à interação em tempo real.

Recursos do DeepResearch

  1. Ative a opção "Deep Research" (Pesquisa profunda) na tela "Ask" (Perguntar).
  2. Insira perguntas complexas, como "Como o processo de autenticação pode ser otimizado para esse depósito?" .
  3. Execução sistemática de várias rodadas de pesquisa:
    • programa de pesquisa Gerar a estrutura de análise inicial.
    • Atualizações de pesquisa Análises iterativas para adicionar detalhes.
    • conclusão final Síntese: sintetize todas as informações e forneça uma resposta detalhada.
  4. O processo de pesquisa foi repetido até cinco vezes e as respostas foram transmitidas.

Operação da função em destaque

Resposta de IA em fluxo contínuo

  • A geração de documentos e as respostas às perguntas e respostas são exibidas em tempo real usando o modelo Google Gemini.
  • Exemplo: Após inserir uma pergunta, a resposta é carregada parágrafo por parágrafo para reduzir o tempo de espera.

Gráficos interativos de sereias

  • O sistema gera um diagrama de arquitetura e um fluxograma do depósito, com base na tecnologia Mermaid.
  • Os gráficos suportam interações de zoom, arrastar e clicar.
  • Exemplo: depois de gerar um documento de repositório do TensorFlow, você pode visualizar o fluxograma de treinamento do modelo.

Suporte para repositórios privados

  • É necessário um token de acesso pessoal para o GitHub, GitLab ou Bitbucket.
  • O token é usado apenas para clonar o repositório e não é armazenado no servidor.
  • Exemplo: Insira a URL do repositório privado e o token para gerar o documento.

Armazenamento local de dados

  • Os dados de documentação e análise são armazenados no ~/.adalflow (o Docker pode montá-lo de forma personalizada).
  • Sem dependência da nuvem para cenários sensíveis à privacidade.

Estrutura do projeto

A estrutura do código do DeepWiki-Open é a seguinte:

deepwiki/
├── api/                  # 后端 API 服务器
│   ├── main.py           # API 入口
│   ├── api.py            # FastAPI 实现
│   ├── rag.py            # RAG 功能实现
│   ├── data_pipeline.py  # 数据处理工具
│   └── requirements.txt  # Python 依赖
├── src/                  # 前端 Next.js 应用
│   ├── app/              # Next.js 页面
│   │   └── page.tsx      # 主页面
│   └── components/       # React 组件
│       └── Mermaid.tsx   # Mermaid 图表渲染
├── public/               # 静态资源
├── package.json          # JavaScript 依赖
└── .env                  # 环境变量

advertência

  • Certifique-se de que a chave de API seja válida; uma chave inválida causará falha na geração.
  • Recomenda-se que as implantações do Docker aloquem mais de 4 GB de memória.
  • A instalação manual requer Python 3.8+ e Node.js 16+.
  • Os repositórios maiores podem levar mais tempo para gerar a documentação, e é recomendável começar a testar com repositórios menores.
  • Se você encontrar erros de CORS, verifique se os front-ends e back-ends estão sendo executados na mesma máquina ou ajuste o parâmetro NEXT_PUBLIC_SERVER_BASE_URL.

 

cenário do aplicativo

  1. Início rápido para novos desenvolvedores
    Novos desenvolvedores podem gerar documentação de projeto para entender rapidamente a estrutura do código e a funcionalidade do módulo, reduzindo a curva de aprendizado.
  2. Contribuição para projetos de código aberto
    Os colaboradores dominam rapidamente a lógica do repositório e aumentam a eficiência do envio de código por meio de recursos de documentação e perguntas e respostas.
  3. Manutenção de documentos internos
    As empresas implementam o DeepWiki-Open para gerar documentação para repositórios privados, reduzindo os custos de manutenção manual.
  4. Preparação para entrevistas técnicas
    Os candidatos analisam o repositório de código aberto da empresa-alvo, geram documentação e, em seguida, se aprofundam nos detalhes técnicos com o DeepResearch.
  5. Educação e aprendizado
    Os alunos usam o DeepWiki-Open para analisar projetos conhecidos (por exemplo, React, Django) e aprender sobre design de código por meio de diagramas e questionários.

 

QA

  1. O DeepWiki-Open é gratuito?
    O DeepWiki-Open é totalmente gratuito e de código aberto, mas os usuários precisam fornecer chaves de API para o Google e o OpenAI, e o uso da API pode ter custos.
  2. Quais plataformas de hospedagem de código são compatíveis?
    Suporte para GitHub, GitLab e Bitbucket, abrangendo repositórios públicos e privados.
  3. Como exportar o documento gerado?
    Os documentos são armazenados localmente ~/.adalflowO arquivo pode ser copiado manualmente para Markdown ou outros formatos.
  4. Qual é a diferença entre os recursos do DeepResearch e do Ask?
    O Ask fornece um único questionário contextual, e o DeepResearch aprofunda-se em problemas complexos com várias iterações.
  5. E se a geração de documentos falhar?
    Verifique a chave da API, o formato do URL do repositório ou tente um repositório pequeno; verifique os registros do terminal para obter detalhes do erro.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " DeepWiki-Open: geração automatizada de documentação de IA para repositórios do GitHub e do GitLab
pt_BRPortuguês do Brasil