""" Script to add the 10 UMP innovation ideas to the vector database """ import asyncio import sys from pathlib import Path # Add parent directory to path sys.path.insert(0, str(Path(__file__).parent.parent)) from src.infrastructure.vector_db.qdrant_service import get_qdrant_service UMP_IDEAS = [ { "title": "Nền tảng Trợ lý AI học tập lâm sàng (Clinical AI Tutor)", "description": "Ứng dụng AI đóng vai trò trợ giảng cho sinh viên y, hỗ trợ phân tích ca bệnh giả lập, giải thích cận lâm sàng, và gợi ý chẩn đoán theo phác đồ Việt Nam.", "category": "Giáo dục - AI" }, { "title": "Hệ thống bệnh án điện tử học thuật (Academic EMR Sandbox)", "description": "Môi trường EMR mô phỏng cho đào tạo và nghiên cứu, cho phép sinh viên và giảng viên thực hành nhập – phân tích – khai thác dữ liệu y khoa mà không ảnh hưởng dữ liệu bệnh nhân thật.", "category": "Giáo dục - Chuyển đổi số" }, { "title": "Trung tâm mô phỏng y khoa bằng AR/VR & Digital Twin", "description": "Xây dựng phòng lab mô phỏng phẫu thuật, cấp cứu, và quy trình điều trị bằng AR/VR, kết hợp mô hình \"digital twin\" của cơ thể người phục vụ đào tạo nâng cao.", "category": "Giáo dục - AR/VR" }, { "title": "Chương trình Y tế cộng đồng số cho vùng sâu vùng xa", "description": "Kết hợp telehealth, trợ lý ảo y tế (agentic care) và AI sàng lọc sớm bệnh không lây (NCD) cho người dân vùng nông thôn, miền núi và hải đảo.", "category": "Tác động xã hội - Telehealth" }, { "title": "Nền tảng nghiên cứu AI y sinh dùng chung (UMP AI Research Hub)", "description": "Cung cấp hạ tầng GPU, kho dữ liệu y khoa ẩn danh, và công cụ phân tích AI cho giảng viên – nghiên cứu sinh – startup hợp tác nghiên cứu.", "category": "Nghiên cứu - AI" }, { "title": "Hệ thống theo dõi và dự báo sức khỏe sinh viên & nhân viên y tế", "description": "Ứng dụng phân tích dữ liệu và AI để phát hiện sớm stress, burnout, và vấn đề sức khỏe tâm thần trong cộng đồng sinh viên và nhân viên y tế.", "category": "Tác động xã hội - Sức khỏe" }, { "title": "Vườn ươm khởi nghiệp công nghệ y sinh (MedTech Incubator)", "description": "Hỗ trợ sinh viên, bác sĩ và giảng viên phát triển startup MedTech, HealthTech, AI y tế thông qua mentoring, quỹ seed và kết nối bệnh viện – doanh nghiệp.", "category": "Khởi nghiệp - MedTech" }, { "title": "Hệ thống quản lý chất lượng đào tạo và kiểm định số", "description": "Số hóa toàn bộ quy trình đảm bảo chất lượng nội bộ (IQA), đánh giá chương trình đào tạo, và chuẩn hóa theo tiêu chuẩn quốc tế (WFME, AUN-QA).", "category": "Giáo dục - Quản lý chất lượng" }, { "title": "Nền tảng dữ liệu lớn phòng chống dịch và bệnh không lây", "description": "Phân tích dữ liệu dịch tễ, môi trường, và hành vi để dự báo dịch bệnh, hỗ trợ Sở Y tế và Bộ Y tế trong ra quyết định chính sách.", "category": "Nghiên cứu - Dịch tễ học" }, { "title": "Học viện Y học chính xác & Y học cá thể hóa", "description": "Kết hợp dữ liệu gen, hình ảnh y khoa, lối sống và AI để nghiên cứu và ứng dụng điều trị cá thể hóa cho bệnh ung thư, tim mạch và bệnh mạn tính.", "category": "Nghiên cứu - Y học chính xác" } ] async def main(): """Add all UMP ideas to the database""" print("Initializing Qdrant service...") qdrant_service = get_qdrant_service() print("Initializing collection...") await qdrant_service.initialize_collection() print(f"Adding {len(UMP_IDEAS)} ideas to the database...") results = [] for i, idea in enumerate(UMP_IDEAS, 1): try: print(f"Adding idea {i}/{len(UMP_IDEAS)}: {idea['title']}") result = await qdrant_service.add_idea( title=idea['title'], description=idea['description'], category=idea['category'] ) results.append(result) print(f"✓ Added: {result['id']}") except Exception as e: print(f"✗ Error adding idea {i}: {e}") print(f"\n✓ Successfully added {len(results)}/{len(UMP_IDEAS)} ideas") return results if __name__ == "__main__": asyncio.run(main())