Releases: j2n7-official-git/Project1-FooderAI-25GAI
Release list
FooderAI v1.05_5510sf.final260601_lab25gai - Trợ lý Dinh dưỡng Thông minh Tích hợp AI
🍏 FooderAI v1.05_5510sf.final260601_lab25gai - Trợ lý Dinh dưỡng Thông minh Tích hợp AI
Giới thiệu Tổng quan
FooderAI là một ứng dụng máy tính (desktop application) được xây dựng nhằm hỗ trợ người dùng theo dõi và cải thiện sức khỏe cá nhân thông qua sự hỗ trợ của Trí tuệ Nhân tạo. Được phát triển bằng Python (PySide6) và tích hợp hệ sinh thái đám mây của Google (OAuth 2.0 & Gemini 2.5 Flash Lite), ứng dụng mang đến trải nghiệm cá nhân hóa toàn diện: từ việc tính toán các chỉ số cơ thể chuẩn y khoa đến việc tư vấn thực đơn và bài tập luyện.
Dự án này là kết quả của Đồ án Cơ sở 1, giải quyết thành công những hạn chế của các ứng dụng sức khỏe truyền thống bằng cách kết hợp theo dõi thủ công, trò chuyện với chatbot và nhận dạng hình ảnh trong cùng một nền tảng thống nhất.
🌟 Các Tính Năng Nổi Bật
- Quản Lý Hồ Sơ & Xác Thực An Toàn: Tích hợp hệ thống đăng nhập không mật khẩu thông qua Google OAuth 2.0 bằng cơ chế máy chủ cục bộ (local server) an toàn. Hệ thống tự động tính toán các chỉ số quan trọng như BMI, BMR (theo công thức Mifflin-St Jeor khoa học) và TDEE để đưa ra lượng calo mục tiêu. Thẻ BMI được thiết kế trực quan kèm tính năng cảnh báo sức khỏe thông minh.
- Trợ Lý Ảo GritalystAI: Chatbot sử dụng sức mạnh xử lý ngôn ngữ tự nhiên để tư vấn dinh dưỡng và thể dục bằng tiếng Việt. AI có khả năng duy trì ngữ cảnh hội thoại, tự động nạp các chỉ số cá nhân của người dùng để đưa ra lời khuyên chính xác, đồng thời được cấu hình nghiêm ngặt để từ chối các câu hỏi ngoài lề.
- Nhận Diện Thực Phẩm Qua Ảnh (Food Scanner): Ứng dụng thị giác máy tính (Gemini Vision) để phân tích hình ảnh món ăn do người dùng tải lên. Hệ thống bóc tách và trả về tên món, mô tả dinh dưỡng, lợi ích và lưu ý sức khỏe kèm lượng calo ước tính.
- Sổ Tay Ngoại Tuyến Đa Phương Tiện: Thư viện tích hợp sẵn thông tin các món ăn Việt Nam và các bài tập rèn luyện. Đặc biệt, tính năng hỗ trợ phát video hướng dẫn thể dục trực tiếp ngay trên giao diện thông qua PySide6 Multimedia mang lại trải nghiệm mượt mà.
🛠 Thay Đổi Kỹ Thuật Trong Phiên Bản v1.05_5510sf.final260601_lab25gai
- Tính năng mới: Hoàn thiện và kích hoạt thành công cơ chế khởi tạo lại phiên trò chuyện (Reset Chat) trong màn hình Trợ lý AI.
- Cơ sở dữ liệu: Loại bỏ các file dữ liệu
.mdf/.ldfcứng, cấu trúc lại toàn bộ hệ thống bằng scriptFooderAI_FinalSchema.sqlchuẩn mực. CSDL được thiết kế tối ưu với 5 bảng chính và 3 view hỗ trợ tra cứu, sử dụng Windows Authentication đảm bảo bảo mật. - Hệ thống & Hiệu năng: Kiến trúc ba tầng (Layered Architecture) phân tách rõ ràng UI, Logic và Data. Bổ sung module
fooder_logger.pyđể theo dõi tiến trình nền. Các tác vụ gọi API đều được đưa vào luồng riêng (Worker Thread) giúp tốc độ phản hồi trung bình chỉ từ 1.8 đến 3.2 giây.
Với bản cập nhật này, FooderAI đã đáp ứng 100% các yêu cầu kiểm thử, sẵn sàng hoạt động ổn định và mang lại giá trị thực tiễn cao cho người dùng.
Cách sử dụng: Tải file assets.zip vào, giải nén nó ra và đặt nó tại [tên ổ đĩa đang lưu trữ dự án]:\FooderAI, không đặt đi đâu khác tránh bị hỏng hóc file
FooderAI v1.01_1600s.dev260529_lab25gai
🌿 FooderAI v1.01_1600s.dev260529_lab25gai
Đồ án cơ sở 1 — Trợ Lý Dinh Dưỡng Thông Minh
Khoa Khoa học Máy tính · Trường Đại học Công nghệ Thông tin và Truyền thông Việt – Hàn (VKU) · Đà Nẵng, 2026
| Họ và tên | MSSV | |
|---|---|---|
| Nguyễn Phú Tài | 25AI045 | tainp.25ai@vku.udn.vn |
| Phan Thanh Tuấn | 25AI064 | tuanpt.25ai@vku.udn.vn |
| Nguyễn Việt Anh | 25AI002 | anhnv.25ai@vku.udn.vn |
Giảng viên hướng dẫn: TS. Nguyễn Quang Vũ · KS. Đoàn Nguyễn Thành Lương
© 2026 Nhóm 25GAI — Phần mềm được phát triển phục vụ mục đích học thuật. Mọi quyền được bảo lưu.
📌 Giải mã tên phiên bản
v1.01 → phiên bản 1.01
1600s → build lúc 16:00
dev260529 → ngày dev 29/05/2026
lab25gai → lab nhóm 25GAI — VKU
🍜 Food Scan — Gemini Vision
Tích hợp Gemini Vision phân tích ảnh món ăn, trả về tên món, mô tả dinh dưỡng, lợi điểm và lưu ý sức khỏe. Xử lý trên QThread riêng — UI không bị đơ khi chờ AI.
🗄️ Database — Schema v1.4
Bổ sung bảng food_scan_log, Stored Procedure usp_log_scan, 2 INDEX và VIEW v_scan_summary thống kê quét theo ngày.
🐍 Python — fooder_database.py v1.1
Thêm log_scan() và get_scan_history(). Kết quả quét tự động lưu xuống DB sau mỗi lần AI trả về.
💬 Chat UI — page_ai.py v2.2
Sửa lỗi bubble tin nhắn bị bóp chữ. ChatBubble giờ dùng setFixedWidth(420) — không stretch, không bóp.
FooderAI v0.99_4699 - FDX1B | Checkpoint 22:55 - 26/05/2026
Full Changelog: https://github.com/j2n7-official-git/Project1-FooderAI-25GAI/commits/v0.99_4699.FDX1B_lab.25gai.260526.2255
🚧 Trạng thái: Đang phát triển — Checkpoint cuối ngày
✅ Đã fix trong phiên này
fooder_widgetUI.py— Thêmimport sysbị thiếu (resource_path crash)fooder_widgetUI.py— Táchlbl_textra ngoàiif os.path.exists(AttributeError crash)fooder_widgetUI.py— FixQFont.PreferAntialias→QFont.StyleStrategy.PreferAntialiasfooderMain.py— Thêm hàmresource_path()dùng__file__thayabspath(".")FooderAI.spec— Fixdatas=[]rỗng → bổ sung đầy đủ 13 subfolder assets + database- Tất cả
os.path.join("assets", ...)→ bọc bằngresource_path()để tương thích .exe
❌ Vấn đề còn tồn đọng (chưa giải quyết được)
- Mất toàn bộ ảnh khi chạy từ
dist/FooderAI.exe— assets chưa được đóng gói đúng vào .exe - Font Roboto không load được trong môi trường .exe
- Ảnh món ăn trong Sổ tay (~160 file) chưa hiển thị
- Chưa có assets trong repo (chưa commit folder
assets/)
📋 Việc cần làm tiếp
- Commit toàn bộ folder
assets/lên repo - Rebuild
.exevớiFooderAI.specmới - Test chạy từ
dist/FooderAI.exesau rebuild - Fix các
page_*.pychưa dùng `resource_path() - Cập nhật các tính năng quan trọng về mạch dbms và api như Gritalyst AI sẽ dự định mượn API của Google Gemini, quét món ăn cũng tương tự và cập nhật OAuth bên hồ sơ người dùng
📦 Assets Download
Hiện tại assets đã được chia các zip và đã tải về, để đảm bảo nó được chạy (Trong IDE của bạn chứ app .exe hiện tại vẫn lỗi thực thi)
thì vui lòng để thành các file như sau
GYM mode: [YourPartitionDisk]\FooderAI\assets\fdai-gym-content
FOOD mode: [YourPartitionDisk]\FooderAI\assets\fooder-almanac-content
UI mode: [YourPartitionDisk]:\FooderAI\assets
Giải nén vào thư mục gốc FooderAI/ trước khi chạy.



👥 Nhóm 25GAI — Tài, Tuấn, Vanh
v0.99_4595.FDX1
Assets Package
Tải file zip và giải nén vào thư mục gốc FooderAI/ để chạy đầy đủ.
Nội dung
- assets/fdai-gym-content/ — Video & thumbnail 32 bài tập
- assets/fdai-food-content/ — Ảnh 160+ món ăn
- assets/fooderai-logo — Icon & logo app
Assets Package
Tải file zip và giải nén vào thư mục gốc FooderAI/ để chạy đầy đủ.
Nội dung
- assets/fdai-gym-content/ — Video & thumbnail 32 bài tập
- assets/fdai-food-content/ — Ảnh 160+ món ăn
- assets/fooderai-logo — Icon & logo app
Cập nhật v0.99_4595.FDX1
✅ Hoàn thiện 5/5 tính năng cơ bản:
- 🤖 Trợ lý AI tư vấn sức khỏe & dinh dưỡng (Gemini API)
- 📷 Quét & nhận diện món ăn qua hình ảnh
- 📖 Sổ tay món ăn — 160+ món Việt Nam & quốc tế
- 💪 Chế độ thể dục — 32 bài tập cho 3 nhóm tuổi
- 👤 Hồ sơ người dùng — BMI, BMR, TDEE cá nhân hóa
FooderAI v0.99_2099 - Hoàn thiện Sổ tay món ăn & Fix UI
v0.96_1920
NEW (Under constructon features: Food Scanner UI with image upload % AI result layout, is developing and under-construction condition
Predict in the feature we have AI-integrated to find and detect the food i send it, and respond to answer what it is, how many nutrition contain in this food are, and something more....



v0.95_1212 (beta under construction)
FooderAI Beta 0.92_1746
FooderAI Beta 0.92_1746
🔧 Fixes
- Fix
_build_rightbị indent nhầm vào trong_build_left - Fix thiếu
if __name__ == "__main__"→ app không mở được (exit code 0) - Xóa content cột phải, giữ khung sạch để xây lại
✨ UI Updates
- Banner: font "Hồ sơ người dùng" tăng lên 25px Bold, bỏ dòng phụ đề
- Banner: shadow chữ 90° xuống 2px bằng custom ShadowLabel (paintEvent)
- Icon banner thay bằng AvatarBox(size=40) dùng ảnh fdai-userpage-unsignedin.png
- Frame border 2px solid nhẹ rgba(0,77,77,0.15), padding 6px đều
- Cột phải: khung trống bo góc 18px, sẵn sàng xây dần
📁 Files changed
page_user.py— full rewritefooderMain.py— thêm entry point









