尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證bot
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Trợ lý AI cho dự án nhà phố Ny'ah Phú Định (Quận 8, TP.HCM) của Nhà Đạt: vừa là chatbot tư vấn nhúng vào website, vừa là màn trình chiếu thông minh tại Sale Gallery — nghe cuộc trò chuyện giữa Sale và khách rồi tự động chiếu slide (mặt bằng, hình ảnh, giá, vị trí…) đúng chủ đề đang nói.檢視完整 README ↗
Trợ lý AI cho dự án nhà phố Ny'ah Phú Định (Quận 8, TP.HCM) của Nhà Đạt: vừa là chatbot tư vấn nhúng vào website, vừa là màn trình chiếu thông minh tại Sale Gallery — nghe cuộc trò chuyện giữa Sale và khách rồi tự động chiếu slide (mặt bằng, hình ảnh, giá, vị trí…) đúng chủ đề đang nói.
/, /embed)data/ được chia chunk, embed bằng gemini-embedding-001, lưu vào index.json; mỗi câu hỏi chỉ truy hồi vài đoạn liên quan nhất trước khi gửi cho Gemini — nhanh, rẻ, hạn chế bịa.persona.md; ưu tiên trả lời nguyên văn bộ Q&A chuẩn do con người soạn.lib/units.ts).lib/maps.ts).chatbot-logs của GitHub và báo về Telegram.nhadat-chatbot.php gắn widget popup, load trang /embed qua iframe./slide)lib/static_slides.ts), pha 2 LLM tinh chỉnh nội dung (có cache câu trả lời lặp lại).lib/presentation-machine.ts) — unit-test được bằng bun test, tách hẳn khỏi React.?debug=1.hooks/useVoiceAgent.ts).vi-VN-HoaiMyNeural), chỉnh được tốc độ đọc. Trang /voice cho trải nghiệm hội thoại bằng giọng nói./companion)/sale)/slide (tab TV kéo sang màn khách): thấy TV nghe được câu gì, câu đó qua cổng hay bị bỏ qua (lý do, chủ đề, điểm, từ khóa trúng, slide tĩnh khớp), TV đang chiếu gì và từ nguồn nào (slide tĩnh / LLM).BroadcastChannel (lib/sale-monitor.ts) — không cần server showroom, chạy được trên Vercel. Tab TV không bị đè HUD như ?debug=1.server/app/api/*/route.ts) — sửa một nơi, chạy cả Vercel lẫn LAN (slide tĩnh ~14ms trong LAN).lib/ws-protocol.ts) nối TV ↔ Companion ↔ server: đẩy SLIDE_READY/REFINE_READY, prefetch ảnh, heartbeat + auto-reconnect, resume slide khi TV kết nối lại./admin)sync_and_reindex.js đồng bộ dữ liệu từ OneDrive → data/ → rebuild index.json (kèm mô tả ảnh tự động bằng Gemini Vision).| Lớp | Công nghệ |
|---|---|
| Frontend | Next.js 14 (App Router), React 18, TypeScript, Tailwind CSS |
| LLM | Google Gemini (gemini-flash-latest), embedding gemini-embedding-001 |
| RAG | Index tự xây (lib/rag.ts): chunk + overlap, lọc chunk rác, cosine trên vector đã chuẩn hóa, lưu index.json trên nhánh GitHub riêng |
| STT | Deepgram Nova → Gemini → Whisper (Groq), Web Speech API |
| TTS | Edge TTS (edge-tts-universal) |
| Realtime | WebSocket (Bun), giao thức riêng trong lib/ws-protocol.ts |
| Server LAN | Bun + ElysiaJS (server/) |
| Deploy | Vercel (cloud) + mini-PC showroom (LAN/kiosk) |
| Lưu trữ log/index | GitHub API, nhánh chatbot-logs (không trigger deploy) |
| Khác | Google Maps Directions, Telegram Bot (báo lead), sharp (ảnh blur nền), Playwright |
app/
page.tsx # Chatbot chính
embed/ # Bản nhúng iframe cho WordPress
slide/ # Live Slide cho TV showroom
companion/ # Điều khiển từ điện thoại Sale
sale/ # Tab Sale Monitor: soi TV nghe gì/hiểu gì + gợi ý nói tiếp
voice/ # Hội thoại bằng giọng nói
admin/ # Trang quản trị dữ liệu
api/ # chat, slide, transcribe, tts, config, log-session, admin/*
components/ # ChatPanel, SlideStage, SlideBody, AttractScreen, DebugHud
hooks/ # useVoiceAgent, usePresentationMachine
lib/ # rag, intent, units, maps, presentation-machine, ws-protocol...
server/ # Server LAN Bun + ElysiaJS
data/ # Dữ liệu dự án (nguồn RAG)
docs/ # Tech spec, kịch bản câu hỏi, yêu cầu
scripts/ # gen-blur-bg, pull-index, dump-slides...
tests/ # test state machine, harness đánh giá RAG/retrieval
persona.md # Persona tư vấn viên
index.json # Chỉ mục embedding RAG
nhadat-chatbot.php# Plugin WordPress
npm install
npm run dev # Next.js dev tại http://localhost:3000
npm run server # Server LAN showroom (cần bun >= 1.1)
npm run test:machine # Unit test state machine trình chiếu
npm run test:harness # Harness đánh giá chất lượng trả lời RAG
npm run test:retrieval # Harness đánh giá truy hồi
Biến môi trường cần thiết (.env.local / .env):
| Biến | Dùng cho |
|---|---|
GEMINI_API_KEY | LLM trả lời + embedding + STT fallback |
DEEPGRAM_API_KEY | STT chính (tùy chọn nhưng nên có) |
GROQ_API_KEY | STT fallback Whisper (tùy chọn) |
GITHUB_TOKEN | Ghi log phiên + tải/lưu index.json |
TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID | Báo lead về Telegram |
GOOGLE_MAPS_API_KEY | Tính tuyến đường thật |
| Đường dẫn | Mô tả |
|---|---|
/ | Chatbot tư vấn |
/embed | Bản nhúng iframe (WordPress) |
/slide | Live Slide TV showroom (?debug=1 bật HUD, ?ws=... nối server LAN) |
/companion | Điều khiển cho Sale |
/voice | Hội thoại giọng nói |
/admin | Quản trị dữ liệu & log |