Skip to content

aigc-apps/PAI-RAG

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

837 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

PAI-RAG

ๅผ€ๆบ Agentic RAG ๆก†ๆžถ๏ผŒ่ฎฉๆ™บ่ƒฝๆฃ€็ดขๅƒๅ‘ผๅธไธ€ๆ ท็ฎ€ๅ•

GitHub Stars License Python

ๅ›พ็‰‡็†่งฃ | ่”็ฝ‘ๆœ็ดข | ๅทฅๅ…ท่ฐƒ็”จ | ไปปๅŠก่ง„ๅˆ’ | MCP ้›†ๆˆ | Text-to-SQL

ๆ— ้œ€ ML ไธ“ๅฎถ๏ผŒ5 ๅˆ†้’Ÿๆž„ๅปบไผไธš็บง Agentic RAG ๅบ”็”จ

ๅฟซ้€Ÿๅผ€ๅง‹ | ๆ ธๅฟƒ็‰นๆ€ง | ๆžถๆž„ๆ€ป่งˆ | ้ƒจ็ฝฒๆŒ‡ๅ— | API ๆ–‡ๆกฃ | ่”็ณปๆˆ‘ไปฌ


PAI-RAG Demo

ไธบไป€ไนˆ้€‰ๆ‹ฉ PAI-RAG๏ผŸ

PAI-RAG ๆ˜ฏๅŸบไบŽ้˜ฟ้‡Œไบ‘ PAI ๅนณๅฐ็š„ๅผ€ๆบ Agentic RAG ๆก†ๆžถ๏ผŒไธ“ๆณจไบŽไผไธš็บงๅคๆ‚็Ÿฅ่ฏ†ๅค„็†ไธŽๆ™บ่ƒฝ้—ฎ็ญ”ๅœบๆ™ฏใ€‚ๅฎƒไธไป…ๆ˜ฏไธ€ไธช RAG ็ณป็ปŸ๏ผŒๆ›ดๆ˜ฏไธ€ไธช่žๅˆไบ†็Ÿฅ่ฏ†ๅบ“็ฎก็†ใ€ๅคšๆจกๆ€็†่งฃใ€ReAct ๆ™บ่ƒฝไฝ“ใ€MCP ๅทฅๅ…ท็”Ÿๆ€็š„ไธ€็ซ™ๅผ่งฃๅ†ณๆ–นๆกˆใ€‚

่ƒฝๅŠ› ไผ ็ปŸ RAG PAI-RAG
็Ÿฅ่ฏ†ๅบ“็ฎก็† ๅ•ๆ–‡ไปถไธŠไผ ๏ผŒๅˆ‡็‰‡ๅ›บๅฎš ๅนถๅ‘ไธŠไผ  + ๅŠจๆ€ๅˆ‡็‰‡ + ๅ…ƒๆ•ฐๆฎ่ฟ‡ๆปค
ๆ–‡ๆกฃ่งฃๆž ไป…ๆ–‡ๆœฌ 20+ ๆ ผๅผ๏ผšPDF / Office / ๅ›พ็‰‡ / ่ง†้ข‘
ๆฃ€็ดข็ญ–็•ฅ ๅ‘้‡ๆฃ€็ดข ๅ‘้‡ + ๅ…จๆ–‡ + ๆททๅˆๆฃ€็ดข + Rerank
ๅคšๆจกๆ€ ไธๆ”ฏๆŒ ๅ›พ็‰‡็†่งฃ + ่ง†้ข‘่งฃๆž + ๅ›พๆ–‡ๆททๅˆๅ›žๅค
ๅคๆ‚ไปปๅŠก ็ฎ€ๅ•้—ฎ็ญ” ReAct ๆ™บ่ƒฝไฝ“ + ไปปๅŠก่ง„ๅˆ’ + ๅนถ่กŒๅทฅๅ…ท่ฐƒ็”จ
ๅฎžๆ—ถไฟกๆฏ ้™ๆ€็Ÿฅ่ฏ†ๅบ“ ่”็ฝ‘ๆœ็ดข๏ผˆ้˜ฟ้‡Œไบ‘ IQS / Tavily๏ผ‰
ๅทฅๅ…ท็”Ÿๆ€ ๆœ‰้™ๆ’ไปถ MCP ๆทฑๅบฆ้›†ๆˆ๏ผˆๅฎขๆˆท็ซฏ + ๆœๅŠก็ซฏ๏ผ‰
ๆ•ฐๆฎๅˆ†ๆž ไธๆ”ฏๆŒ ไปฃ็ ๆฒ™็ฎฑ + Text-to-SQL
ไผไธš่ƒฝๅŠ› ้ซ˜ๅฎšๅˆถๆˆๆœฌ ๅคš็งŸๆˆท + RBAC + ๅฏ่ง‚ๆต‹ + ๅผ€็ฎฑๅณ็”จ

ๆ ธๅฟƒ็‰นๆ€ง

1. ไผไธš็บง็Ÿฅ่ฏ†ๅบ“็ฎก็†

  • 20+ ๆ–‡ๆกฃๆ ผๅผ๏ผšPDFใ€DOCXใ€PPTXใ€Excelใ€CSVใ€Markdownใ€HTMLใ€JSONLใ€ๅ›พ็‰‡ใ€่ง†้ข‘็ญ‰
  • ๆ™บ่ƒฝๅˆ‡็‰‡็ญ–็•ฅ๏ผšๅฅๅญ็บงใ€Token ็บงใ€ๆฎต่ฝ็บงใ€Markdown ๆ„Ÿ็Ÿฅใ€็‰ˆ้ขๆ„Ÿ็Ÿฅ็ญ‰ๅคš็ง็ญ–็•ฅ๏ผŒๆŒ‰็Ÿฅ่ฏ†ๅบ“็‹ฌ็ซ‹้…็ฝฎ
  • ไธ‰ๅคงๆฃ€็ดขๆจกๅผ๏ผšๅ‘้‡ๆฃ€็ดขใ€ๅ…จๆ–‡ๆฃ€็ดขใ€ๆททๅˆๆฃ€็ดข๏ผˆๅ‘้‡ + BM25๏ผ‰๏ผŒ้…ๅˆ Reranker ็ฒพๆŽ’
  • ๅ…ƒๆ•ฐๆฎ่ฟ‡ๆปค๏ผšๆ”ฏๆŒๆ ‡็ญพใ€ๆ—ถ้—ดใ€ๆฅๆบ็ญ‰ๅคš็ปดๅบฆๅคๅˆๆกไปถ่ฟ‡ๆปค๏ผŒๆœ€ๆทฑ 5 ๅฑ‚ๅตŒๅฅ—
  • Chunk ็บง็ฎก็†๏ผšๅฏ่ง†ๅŒ–ๆŸฅ็œ‹ใ€็ผ–่พ‘ใ€ๆฟ€ๆดป/ๅœ็”จๅ•ไธช็Ÿฅ่ฏ†็‰‡ๆฎต
  • FAQ ๆจกๅผ๏ผšExcel ็›ดๆŽฅๅฏผๅ…ฅไธบ้—ฎ็ญ”ๅฏน๏ผŒ้€‚้…ๅฎขๆœ็ญ‰ๅœบๆ™ฏ
  • ๅผ‚ๆญฅๅค„็†๏ผšๅŸบไบŽ Celery + Redis ็š„ๅŽๅฐไปปๅŠก้˜Ÿๅˆ—๏ผŒๅคงๆ‰น้‡ๆ–‡ไปถไธŠไผ ไธ้˜ปๅกž

2. ๅคšๆจกๆ€ๅ†…ๅฎน็†่งฃ

  • ๆ–‡ๆกฃๅ›พ็‰‡่‡ชๅŠจๆๅ–๏ผšไปŽ PDF/DOCX/PPTX ไธญๆๅ–ๅ›พ็‰‡๏ผŒ้€š่ฟ‡ๅคšๆจกๆ€ๅคงๆจกๅž‹็”Ÿๆˆๆ่ฟฐๅนถ็ดขๅผ•
  • ๅ›พ็‰‡้—ฎ็ญ”๏ผš็›ดๆŽฅไธŠไผ ๅ›พ็‰‡ๅˆฐ็Ÿฅ่ฏ†ๅบ“ๆˆ–ไฝœไธบๅฏน่ฏ้™„ไปถ๏ผŒAI ่‡ชๅŠจ็†่งฃๅ›พ็‰‡ๅ†…ๅฎน
  • ่ง†้ข‘่งฃๆž๏ผšๆ”ฏๆŒ MP4/AVI/MOV ็ญ‰่ง†้ข‘ๆ ผๅผ๏ผŒ่‡ชๅŠจๆๅ–ๅ…ณ้”ฎๅธงๅนถ็”Ÿๆˆๆ่ฟฐ
  • ๅ›พๆ–‡ๆททๅˆ็”Ÿๆˆ๏ผšๅ›ž็ญ”ไธญ่‡ชๅŠจๅตŒๅ…ฅ็›ธๅ…ณๅ›พ็‰‡๏ผŒ็”Ÿๆˆๆ›ดไธฐๅฏŒ็›ด่ง‚็š„็ป“ๆžœ

3. Agentic RAG ๆ™บ่ƒฝไฝ“

  • ReAct ๆก†ๆžถ๏ผšๆ€่€ƒ-่กŒๅŠจ-่ง‚ๅฏŸๅพช็Žฏ๏ผŒๆ”ฏๆŒๅนถ่กŒๅทฅๅ…ท่ฐƒ็”จ๏ผŒๆœ€ๅคง 20 ๆญฅๆŽจ็†
  • ๆ€็ปด้“พๆ”ฏๆŒ๏ผšๅŽŸ็”Ÿๆ”ฏๆŒ Qwen3ใ€DeepSeek-R1 ็ญ‰ๆ€่€ƒๆจกๅž‹๏ผŒๅˆ†็ฆปๆŽจ็†่ฟ‡็จ‹ไธŽๆœ€็ปˆๅ›ž็ญ”
  • ไปปๅŠก่ง„ๅˆ’๏ผš่‡ชๅŠจๆ‹†่งฃๅคๆ‚ๅคšๆญฅ้ชคไปปๅŠก๏ผˆๅฆ‚"ๅฏนๆฏ” 2023 ๅนด่ดขๆŠฅไธŽ่กŒไธš่ถ‹ๅŠฟ"๏ผ‰
  • ๆตๅผ่พ“ๅ‡บ๏ผšSSE ๅฎžๆ—ถๆŽจ้€๏ผŒๅทฅๅ…ท่ฐƒ็”จ่ฟ‡็จ‹้€ๆ˜Žๅฏ่ง

4. MCP ็”Ÿๆ€้›†ๆˆ

  • MCP ๅฎขๆˆท็ซฏ๏ผšๆŽฅๅ…ฅไปปๆ„ๅค–้ƒจ MCP ๆœๅŠกๅ™จ๏ผˆSSE/stdio๏ผ‰๏ผŒๅณๆ—ถๆ‰ฉๅฑ•ๅทฅๅ…ท่ƒฝๅŠ›
  • MCP ๆœๅŠก็ซฏ๏ผšๅฐ†็Ÿฅ่ฏ†ๅบ“ๆฃ€็ดขๆšด้œฒไธบ MCP ๅทฅๅ…ท๏ผŒไพ›ๅค–้ƒจ AI Agent ่ฐƒ็”จ
  • ๅณๆ’ๅณ็”จ๏ผš้€š่ฟ‡ Web UI ๆˆ– API ๅŠจๆ€ๆทปๅŠ /็งป้™ค MCP ๆœๅŠกๅ™จ

5. ไธฐๅฏŒ็š„ๅ†…็ฝฎๅทฅๅ…ท

ๅทฅๅ…ท ่ฏดๆ˜Ž
็Ÿฅ่ฏ†ๅบ“ๆฃ€็ดข ๅฏน้…็ฝฎ็š„็Ÿฅ่ฏ†ๅบ“่ฟ›่กŒ RAG ๆฃ€็ดข
่”็ฝ‘ๆœ็ดข ้˜ฟ้‡Œไบ‘ IQS / Tavily ๅฎžๆ—ถๆœ็ดข
็ฝ‘้กตๆต่งˆ ่ฎฟ้—ฎๅนถ่งฃๆžๆŒ‡ๅฎš URL ๅ†…ๅฎน
ไปฃ็ ๆฒ™็ฎฑ ไบ‘็ซฏ Python ๆฒ™็ฎฑ๏ผŒๆ”ฏๆŒๆ•ฐๆฎๅˆ†ๆžๅ’Œๅ›พ่กจ็”Ÿๆˆ
Text-to-SQL ่‡ช็„ถ่ฏญ่จ€ๆŸฅ่ฏข MySQL/PostgreSQL ๆ•ฐๆฎๅบ“
้™„ไปถ่งฃๆž ่ฏปๅ–ๅˆ†ๆžไธŠไผ ็š„ๆ–‡ไปถ้™„ไปถ
ๆ€่€ƒๆŽจ็† ็ป“ๆž„ๅŒ–็š„ๅๆ€ไธŽๆŽจ็†
ไปปๅŠก่ง„ๅˆ’ ๅคๆ‚ไปปๅŠก็š„ๅˆ†่งฃไธŽ่ง„ๅˆ’

6. ไผไธš็บง่ƒฝๅŠ›

  • ๅคš็งŸๆˆทๆžถๆž„๏ผšๆ‰€ๆœ‰่ต„ๆบๆŒ‰ tenant_id ้š”็ฆป๏ผŒ้€‚ๅˆ SaaS ๅคš็งŸๆˆท้ƒจ็ฝฒ
  • RBAC ๆƒ้™ๆŽงๅˆถ๏ผš็”จๆˆท-่ง’่‰ฒ-ๆ–‡ๆกฃไธ‰็บงๆƒ้™๏ผŒ็ฒพ็กฎๅˆฐ Chunk ็บงๅˆซ็š„่ฎฟ้—ฎๆŽงๅˆถ
  • ๅ†…ๅฎนๅฎ‰ๅ…จ๏ผš้›†ๆˆ้˜ฟ้‡Œไบ‘ๅ†…ๅฎนๅฎ‰ๅ…จ๏ผˆGreen๏ผ‰๏ผŒ่‡ชๅŠจๅฎกๆŸฅ่พ“ๅ…ฅ่พ“ๅ‡บ
  • ๅฏ่ง‚ๆต‹ๆ€ง๏ผšOpenTelemetry ๅ…จ้“พ่ทฏ่ฟฝ่ธช๏ผŒๆ”ฏๆŒ OTLP/HTTP ๅ’Œ OTLP/gRPC
  • OpenAI ๅ…ผๅฎน API๏ผš/v1/chat/completions ๆ ‡ๅ‡†ๆŽฅๅฃ๏ผŒๅฏ็›ดๆŽฅๅฏนๆŽฅ็Žฐๆœ‰ๅบ”็”จ

ๆžถๆž„ๆ€ป่งˆ

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    Web UI (Next.js)                       โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                  FastAPI Backend                          โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚Chat API โ”‚  โ”‚ RAG API  โ”‚  โ”‚Config APIโ”‚  โ”‚ MCP API  โ”‚  โ”‚
โ”‚  โ”‚(OpenAI) โ”‚  โ”‚(Retrievalโ”‚  โ”‚(็ฎก็†ๆŽฅๅฃ)โ”‚  โ”‚(ๅทฅๅ…ทๆœๅŠก)โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ”‚       โ”‚            โ”‚                                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚              ReAct Agent Engine                     โ”‚   โ”‚
โ”‚  โ”‚  โ”Œโ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚   โ”‚
โ”‚  โ”‚  โ”‚ KB โ”‚ โ”‚ๆœ็ดขโ”‚ โ”‚ไปฃ็ โ”‚ โ”‚T2SQLโ”‚ โ”‚MCPโ”‚ โ”‚้™„ไปถ/ๅคšๆจกๆ€โ”‚ โ”‚   โ”‚
โ”‚  โ”‚  โ””โ”€โ”€โ”ฌโ”€โ”˜ โ””โ”€โ”€โ”ฌโ”€โ”˜ โ””โ”€โ”€โ”ฌโ”€โ”˜ โ””โ”€โ”€โ”ฌโ”€โ”€โ”˜ โ””โ”€โ”ฌโ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ” โ”Œโ”€โ–ผโ”€โ”€โ” โ”Œโ–ผโ”€โ”€โ”€โ” โ”Œโ–ผโ”€โ”€โ” โ”Œโ–ผโ”€โ”€โ”€โ”€โ” โ”Œโ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚VectorDBโ”‚ โ”‚IQS/โ”‚ โ”‚ไบ‘ๆฒ™โ”‚ โ”‚DB โ”‚ โ”‚ๅค–้ƒจ  โ”‚ โ”‚ๆ–‡ไปถๅญ˜ๅ‚จ  โ”‚   โ”‚
โ”‚  โ”‚7็งๅŽ็ซฏ โ”‚ โ”‚ๆœ็ดขโ”‚ โ”‚ ็ฎฑ โ”‚ โ”‚   โ”‚ โ”‚MCP  โ”‚ โ”‚Local/OSSโ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ๆ”ฏๆŒ็š„ๅ‘้‡ๆ•ฐๆฎๅบ“

ๅŽ็ซฏ ็ฑปๅž‹ ๅ‘้‡ๆฃ€็ดข ๅ…จๆ–‡ๆฃ€็ดข ๆททๅˆๆฃ€็ดข
Chroma (ๆœฌๅœฐ) ๅตŒๅ…ฅๅผ โœ… โŒ โŒ
Milvus ไบ‘/่‡ชๅปบ โœ… โœ… โœ…
Elasticsearch ไบ‘/่‡ชๅปบ โœ… โœ… โœ…
PostgreSQL (pgvector) ไบ‘/่‡ชๅปบ โœ… โœ… โœ…
Hologres ้˜ฟ้‡Œไบ‘ โœ… โŒ โŒ
OpenSearch ้˜ฟ้‡Œไบ‘ โœ… โŒ โŒ
Tablestore ้˜ฟ้‡Œไบ‘ โœ… โŒ โŒ

ๆ”ฏๆŒ็š„ LLM

้€š่ฟ‡ OpenAI ๅ…ผๅฎนๆŽฅๅฃ๏ผŒๆ”ฏๆŒๆŽฅๅ…ฅไปปๆ„ๅคง่ฏญ่จ€ๆจกๅž‹๏ผš

  • ้€šไน‰ๅƒ้—ฎ๏ผˆDashScope๏ผ‰๏ผšQwen-Max / Qwen-Plus / Qwen-Turbo / Qwen-VL ็ญ‰
  • OpenAI๏ผšGPT-4o / GPT-4 / GPT-3.5 ็ญ‰
  • ๅผ€ๆบ่‡ช้ƒจ็ฝฒ๏ผš้€š่ฟ‡ vLLM / Ollama ็ญ‰้ƒจ็ฝฒ็š„ไปปๆ„ๆจกๅž‹
  • ๆ€่€ƒๆจกๅž‹๏ผšๅŽŸ็”Ÿๆ”ฏๆŒ Qwen3ใ€DeepSeek-R1 ็ญ‰ๆ€็ปด้“พๆจกๅž‹

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

Docker ้ƒจ็ฝฒ๏ผˆๆŽจ่๏ผ‰

git clone https://github.com/aigc-apps/PAI-RAG.git
cd PAI-RAG/docker
cp .env.example .env
# ็ผ–่พ‘ .env ้…็ฝฎไฝ ็š„ๅ‚ๆ•ฐ
docker compose up -d

ๅฏๅŠจๅŽ่ฎฟ้—ฎ http://localhost:8680 ๅณๅฏไฝฟ็”จใ€‚

ๆœฌๅœฐๅผ€ๅ‘

# ๅˆ›ๅปบ Python 3.11 ็Žฏๅขƒ
conda create -n pai-rag python=3.11 && conda activate pai-rag

# ๅฎ‰่ฃ…ไพ่ต–
pip install poetry && poetry install

# ้…็ฝฎ็Žฏๅขƒๅ˜้‡
cp .env.example .env

# ๅฏๅŠจๆœๅŠก๏ผˆ้œ€่ฆๅ…ˆๅฏๅŠจ Redis๏ผ‰
./scripts/start.sh --dev

้˜ฟ้‡Œไบ‘ EAS ้ƒจ็ฝฒ

ๅ‚่€ƒ EAS ้ƒจ็ฝฒๆŒ‡ๅ—๏ผŒไธ€้”ฎ้ƒจ็ฝฒๅˆฐ้˜ฟ้‡Œไบ‘ PAI-EASใ€‚


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

ๅ˜้‡ ่ฏดๆ˜Ž ้ป˜่ฎคๅ€ผ
DB_TYPE ๅ…ƒๆ•ฐๆฎๅบ“็ฑปๅž‹๏ผšsqlite / postgresql / mysql sqlite
FILE_STORE_TYPE ๆ–‡ไปถๅญ˜ๅ‚จ๏ผšlocal / oss local
VECTOR_DB_TYPE ๅ‘้‡ๅบ“๏ผšlocal / milvus / elasticsearch / postgresql / hologres / opensearch / tablestore local
REDIS_HOST Redis ๅœฐๅ€ localhost
USE_CUDA ๆ˜ฏๅฆๅฏ็”จ GPU ๅŠ ้€Ÿ false
MAX_RECURSION_STEPS Agent ๆœ€ๅคงๆŽจ็†ๆญฅๆ•ฐ 20
ENABLE_MINERU ๅฏ็”จ MinerU ้ซ˜็บง PDF ่งฃๆž false

ๅฎŒๆ•ด้…็ฝฎ่ฏทๅ‚่€ƒ ็Žฏๅขƒๅ˜้‡ๆ–‡ๆกฃใ€‚


API ๆ–‡ๆกฃ

PAI-RAG ๆไพ› OpenAI ๅ…ผๅฎน็š„ๆ ‡ๅ‡† API๏ผš

# Chat Completions๏ผˆๆตๅผ๏ผ‰
curl http://localhost:8682/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-model",
    "messages": [{"role": "user", "content": "ไฝ ๅฅฝ"}],
    "stream": true
  }'
ๆŽฅๅฃ ่ฏดๆ˜Ž ๆ–‡ๆกฃ
POST /v1/chat/completions ๅฏน่ฏ่กฅๅ…จ๏ผˆOpenAI ๅ…ผๅฎน๏ผ‰ Chat API
POST /v1/retrieval ็Ÿฅ่ฏ†ๅบ“ๆฃ€็ดข๏ผˆDify ๅ…ผๅฎน๏ผ‰ Retrieval API
POST /v1/embeddings ๆ–‡ๆœฌๅ‘้‡ๅŒ– -
GET/POST /v1/knowledgebases ็Ÿฅ่ฏ†ๅบ“็ฎก็† KB API
POST /v1/mcp/* MCP ๅทฅๅ…ทๆœๅŠก -

ๆทฑๅ…ฅไฝฟ็”จ

้กน็›ฎ้ƒจ็ฝฒ

ๆจกๅž‹้…็ฝฎ

ๅŠŸ่ƒฝๆŒ‡ๅ—

API ๅ‚่€ƒ


้กน็›ฎ็ป“ๆž„

PAI-RAG/
โ”œโ”€โ”€ backend/                 # FastAPI ๅŽ็ซฏ
โ”‚   โ”œโ”€โ”€ api/v1/              # REST API ่ทฏ็”ฑ
โ”‚   โ”œโ”€โ”€ agent/               # ReAct ๆ™บ่ƒฝไฝ“ๅผ•ๆ“Ž
โ”‚   โ”œโ”€โ”€ tools/               # ๅ†…็ฝฎๅทฅๅ…ท๏ผˆๆฃ€็ดข/ๆœ็ดข/ไปฃ็ /SQL/้™„ไปถ็ญ‰๏ผ‰
โ”‚   โ”œโ”€โ”€ rag/                 # RAG ็ฎก็บฟ๏ผˆๅˆ‡็‰‡/ๅ‘้‡ๅŒ–/้‡ๆŽ’ๅบ๏ผ‰
โ”‚   โ”œโ”€โ”€ common/              # ้€š็”จ็ป„ไปถ๏ผˆLLM ๅฎขๆˆท็ซฏ/ๅ‘้‡ๅบ“่ฟžๆŽฅๅ™จ๏ผ‰
โ”‚   โ”œโ”€โ”€ service/             # ไธšๅŠก้€ป่พ‘ๅฑ‚
โ”‚   โ”œโ”€โ”€ evaluation/          # RAG ่ฏ„ไผฐๆก†ๆžถ
โ”‚   โ””โ”€โ”€ extensions/          # ๆ‰ฉๅฑ•๏ผˆๅ†…ๅฎนๅฎ‰ๅ…จ/้“พ่ทฏ่ฟฝ่ธช๏ผ‰
โ”œโ”€โ”€ frontend/                # Next.js Web UI
โ”œโ”€โ”€ integrations/
โ”‚   โ””โ”€โ”€ pairag-file/         # ๆ–‡ไปถ่งฃๆžๅบ“๏ผˆ20+ ๆ ผๅผ๏ผ‰
โ”œโ”€โ”€ docker/                  # Docker Compose ้ƒจ็ฝฒ
โ”œโ”€โ”€ docs/                    # ๆ–‡ๆกฃ
โ””โ”€โ”€ alembic/                 # ๆ•ฐๆฎๅบ“่ฟ็งป

่”็ณปๆˆ‘ไปฌ

PAI-RAG ๅฎ˜ๆ–น้’‰้’‰็พคๅท๏ผš27370042974

DingTalk Group

About

An easy-to-use framework for modular RAG

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors