Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add Japanese README #64

Merged
merged 1 commit into from
Oct 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<p align="center">
<a href="./README_cn.md">简体中文</a> |
<a href="./README.md">English</a> |
<a href="./README_ja.md">日本語</a> |
<a href="#how-to-get-started">Getting Started</a>
</p>

Expand Down
1 change: 1 addition & 0 deletions README_cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<p align="center">
<a href="./README_cn.md">简体中文</a> |
<a href="./README.md">English</a> |
<a href="./README_ja.md">日本語</a> |
<a href="./README_cn.md#如何开始">快速开始</a>
</p>

Expand Down
185 changes: 185 additions & 0 deletions README_ja.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
## 📃 NextAGIFuture

<p align="center">
<a href="./README_cn.md">简体中文</a> |
<a href="./README.md">English</a> |
<a href="./README_ja.md">日本語</a> |
<a href="#how-to-get-started">始め方</a>
</p>

LangChain、LangGraph、およびその他のフレームワークに基づいたチャットボット、RAG、エージェント、およびマルチエージェントアプリケーションプロジェクトで、オープンソースであり、オフライン展開が可能です。
<video src="https://private-user-images.githubusercontent.com/49232224/365880079-72564225-6675-4eda-b1c6-c87bb3e4bd24.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5Mzg2MzksIm5iZiI6MTcyNTkzODMzOSwicGF0aCI6Ii80OTIzMjIyNC8zNjU4ODAwNzktNzI1NjQyMjUtNjY3NS00ZWRhLWIxYzYtYzg3YmIzZTRiZDI0Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDAzMTg1OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVlZTVkZmQxY2YxZDRhMWJmYTY1ZmRjNzAxMzAwODJjNjZiMjQxOGRjMTkzZTlkYTA3ZTRiN2M4OWFhYjM2NDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.E2MtHMi_cgeo6p7LKdIUj-iJt9JHA2li8pVxbI6Wazc" data-canonical-src="https://private-user-images.githubusercontent.com/49232224/365880079-72564225-6675-4eda-b1c6-c87bb3e4bd24.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU5Mzg2MzksIm5iZiI6MTcyNTkzODMzOSwicGF0aCI6Ii80OTIzMjIyNC8zNjU4ODAwNzktNzI1NjQyMjUtNjY3NS00ZWRhLWIxYzYtYzg3YmIzZTRiZDI0Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTEwVDAzMTg1OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVlZTVkZmQxY2YxZDRhMWJmYTY1ZmRjNzAxMzAwODJjNjZiMjQxOGRjMTkzZTlkYTA3ZTRiN2M4OWFhYjM2NDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.E2MtHMi_cgeo6p7LKdIUj-iJt9JHA2li8pVxbI6Wazc" controls="controls" muted="muted" class="d-block rounded-bottom-2 border-top width-fit" style="max-height:640px; min-height: 200px">
</video>

### 🤖️ 概要

![image](https://github.com/user-attachments/assets/22583a25-4cee-43af-9d8e-38a491377875)

#### ワークフロー

![image](https://github.com/user-attachments/assets/a4e33565-7acf-45d9-8e82-5a740cd88344)
![image](https://github.com/user-attachments/assets/4d5874f1-aeb0-47c5-b907-21878a2fa4d9)

#### 画像

![image](https://github.com/user-attachments/assets/4097b087-0309-4aab-8be9-a06fdc9d4964)

#### ヒューマン・イン・ザ・ループ(人間の承認またはLLMの再考または人間への助けを求める)

<p>
<img src="https://github.com/user-attachments/assets/ec53f7de-10cb-4001-897a-2695da9cf6bf" alt="image" style="width: 49%; display: inline-block;">
<img src="https://github.com/user-attachments/assets/1c7d383d-e6bf-42b8-94ec-9f0c37be19b8" alt="image" style="width: 49%; display: inline-block;">
</p>

NextAGIFutureは、大規模言語モデル(LLM)アプリケーションを開発するためのオープンソースプラットフォームを目指しています。これは、LangChainとLangGraphの概念を利用したLLMベースのアプリケーションです。チャットボット、RAGアプリケーション、エージェント、およびマルチエージェントシステムをサポートするLLMOpsソリューションのスイートを作成し、オフライン操作の機能を備えることを目指しています。

[StreetLamb](https://github.com/StreetLamb)プロジェクトおよびその[tribe](https://github.com/StreetLamb/tribe)プロジェクトに触発され、NextAGIFutureは多くのアプローチとコードを採用しています。この基盤の上に、新しい機能と方向性を導入しています。

このプロジェクトのレイアウトの一部は、[Lobe-chat](https://github.com/lobehub/lobe-chat)、[Dify](https://github.com/langgenius/dify)、および[fastgpt](https://github.com/labring/FastGPT)を参考にしています。これらはすべて優れたオープンソースプロジェクトであり、感謝しています🙇‍。

### 👨‍💻 開発

プロジェクトの技術スタック:LangChain + LangGraph + React + Next.js + Chakra UI + PostgreSQL

### 💡ロードマップ

1 アプリ

- [x] チャットボット
- [x] シンプルRAG
- [x] 階層エージェント
- [x] シーケンシャルエージェント
- [ ] ワークフロー ---進行中
- [ ] さらに多くのマルチエージェント

2 モデル

- [x] OpenAI
- [x] ZhipuAI
- [x] Siliconflow
- [x] Ollama
- [ ] Qwen
- [ ] Xinference

3 その他

- [x] ツール呼び出し
- [x] I18n
- [ ] Langchainテンプレート

### 🏘️ハイライト

- 永続的な会話:チャット履歴を保存および維持し、会話を続けることができます。
- 可観測性:LangSmithを使用してエージェントのパフォーマンスと出力をリアルタイムで監視および追跡し、効率的に動作するようにします。
- ツール呼び出し:エージェントが外部ツールやAPIを利用できるようにします。
- 検索強化生成:エージェントが内部知識ベースを利用して推論できるようにします。
- ヒューマン・イン・ザ・ループ:ツール呼び出し前に人間の承認を有効にします。
- オープンソースモデル:llama、Qwen、GlmなどのオープンソースLLMモデルを使用します。
- マルチテナンシー:複数のユーザーとチームを管理およびサポートします。

### 始め方

#### 1. 準備

##### 1.1 コードをクローン

git clone https://github.com/Onelevenvy/NextAGIFuture.git

##### 1.2 環境設定ファイルをコピー

```bash
cp .env.example .env
```

##### 1.3 秘密鍵を生成

.envファイルのいくつかの環境変数には、デフォルト値としてchangethisが設定されています。
これらを秘密鍵に変更する必要があります。秘密鍵を生成するには、次のコマンドを実行します:

```bash
python -c "import secrets; print(secrets.token_urlsafe(32))"
```

内容をコピーしてパスワード/秘密鍵として使用します。もう一度実行して別の安全な鍵を生成します。

##### 1.3 postgres、qdrant、redisをインストール

```bash
cd nextagi
docker compose up -d
```

#### 2. バックエンドを実行

##### 2.1 基本環境のインストール

サーバーの起動にはPython 3.10.xが必要です。Python環境を迅速にインストールするには、pyenvを使用することをお勧めします。

追加のPythonバージョンをインストールするには、pyenv installを使用します。

```bash
pyenv install 3.10
```

"3.10" Python環境に切り替えるには、次のコマンドを使用します:

```bash
pyenv global 3.10
```

次の手順に従います:
"backend"ディレクトリに移動します:

```bash
cd backend
```

環境をアクティブにします。

```bash
poetry env use 3.10
poetry install
```

##### 2.2 初期データの設定

```bash
# DBを起動させる
python /app/app/backend_pre_start.py

# マイグレーションを実行
alembic upgrade head

# DBに初期データを作成
python /app/app/initial_data.py
```

##### 2.3 unicornを実行

```bash
uvicorn app.main:app --reload --log-level debug
```

##### 2.4 celeryを実行(rag機能を使用する場合のみ)

```bash
poetry run celery -A app.core.celery_app.celery_app worker --loglevel=debug
```

#### 3. フロントエンドを実行

##### 3.1 webディレクトリに移動して依存関係をインストール

```bash
cd web
pnpm install
```

##### 3.2 webサービスを起動

```bash
cd web
pnpm dev

# または pnpm build してから pnpm start
```
Loading