Content-based Q&A Agent ChainOpera AI White Paper / Roadmap (Minimalist RAG).
Tính năng:
- Ingest nội dung roadmap thành embeddings (OpenAI) và lưu kb/index.json.
- API
POST /agent/asktrả lời câu hỏi bằng tiếng Việt, trích xuất ngữ cảnh liên quan. - Dễ deploy, dễ mở rộng.
Yêu cầu: Node 18+ và biến môi trường
OPENAI_API_KEY(sử dụng Embeddings + Chat Completions).
npm install
cp .env.example .env # thêm OPENAI_API_KEY vào .envSửa/giữ file nội dung ở kb/chainopera_roadmap.md, rồi chạy:
npm run ingestLần đầu sẽ tạo kb/index.json (vector store tối giản).
npm run dev
# hoặc
npm startMặc định server ở http://localhost:3000.
curl -X POST http://localhost:3000/agent/ask -H "Content-Type: application/json" -d '{"question":"roadmap này nói về chủ đề gì và khi nào có token/TGE?"}'.
├─ kb/
│ ├─ chainopera_roadmap.md # nội dung nguồn
│ └─ index.json # embeddings (tạo bởi ingest)
├─ scripts/
│ └─ ingest.js # tạo embeddings
├─ src/
│ ├─ agent.js # logic chọn ngữ cảnh & gọi LLM
│ └─ index.js # Express API
├─ .env.example
├─ package.json
└─ README.md
- Bảo mật: Không commit
.env. Có thể dùng GitHub Actions Secret hoặc Docker Secret. - Mở rộng: Thêm nhiều file
.mdvàokb/rồi cập nhậtscripts/ingest.jsđể đọc tất cả. - Vector store: Có thể thay
kb/index.jsonbằng Postgres + pgvector, Pinecone, hoặc Weaviate. - Model: Sử dụng
gpt-4o-mini(rẻ/nhanh). Tùy chọngpt-4.1nếu cần chất lượng cao hơn.