Skip to content

lizeruicq/test_rag_agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

22 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– RPG Multi-Agent System

โš ๏ธ ๆ—ฉๆœŸๅผ€ๅ‘้˜ถๆฎต | ๐Ÿšง ๆŒ็ปญๅผ€ๅ‘ไธญ | ๐Ÿ“ API ๅฏ่ƒฝๅ˜ๅŠจ

ไธ€ไธชๅŸบไบŽ RPG ๅƒ็ด ้ฃŽๆ ผ ็š„ๅคš Agent ๅไฝœๅฏน่ฏ็ณป็ปŸ๏ผŒๆ”ฏๆŒ Manager-Worker ๆžถๆž„ img.png img_1.png Status Python FastAPI React


โœจ ๆ ธๅฟƒ็‰นๆ€ง

๐ŸŽฎ RPG ๅƒ็ด ้ฃŽ็•Œ้ข

  • 2D ๆธธๆˆๅœบๆ™ฏ๏ผšๅŸบไบŽ Phaser.js ็š„ๆ˜Ÿ้œฒ่ฐท็‰ฉ่ฏญ้ฃŽๆ ผๅŠžๅ…ฌๅฎคๅœบๆ™ฏ
  • Agent ๅฝข่ฑก๏ผš
    • Manager๏ผš่ต„ๆœฌๅฎถๅฝข่ฑก๏ผˆ้ป‘่‰ฒ็คผๅธฝ + ็คผๆœ๏ผ‰
    • Worker๏ผš็œ‹้—จ็‹—้ฃŽๆ ผ๏ผˆ่‰พ็™ป/ๆ‰ณๆ‰‹ๅฝข่ฑก้šๆœบๅˆ†้…๏ผ‰
  • ๅŠจ็”ป็Šถๆ€๏ผšๅพ…ๆœบ / ๆ€่€ƒ / ่ฏด่ฏ ไธ‰็ง็Šถๆ€ๅŠจ็”ป
  • ๅฏน่ฏๆฐ”ๆณก๏ผšๆธธๆˆ้ฃŽๆ ผ็š„ๅฏน่ฏๅฑ•็คบ

๐Ÿง  ๅคš Agent ๆžถๆž„

  • Manager-Worker ๆจกๅผ๏ผšๆ™บ่ƒฝไปปๅŠกๅˆ†ๆดพไธŽ็ป“ๆžœๆ•ดๅˆ
  • MsgHub ๆจกๅผ๏ผšไผ ็ปŸๅคš Agent ๅนฟๆ’ญๅฏน่ฏ
  • ็‹ฌ็ซ‹ๆจกๅž‹้…็ฝฎ๏ผšๆฏไธช Agent ๅฏ้…็ฝฎไธๅŒ็š„ LLM Provider

๐Ÿ”ง ๆ”ฏๆŒ็š„ๆจกๅž‹ๆไพ›ๅ•†

ๆไพ›ๅ•† ็Šถๆ€ ๅค‡ๆณจ
DashScope (้˜ฟ้‡Œไบ‘) โœ… ๅทฒๆ”ฏๆŒ qwen ็ณปๅˆ—

๐Ÿ› ๏ธ ๅทฅๅ…ท็ณป็ปŸ

  • ๅ†…็ฝฎๅทฅๅ…ท๏ผšๆ–‡ไปถๆ“ไฝœใ€ๆต่งˆๅ™จ่‡ชๅŠจๅŒ–
  • ๅฏๆ‰ฉๅฑ•๏ผšๆ”ฏๆŒ่‡ชๅฎšไน‰ๅทฅๅ…ทๆณจๅ†Œ

๐Ÿ—๏ธ ้กน็›ฎๆžถๆž„

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    ๅ‰็ซฏ (React + Phaser)                 โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚  Phaser ๆธธๆˆๅœบๆ™ฏ                                  โ”‚   โ”‚
โ”‚  โ”‚  - ChatScene.ts (ๅƒ็ด ้ฃŽๅŠžๅ…ฌๅฎค)                   โ”‚   โ”‚
โ”‚  โ”‚  - Agent ่ง’่‰ฒ (Manager/Worker)                   โ”‚   โ”‚
โ”‚  โ”‚  - ๅŠจ็”ป็ณป็ปŸ (idle/thinking/speaking)             โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ”‚                         โ†‘โ†“                              โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚  React UI ็ป„ไปถ                                   โ”‚   โ”‚
โ”‚  โ”‚  - ไพง่พนๆ ๅฏผ่ˆช                                    โ”‚   โ”‚
โ”‚  โ”‚  - ๆตฎๅŠจ่Šๅคฉ็ช—ๅฃ                                  โ”‚   โ”‚
โ”‚  โ”‚  - Agent ้…็ฝฎ้ขๆฟ                                โ”‚   โ”‚
โ”‚  โ”‚  - Provider ้…็ฝฎ้ขๆฟ                             โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†‘โ†“ HTTP
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   ๅŽ็ซฏ (FastAPI)                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚  Chat API   โ”‚  โ”‚ Agent API   โ”‚  โ”‚  Provider API   โ”‚ โ”‚
โ”‚  โ”‚  /api/chat  โ”‚  โ”‚ /api/agents โ”‚  โ”‚ /api/providers  โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ManagerAgent โ”‚  โ”‚ WorkerAgent โ”‚  โ”‚   ChatAgent     โ”‚ โ”‚
โ”‚  โ”‚  (ไปปๅŠกๅ่ฐƒ)  โ”‚  โ”‚  (ไปปๅŠกๆ‰ง่กŒ)  โ”‚  โ”‚  (ๆ™ฎ้€šๅฏน่ฏ)      โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†‘โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚              ๅŸบ็ก€่ฎพๆ–ฝๅฑ‚                                   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚   Qdrant    โ”‚  โ”‚   ้…็ฝฎๆ–‡ไปถ   โ”‚  โ”‚    ๅทฅๅ…ท็ณป็ปŸ      โ”‚ โ”‚
โ”‚  โ”‚  ๅ‘้‡ๆ•ฐๆฎๅบ“  โ”‚  โ”‚  (JSON)     โ”‚  โ”‚  (ๅ†…็ฝฎ+ๆ‰ฉๅฑ•)     โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹

็Žฏๅขƒ่ฆๆฑ‚

  • Python 3.10+
  • Node.js 18+
  • Qdrant (ๅ‘้‡ๆ•ฐๆฎๅบ“๏ผŒๅฏ้€‰ Docker)

1. ๅฎ‰่ฃ…ไพ่ต–

# ๅŽ็ซฏไพ่ต–
pip install -r requirements.txt

# ๅ‰็ซฏไพ่ต–
cd rpg-frontend
npm install
cd ..

2. ้…็ฝฎ็Žฏๅขƒๅ˜้‡

cp .env.example .env
# ็ผ–่พ‘ .env ๆ–‡ไปถ๏ผŒ้…็ฝฎ API ๅฏ†้’ฅ

3. ๅฏๅŠจๆœๅŠก

ๅผ€ๅ‘ๆจกๅผ๏ผˆๆŽจ่๏ผ‰๏ผš

# ็ปˆ็ซฏ 1: ๅฏๅŠจๅŽ็ซฏ๏ผˆๅผ€ๅ‘ๆจกๅผ๏ผŒๅธฆ็ƒญ้‡่ฝฝ๏ผ‰
python main.py --dev

# ็ปˆ็ซฏ 2: ๅฏๅŠจๅ‰็ซฏ๏ผˆ็‹ฌ็ซ‹ๅผ€ๅ‘ๆœๅŠกๅ™จ๏ผ‰
cd rpg-frontend
npm run dev

็”Ÿไบงๆจกๅผ๏ผš

# ๅ•ๅ‘ฝไปคๅฏๅŠจ๏ผˆ่‡ชๅŠจๆž„ๅปบๅ‰็ซฏ๏ผ‰
python main.py

4. ่ฎฟ้—ฎๅบ”็”จ


๐Ÿ“ ้กน็›ฎ็ป“ๆž„

.
โ”œโ”€โ”€ agents/                 # Agent ๅฎž็Žฐ
โ”‚   โ”œโ”€โ”€ manager_agent.py   # Manager ๆ™บ่ƒฝไฝ“๏ผˆไปปๅŠกๅ่ฐƒ๏ผ‰
โ”‚   โ”œโ”€โ”€ chat_agent.py      # ๅŸบ็ก€ๅฏน่ฏๆ™บ่ƒฝไฝ“
โ”‚   โ””โ”€โ”€ __init__.py
โ”œโ”€โ”€ api/                   # FastAPI ๆŽฅๅฃ
โ”‚   โ”œโ”€โ”€ api_server.py      # ไธปๆœๅŠกๅ…ฅๅฃ
โ”‚   โ”œโ”€โ”€ agents_api.py      # Agent ้…็ฝฎๆŽฅๅฃ
โ”‚   โ”œโ”€โ”€ providers_api.py   # Provider ้…็ฝฎๆŽฅๅฃ
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ config/                # ้…็ฝฎ็ฎก็†
โ”‚   โ”œโ”€โ”€ agents_config.py   # Agent ้…็ฝฎ
โ”‚   โ”œโ”€โ”€ manager_config.py  # Manager ้…็ฝฎ
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ providers/             # LLM ๆไพ›ๅ•†็ฎก็†
โ”‚   โ”œโ”€โ”€ provider_manager.py
โ”‚   โ”œโ”€โ”€ dashscope_provider.py
โ”‚   โ”œโ”€โ”€ anthropic_provider.py
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ tools/                 # ๅทฅๅ…ท็ณป็ปŸ
โ”‚   โ”œโ”€โ”€ builtin/           # ๅ†…็ฝฎๅทฅๅ…ท
โ”‚   โ””โ”€โ”€ extensions/        # ๆ‰ฉๅฑ•ๅทฅๅ…ท
โ”œโ”€โ”€ rag_knowledge_base/    # RAG ็Ÿฅ่ฏ†ๅบ“
โ”œโ”€โ”€ rpg-frontend/          # ๅ‰็ซฏ้กน็›ฎ
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ game/          # Phaser ๆธธๆˆๅœบๆ™ฏ
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ChatScene.ts
โ”‚   โ”‚   โ”œโ”€โ”€ components/    # React ็ป„ไปถ
โ”‚   โ”‚   โ”œโ”€โ”€ pages/         # ้กต้ข็ป„ไปถ
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ””โ”€โ”€ package.json
โ”œโ”€โ”€ data/                  # ๆ•ฐๆฎๅญ˜ๅ‚จ
โ”œโ”€โ”€ main.py               # ไธปๅ…ฅๅฃ
โ””โ”€โ”€ requirements.txt      # Python ไพ่ต–

โš™๏ธ ้…็ฝฎ่ฏดๆ˜Ž

ๅˆ›ๅปบ Agent

  1. ่ฟ›ๅ…ฅ "Provider ้…็ฝฎ" ้กต้ข๏ผŒๆทปๅŠ  LLM ๆไพ›ๅ•†๏ผˆๅฆ‚ DashScopeใ€OpenAI๏ผ‰
  2. ่ฟ›ๅ…ฅ "Agent ้…็ฝฎ" ้กต้ข๏ผŒๅˆ›ๅปบ Worker Agent
  3. ๅฏ้€‰๏ผšๅœจ "Manager ้…็ฝฎ" ไธญๅฏ็”จ Manager ๆจกๅผ

Manager-Worker ๆจกๅผ

ๅฏ็”จๅŽ๏ผš

  • Manager ๅˆ†ๆž็”จๆˆท่ฏทๆฑ‚๏ผŒๆ‹†่งฃไธบๅญไปปๅŠก
  • ๅˆ†ๆดพ็ป™ๅˆ้€‚็š„ Worker ๆ‰ง่กŒ
  • ๆ”ถ้›†็ป“ๆžœๅนถๆ•ดๅˆๅ›žๅค

ไธๅฏ็”จๆ—ถ๏ผš

  • ไฝฟ็”จไผ ็ปŸ MsgHub ๆจกๅผ
  • ๆ‰€ๆœ‰ Agent ๅŒๆ—ถๆ”ถๅˆฐๆถˆๆฏๅนถ็‹ฌ็ซ‹ๅ›žๅค

๐Ÿ”Œ API ็ซฏ็‚น

็ซฏ็‚น ๆ–นๆณ• ๆ่ฟฐ
/api/chat POST ๅ‘้€ๆถˆๆฏ๏ผŒ่Žทๅ– Agent ๅ“ๅบ”
/api/agents GET ่Žทๅ–ๆ‰€ๆœ‰ Agent ๅˆ—่กจ
/api/agents POST ๅˆ›ๅปบๆ–ฐ Agent
/api/providers GET ่Žทๅ–ๆ‰€ๆœ‰ Provider ๅˆ—่กจ
/api/providers POST ๅˆ›ๅปบๆ–ฐ Provider
/api/system/reinitialize POST ้‡ๆ–ฐๅˆๅง‹ๅŒ–็ณป็ปŸ
/api/health GET ๅฅๅบทๆฃ€ๆŸฅ

ๆœฌ้กน็›ฎๅค„ไบŽๆ—ฉๆœŸๅผ€ๅ‘้˜ถๆฎต๏ผŒAPI ๅ’Œๆžถๆž„ๅฏ่ƒฝ้šๆ—ถ่ฐƒๆ•ดใ€‚ๆฌข่ฟŽๆไบค Issue ๅ’Œ PR๏ผ


๐Ÿ“„ ่ฎธๅฏ่ฏ

MIT License


๐Ÿ™ ่‡ด่ฐข

  • AgentScope - ๅคš Agent ๆก†ๆžถๅ‚่€ƒ
  • Phaser - 2D ๆธธๆˆๅผ•ๆ“Ž
  • FastAPI - ็Žฐไปฃ Python Web ๆก†ๆžถ

๐ŸŽฎ ๆ็คบ๏ผš่ฟ™ๆ˜ฏไธ€ไธชๅฎž้ชŒๆ€ง้กน็›ฎ๏ผŒๆ—จๅœจๆŽข็ดขๅคš Agent ๅไฝœ็š„ๅฏ่ง†ๅŒ–ไบคไบ’ๆ–นๅผใ€‚ๆฌข่ฟŽๅœจ Issues ไธญๅˆ†ไบซไฝ ็š„ๆƒณๆณ•ๅ’Œๅปบ่ฎฎ๏ผ

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors