|
@@ -144,35 +144,7 @@ async def get_symptom_diseases(
|
|
min_length=1,
|
|
min_length=1,
|
|
max_length=10)
|
|
max_length=10)
|
|
):
|
|
):
|
|
- """
|
|
|
|
- 根据症状列表获取相关疾病
|
|
|
|
-
|
|
|
|
- Args:
|
|
|
|
- symptoms: 症状名称列表,每个症状应为标准医学术语
|
|
|
|
- 示例: ["头痛", "发热"]
|
|
|
|
-
|
|
|
|
- Returns:
|
|
|
|
- StandardResponse: 包含疾病列表的标准响应
|
|
|
|
- - data字段包含症状数组和疾病数组,每个疾病可能有权重
|
|
|
|
-
|
|
|
|
- Raises:
|
|
|
|
- HTTPException: 当发生以下情况时抛出异常
|
|
|
|
- - 症状名称无效(400)
|
|
|
|
- - 内部服务错误(500)
|
|
|
|
-
|
|
|
|
- Example:
|
|
|
|
- >>> POST /symptom_diseases?symptomNames=头痛,发热
|
|
|
|
- {
|
|
|
|
- "success": true,
|
|
|
|
- "data": {
|
|
|
|
- "symptoms": ["头痛", "发热"],
|
|
|
|
- "diseases": [
|
|
|
|
- {"name": "流感", "weight": 0.8},
|
|
|
|
- {"name": "肺炎", "weight": 0.6}
|
|
|
|
- ]
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- """
|
|
|
|
|
|
+
|
|
try:
|
|
try:
|
|
#打印request
|
|
#打印request
|
|
logger.info(f"symptoms: {symptoms}")
|
|
logger.info(f"symptoms: {symptoms}")
|
|
@@ -247,44 +219,9 @@ async def getDiseaseSymptoms(
|
|
示例值:"胃癌""",
|
|
示例值:"胃癌""",
|
|
examples=["胃癌"],
|
|
examples=["胃癌"],
|
|
min_length=1,
|
|
min_length=1,
|
|
- max_length=100)
|
|
|
|
|
|
+ max_length=50)
|
|
):
|
|
):
|
|
- """
|
|
|
|
- 根据疾病名称获取相关症状
|
|
|
|
-
|
|
|
|
- Args:
|
|
|
|
- disease_name: 疾病名称(仅支持标准医学术语名称,不支持编码)
|
|
|
|
-
|
|
|
|
- Returns:
|
|
|
|
- StandardResponse: 包含症状列表的标准响应
|
|
|
|
- - data字段包含症状数组,每个症状可能有严重程度权重
|
|
|
|
-
|
|
|
|
- Raises:
|
|
|
|
- HTTPException: 当发生以下情况时抛出异常
|
|
|
|
- - 疾病名称无效(400)
|
|
|
|
- - 内部服务错误(500)
|
|
|
|
-
|
|
|
|
- Example:
|
|
|
|
- >>> POST /getDiseaseSymptoms?diseaseName=胃癌
|
|
|
|
- {
|
|
|
|
- "success": true,
|
|
|
|
- "data": {
|
|
|
|
- "disease": "胃癌",
|
|
|
|
- "symptoms": [
|
|
|
|
- "胃丢失蛋白",
|
|
|
|
- "胃肠粘膜的通透性增高",
|
|
|
|
- "手掌呈黑色",
|
|
|
|
- "上腹痛",
|
|
|
|
- "吞咽困难",
|
|
|
|
- "疲劳",
|
|
|
|
- "进食后饱胀",
|
|
|
|
- "贫血",
|
|
|
|
- "黑便",
|
|
|
|
- "恶心"
|
|
|
|
- ]
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- """
|
|
|
|
|
|
+
|
|
try:
|
|
try:
|
|
# 验证疾病名称有效性
|
|
# 验证疾病名称有效性
|
|
if not disease_name or len(disease_name.strip()) == 0:
|
|
if not disease_name or len(disease_name.strip()) == 0:
|