Skip to content

Latest commit

ย 

History

History
101 lines (79 loc) ยท 2.98 KB

File metadata and controls

101 lines (79 loc) ยท 2.98 KB

LangGraph PPT Agent

ๅŸบไบŽ LangGraph ็š„ๆ™บ่ƒฝ PPT ็”Ÿๆˆ็ณป็ปŸ๏ผŒ้€š่ฟ‡ๅคš Agent ็Šถๆ€ๆœบๆžถๆž„ๅฎž็ŽฐไปŽไธป้ข˜ๅˆฐ PPT ็š„็ซฏๅˆฐ็ซฏ่‡ชๅŠจ็”Ÿๆˆใ€‚

๐ŸŒŸ ็‰นๆ€ง

  • Outline Graph: ้›†ๆˆๅพฎไฟกๆœ็ดข๏ผŒ่‡ชๅŠจ็”Ÿๆˆ็ป“ๆž„ๅŒ–ๅคง็บฒ
  • Content Graph: ้€้กต็”Ÿๆˆๅ†…ๅฎน๏ผŒๆ”ฏๆŒ RAG ็Ÿฅ่ฏ†ๅบ“ๅขžๅผบ
  • LLM Tool Calling: ๆจกๅž‹่‡ชไธปๅ†ณ็ญ–ๆ˜ฏๅฆ่ฐƒ็”จ็Ÿฅ่ฏ†ๅบ“ๆฃ€็ดข
  • JSON Schema ๆ ก้ชŒ: ็กฎไฟ่พ“ๅ‡บๆ ผๅผ 100% ๅฏ่งฃๆžๆธฒๆŸ“
  • ๆตๅผ่พ“ๅ‡บ: SSE ๅฎžๆ—ถๆŽจ้€็”Ÿๆˆ่ฟ›ๅบฆ

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

โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ langgraph_agents/     # ๆ ธๅฟƒ LangGraph ๅทฅไฝœๆต
โ”‚   โ”‚   โ”œโ”€โ”€ outline_graph.py  # ๅคง็บฒ็”Ÿๆˆ Agent
โ”‚   โ”‚   โ”œโ”€โ”€ content_graph.py  # ๅ†…ๅฎน็”Ÿๆˆ Agent (ๅซ RAG)
โ”‚   โ”‚   โ”œโ”€โ”€ ppt_graph.py      # ๅฎŒๆ•ดๆต็จ‹็ผ–ๆŽ’
โ”‚   โ”‚   โ”œโ”€โ”€ main_api.py       # FastAPI ๆœๅŠก
โ”‚   โ”‚   โ”œโ”€โ”€ tools.py          # ๅทฅๅ…ทๅฎšไน‰
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ””โ”€โ”€ personaldb/           # RAG ็Ÿฅ่ฏ†ๅบ“ๆœๅŠก
โ”œโ”€โ”€ frontend/                 # Vue 3 ๅ‰็ซฏ
โ””โ”€โ”€ doc/                      # ๆ–‡ๆกฃ

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

1. ็Žฏๅขƒๅ‡†ๅค‡

# ๅˆ›ๅปบ conda ็Žฏๅขƒ
conda create -n langgraph-ppt python=3.12
conda activate langgraph-ppt

# ๅฎ‰่ฃ…ๅŽ็ซฏไพ่ต–
cd backend/langgraph_agents
pip install -r requirements.txt

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

cp backend/langgraph_agents/.env.template backend/langgraph_agents/.env
# ็ผ–่พ‘ .env ๆ–‡ไปถ๏ผŒๅกซๅ…ฅๅฟ…่ฆ็š„ API Key

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

# ๆ–นๅผไธ€๏ผšไฝฟ็”จๅฏๅŠจ่„šๆœฌ
./start_langgraph.sh start

# ๆ–นๅผไบŒ๏ผšๆ‰‹ๅŠจๅฏๅŠจ
cd backend/langgraph_agents
uvicorn main_api:app --host 0.0.0.0 --port 10002

4. ๅฏๅŠจๅ‰็ซฏ

cd frontend
npm install
npm run dev

๐Ÿ”ง ๆŠ€ๆœฏๆ ˆ

  • LangGraph: ็Šถๆ€ๆœบๅทฅไฝœๆต็ผ–ๆŽ’
  • LangChain: LLM ๅทฅๅ…ท่ฐƒ็”จ
  • FastAPI: ๅŽ็ซฏ API ๆœๅŠก
  • Vue 3 + Vite: ๅ‰็ซฏๆก†ๆžถ
  • ChromaDB: ๅ‘้‡ๅญ˜ๅ‚จ (RAG)
  • SSE: ๆตๅผ่พ“ๅ‡บ

๐Ÿ“Š ๅทฅไฝœๆต

็”จๆˆท่พ“ๅ…ฅไธป้ข˜
     โ”‚
     โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Outline Graph                                       โ”‚
โ”‚  preprocess โ†’ search(ๅพฎไฟก) โ†’ generate โ†’ parse       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
     โ”‚
     โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Content Graph (ๅพช็Žฏๆฏ้กต)                            โ”‚
โ”‚  writer โ†โ†’ tool_executor(RAG) โ†’ checker โ†’ controllerโ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
     โ”‚
     โ–ผ
  ่พ“ๅ‡บ PPT JSON

๐Ÿ“„ License

MIT License