TPunnawitT/waijing-bioage-api
0
วัยจริง | WAIJING — Backend API
FastAPI backend สำหรับคำนวณอายุชีวภาพ:
POST /api/v1/predict/phenoage— คำนวณ PhenoAge จากผลเลือด 9 ค่า (Liu, Levine et al., PLoS Medicine 2018, ฉบับแก้ไข 2019)POST /api/v1/predict/cxr-age— คำนวณอายุจากภาพเอกซเรย์ทรวงอกด้วยโมเดล ResNet-34 (CXR-Age, Raghu et al. 2021)
รันบนเครื่องตัวเอง
pip install -r requirements.txt
uvicorn main:app --reloadตัวแปรแวดล้อม (env vars)
หมายเหตุความปลอดภัย:
- CORS (
ALLOWED_ORIGINS) ป้องกันได้แค่การเรียกจาก JavaScript ในเบราว์เซอร์คนละโดเมน ไม่ได้ป้องกันคนที่เรียก API ตรงๆ ด้วย curl/Postman/เซิร์ฟเวอร์อื่น - มี rate limit ต่อ IP ในตัว (phenoage 20 ครั้ง/นาที, cxr-age 10 ครั้ง/นาที) แต่เก็บ state ใน memory ของ process เดียว — ถ้า deploy หลาย worker/instance ต้องเปลี่ยนไปใช้ตัวกลางร่วม (เช่น Redis)
- มี audit log (
audit.log) บันทึก เวลา/endpoint/status/IP ที่แฮชแล้ว ไม่บันทึกค่าผลเลือดหรือภาพเอกซเรย์ — ถ้ารันบน Hugging Face Spaces แบบไม่เปิด persistent storage ไฟล์นี้จะหายเมื่อ container restart
ไม่ใช่เครื่องมือวินิจฉัยทางการแพทย์ — ดูรายละเอียดข้อจำกัดใน disclaimer ของหน้าเว็บ
