AIパーソナル・ラーニング
と実践的なガイダンス
サイバーナイフ用ドローイングミラー

DeepWiki-Open:GitHub、GitLabリポジトリ用のAIドキュメント自動生成

はじめに

DeepWiki-Openは、GitHub、GitLab、Bitbucket上のコードリポジトリの構造化ドキュメントを自動生成するために設計されたオープンソースプロジェクトです。AI技術を使ってコードの構造、ファイルの内容、論理的な関係を分析し、ウィキペディアのようなナレッジベースのページを素早く生成する。ユーザーはリポジトリのURLを入力するだけで、コード・アーキテクチャ、機能モジュール、実装の詳細についての明確な説明を得ることができる。このプロジェクトは、プライバシーとセキュリティのためにデータをローカルに保存し、ローカルでの展開をサポートしている。AsyncFuncAIによって開発されたDeepWiki-Openは、フリーでオープンソースであり、開発者、チーム、オープンソースコミュニティに適しており、複雑なコードを素早く理解するのに役立ちます。

DeepWiki-Open:GitHub、GitLabリポジトリのAIドキュメントを自動生成する-1


 

機能一覧

  • ドキュメントの自動生成:GitHub、GitLab、Bitbucketのリポジトリを分析し、構造化されたWikiスタイルのドキュメントを生成します。
  • コードインテリジェンス分析:コード構造、主要モジュール、ファイル関係を特定し、明確な説明を提供します。
  • 文脈に沿ったQ&A:経由 ラグ 倉庫関連の質問をし、正確な回答を得るためにユーザーをサポートする技術。
  • DeepResearch機能:複数回の調査をサポートし、複雑な問題を深く分析し、詳細な結論を提供します。
  • ローカル展開のサポート:データはローカルに保存されるため、クラウドサービスは必要なく、データのプライバシーは保証される。
  • インタラクティブなダイアグラム: Mermaid形式のアーキテクチャ図やフローチャートを生成し、コードのロジックを可視化します。
  • マルチプラットフォーム対応:GitHub、GitLab、Bitbucketと互換性があり、パブリックとプライベートの両方のリポジトリをサポートします。
  • ストリーミングAIレスポンス:グーグル経由 ジェミニ このモデルはリアルタイムの文書作成とQ&Aを提供する。
  • オープンソース・フリー:完全なオープンソースで、ユーザーは自由に機能を変更・拡張できる。

 

ヘルプの使用

設置プロセス

DeepWiki-OpenはDockerをサポートしており、Ubuntu、macOS、Windows(WSL2経由)で手動インストールが可能です。以下に詳細な手順を示します。

1.倉庫のクローン化

DeepWiki-Openのコードベースをローカルにクローンする:

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

2.環境変数の設定

DeepWiki-Openでは、ドキュメントの生成とコードの埋め込みにGoogle GeminiとOpenAIのAPIキーが必要です。プロジェクトのルート・ディレクトリに .env ドキュメンテーション

echo "GOOGLE_API_KEY=your_google_api_key" > .env
echo "OPENAI_API_KEY=your_openai_api_key" >> .env
  • GOOGLE_API_KEYより グーグルAIスタジオ Google Geminiモデルで使用するために取得。
  • OPENAI_API_KEYより OpenAIプラットフォーム 埋め込みコードを生成するためのフェッチ。
  • オプションの変数:
    • PORTAPIサーバーポート、デフォルト 8001.
    • NEXT_PUBLIC_SERVER_BASE_URLAPIサーバーアドレス、デフォルト http://localhost:8001.

3.Dockerによるインストール(推奨)

Dockerはインストールが簡単で、迅速なデプロイに適している。

  • DockerとDocker Composeがインストールされていることを確認する。
  • 以下のコマンドを実行してサービスを開始する:
docker-compose up
  • あるいは、ビルド済みのイメージを引っ張ってきて実行する:
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
  • サービス開始後、APIは http://localhost:8001のフロントエンドページは http://localhost:3000.
  • を搭載することも可能だ。 .env ドキュメンテーション
docker run -p 8001:8001 -p 3000:3000 \
-v $(pwd)/.env:/app/.env \
-v ~/.adalflow:/root/.adalflow \
ghcr.io/asyncfuncai/deepwiki-open:latest

4.手動インストール

Dockerを使用していない場合は、手動でインストールできる。

  • Pythonの依存関係(バックエンド)をインストールします:
pip install -r api/requirements.txt
  • APIサービスを開始する:
python -m api.main
  • JavaScriptの依存関係(フロントエンド)をインストールします:
npm install
  • フロントエンド開発サーバーを起動します:
npm run dev
  • フロントエンドのページは http://localhost:3000.

5.インストールの検証

  • ブラウザを開き、次のサイトにアクセスする。 http://localhost:3000.
  • リポジトリのURLを入力する(例 https://github.com/facebook/react もしかしたら https://bitbucket.org/redradish/atlassian_app_versions).
  • 生成されたドキュメントを表示するには、"Generate Wiki "をクリックします。

主な機能

ドキュメントの自動生成

  1. フロントエンドページにリポジトリのURLを入力する(例 https://gitlab.com/gitlab-org/gitlab).
  2. プライベートリポジトリの場合は、"+ Add access tokens "をクリックし、GitHub、GitLab、Bitbucketの個人アクセストークンを入力します。
  3. Generate Wiki "をクリックすると、システムがリポジトリをクローンし、コードを解析してドキュメントを生成します。
  4. 生成されたドキュメントには以下のものが含まれる:
    • コード・アーキテクチャの概要。
    • 主要モジュールの機能説明
    • ファイルやディレクトリの詳細な説明。
    • インタラクティブなマーメイド・アーキテクチャ・ダイアグラムとフローチャート。

文脈に沿った質問と回答(Ask機能)

  1. ドキュメンテーションのページで「質問」エリアを見つけてください。
  2. このリポジトリのデータベース接続はどのように実装されていますか?" のような質問を入力してください。.
  3. このシステムは、RAG技術によってコード・スニペットを検索し、文脈に関連した回答を生成する。
  4. 回答はストリーミング方式で表示され、リアルタイムのインタラクションをサポートする。

DeepResearchの特徴

  1. Ask」画面で「Deep Research」スイッチを有効にする。
  2. この倉庫のために認証プロセスを最適化するにはどうすればいいか?" といった複雑な質問に答える。.
  3. 複数回の調査を計画的に実施:
    • 研究プログラム 最初の分析フレームワークを作成する。
    • 研究アップデート 反復分析で詳細を追加。
    • 最終結論 すべての情報を統合し、詳細な回答を提供すること。
  4. 調査のプロセスは5回まで繰り返され、回答はストリーム配信された。

注目の機能操作

ストリーミングAIの反応

  • ドキュメントの作成とQ&Aの回答は、Google Geminiモデルを使用してリアルタイムで表示されます。
  • 例: 質問を入力した後、待ち時間を減らすために段落ごとに回答が読み込まれます。

インタラクティブ・マーメイド・チャート

  • このシステムは、Mermaidの技術に基づいて、倉庫のアーキテクチャ図とフローチャートを生成します。
  • チャートはズーム、ドラッグ、クリックをサポートします。
  • 例: TensorFlowリポジトリドキュメントを生成した後、モデルトレーニングフローチャートを見ることができます。

プライベート・リポジトリのサポート

  • GitHub、GitLab、Bitbucketの個人アクセストークンが必要です。
  • トークンはリポジトリのクローンにのみ使用され、サーバーには保存されません。
  • 例: プライベートリポジトリのURLとトークンを入力して、ドキュメントを生成します。

ローカル・データ・ストレージ

  • ドキュメントと分析データは ~/.adalflow ディレクトリにマウントする(Dockerはこれをカスタムマウントできる)。
  • プライバシーに配慮したシナリオでは、クラウドに依存しない。

プロジェクト体制

DeepWiki-Openのコード構造は以下のとおりです:

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                  # 环境变量

ほら

  • APIキーが有効であることを確認してください。無効なキーは生成に失敗します。
  • Dockerのデプロイメントでは、4GB以上のメモリを割り当てることを推奨する。
  • 手動インストールにはPython 3.8+とNode.js 16+が必要です。
  • リポジトリが大きいと、ドキュメントの生成に時間がかかる可能性があるため、小さなリポジトリからテストを開始することをお勧めします。
  • CORSエラーが発生した場合は、フロントエンドとバックエンドが同じマシン上で実行されていることを確認するか、あるいは NEXT_PUBLIC_SERVER_BASE_URL.

 

アプリケーションシナリオ

  1. 新規開発者のためのクイックスタート
    新人開発者は、プロジェクト・ドキュメントを作成することで、コード構造とモジュール機能を素早く理解し、学習曲線を短縮することができます。
  2. オープンソースプロジェクトへの貢献
    貢献者は、リポジトリのロジックをすばやくマスターし、ドキュメントと Q&A 機能によってコード提出の効率を向上させます。
  3. 社内文書のメンテナンス
    企業はDeepWiki-Openを導入してプライベートリポジトリのドキュメントを生成し、手作業によるメンテナンスコストを削減します。
  4. 技術面接の準備
    候補者は、ターゲット企業のオープンソースリポジトリを分析し、ドキュメントを作成し、DeepResearchで技術的な詳細を掘り下げます。
  5. 教育と学習
    学生は、DeepWiki-Openを使用して有名なプロジェクト(ReactやDjangoなど)を分析し、図やクイズを通してコード設計について学びます。

 

品質保証

  1. DeepWiki-Openは無料ですか?
    DeepWiki-Openは完全に無料でオープンソースだが、ユーザーはGoogleとOpenAIのAPIキーを提供する必要があり、APIの使用にはコストがかかる場合がある。
  2. どのようなコード・ホスティング・プラットフォームに対応していますか?
    GitHub、GitLab、Bitbucketをサポートし、パブリックとプライベートの両方のリポジトリに対応。
  3. 生成されたドキュメントをエクスポートするには?
    ドキュメントはローカルに保存される ~/.adalflowこのファイルは、Markdownや他のフォーマットに手動でコピーすることができる。
  4. DeepResearchとAskの機能の違いは何ですか?
    Askは文脈に沿ったクイズを1回だけ提供し、DeepResearchは何度も繰り返しながら複雑な問題を深く掘り下げていく。
  5. 文書生成に失敗したら?
    APIキー、リポジトリのURL形式を確認するか、小さなリポジトリを試してください。エラーの詳細については、ターミナルのログを確認してください。
無断転載を禁じます:チーフAIシェアリングサークル " DeepWiki-Open:GitHub、GitLabリポジトリ用のAIドキュメント自動生成
ja日本語