Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -8,59 +8,70 @@ GEMINI_API_KEY = os.getenv("GEMINI_API_KEY")
|
|
| 8 |
API_URL = f"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key={GEMINI_API_KEY}"
|
| 9 |
|
| 10 |
SYSTEM_PROMPT = """
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
-
|
| 53 |
-
-
|
| 54 |
-
-
|
| 55 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
"""
|
| 57 |
|
| 58 |
INTRO_MD = """
|
| 59 |
-
# 成分安全性與交互作用評估
|
| 60 |
|
| 61 |
輸入主成分、其餘成分、產品類型與預期用途,系統會產生一份簡易的安全性與交互作用報告。
|
| 62 |
|
| 63 |
-
>
|
| 64 |
"""
|
| 65 |
|
| 66 |
def build_prompt(main_ingredient: str,
|
|
|
|
| 8 |
API_URL = f"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key={GEMINI_API_KEY}"
|
| 9 |
|
| 10 |
SYSTEM_PROMPT = """
|
| 11 |
+
【成分人體效應模擬要求】
|
| 12 |
+
請依據下列科學生理機制,模擬「每一個成分」進入人體後在各系統的可能作用。模型必須基於以下框架逐步推演,而非捏造研究結果:
|
| 13 |
+
|
| 14 |
+
1. 吸收(Absorption)
|
| 15 |
+
- 以成分的化學性質(極性、溶解性、粒徑、離子化狀態)推估腸胃道吸收率與速率
|
| 16 |
+
- 若為礦物、金屬或無機物質,要明確評估其溶解、解離與吸收途徑
|
| 17 |
+
- 若資料不足,請標示為「資料有限,以下為推測性機轉」
|
| 18 |
+
|
| 19 |
+
2. 分布(Distribution)
|
| 20 |
+
- 模擬成分在血液、淋巴系統、肝臟、腎臟、肌肉、脂肪或細胞外液的分布情形
|
| 21 |
+
- 依分子大小/帶電情形推估是否能進入細胞、穿越血腦障壁、或累積於肝腎
|
| 22 |
+
- 若成分能調整腸道菌相,其效應以「微生物代謝物與宿主免疫反應」方式表達
|
| 23 |
+
|
| 24 |
+
3. 代謝(Metabolism)
|
| 25 |
+
- 成分是否需要肝臟 Phase I/Phase II 代謝?
|
| 26 |
+
- 是否可能抑制/誘導 CYP450(如 CYP3A4、2C19、1A2 等)
|
| 27 |
+
- 是否會影響氧化還原反應、自由基清除、炎症訊號?
|
| 28 |
+
|
| 29 |
+
4. 排泄(Excretion)
|
| 30 |
+
- 評估腎臟、膽汁、糞便途徑
|
| 31 |
+
- 無機成分若不被代謝,需評估體內累積或沉積的可能性。
|
| 32 |
+
|
| 33 |
+
5. 細胞與分子層級作用(Mechanistic Simulation)
|
| 34 |
+
請基於:
|
| 35 |
+
- 酸鹼變化
|
| 36 |
+
- 離子交換
|
| 37 |
+
- 膜電位影響
|
| 38 |
+
- 免疫調節(先天/後天免疫)
|
| 39 |
+
- 氧化還原反應(ROS / RNS)
|
| 40 |
+
- 受體參與或酵素抑制/活化(若已知)
|
| 41 |
+
- 微生物代謝副產物與宿主交互作用
|
| 42 |
+
|
| 43 |
+
並模擬可能的:
|
| 44 |
+
- 生理效應(如血糖、血壓、腸胃道 Motility)
|
| 45 |
+
- 細胞層效應(如 Ca2+ 流動、ROS 下降或上升)
|
| 46 |
+
- 免疫系統效應(如促炎/抗炎傾向)
|
| 47 |
+
- 內分泌影響
|
| 48 |
+
- 神經系統反應(如交感/副交感調節)
|
| 49 |
+
|
| 50 |
+
6. 成分之間的相互作用(Interaction Simulation)
|
| 51 |
+
請評估:
|
| 52 |
+
- 化學層面(酸鹼反應、螯合、沉澱、氧化還原)
|
| 53 |
+
- 生物層面(共同影響肝臟酵素、腎臟負擔、中樞神經、腸道菌相)
|
| 54 |
+
- 功效層面(加乘、拮抗、不相容)
|
| 55 |
+
|
| 56 |
+
若屬推測性,請使用「推測性機轉」標記。
|
| 57 |
+
|
| 58 |
+
7. 與用途的匹配度(Mechanism-Utility Match)
|
| 59 |
+
- 判斷此配方���的機轉是否真正有助於使用者輸入的用途
|
| 60 |
+
- 若用途與機轉不符,需清楚指出
|
| 61 |
+
- 對整體配方給出「低/中/高」風險與科學合理性評估
|
| 62 |
+
|
| 63 |
+
【重要限制】
|
| 64 |
+
- 不得捏造臨床試驗數據
|
| 65 |
+
- 不得提供劑量建議
|
| 66 |
+
- 所有未知處以「資料有限」標記
|
| 67 |
"""
|
| 68 |
|
| 69 |
INTRO_MD = """
|
| 70 |
+
# 成分安全性與交互作用評估beta
|
| 71 |
|
| 72 |
輸入主成分、其餘成分、產品類型與預期用途,系統會產生一份簡易的安全性與交互作用報告。
|
| 73 |
|
| 74 |
+
> 本工具僅提供一般性科學與安全性資訊整理,**不構成醫療診斷或處方建議**。
|
| 75 |
"""
|
| 76 |
|
| 77 |
def build_prompt(main_ingredient: str,
|