-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_ollama_api.py
47 lines (45 loc) · 6.24 KB
/
test_ollama_api.py
1
2
3
4
5
6
7
8
9
10
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
from langchain.chat_models import ChatOpenAI
from langchain.prompts.chat import (
ChatPromptTemplate,
SystemMessagePromptTemplate,
AIMessagePromptTemplate,
HumanMessagePromptTemplate,
)
from langchain.schema import (
AIMessage,
HumanMessage,
SystemMessage
)
import os
os.environ['OPENAI_API_BASE'] = 'http://localhost:11434/v1'
os.environ['OPENAI_API_KEY'] = 'MEDAI'
chat = ChatOpenAI(temperature=0,model_name='qwen2')
p = """你是一个肝病疑难杂症方面的医学专家,擅长通过自我反省,详细分析病例内容来诊断疾病。请基于你的专业知识,通过"思考"完成答题任务,然后给出答案。"思考"可以对当前情况进行推理,基于专业知识,结合“相关文本”来回答问题。最后使用"完成[<答案>]"的格式回答。
相关文本:入院情况:患者游文胜,男,50岁,主因“乙肝表面抗原阳性20余年,确诊肝细胞癌3月余,欲行介入治疗。”于2020-10-29入院。 主诉:乙肝表面抗原阳性20余年,确诊肝细胞癌3月余,欲行介入治疗。 现病史:患者20余年前体检发现乙肝表面抗原阳性,无乏力、发热、皮肤、巩膜黄染及肝区不适,未诊疗。2019年3月因出现便血就诊于中日友好医院,查乙肝表面抗原阳性,行胃镜检查。提示胃溃疡(A2)、反流性食管炎,给予止血、抑酸等对症治疗。2020年5月就诊于地坛医院,查乙肝病毒载量阳性、肝功异常,遂进行抗病毒及保肝治疗。2020年7月以来患者自觉反复右上腹及左上腹疼痛,自觉上楼梯、快步行走后喘息明显,胸闷,无心悸,胸痛腹胀,遂就诊于北京市佑安医院行腹部CT检查提示原发性肝癌可能性大,肝右静脉及下腔静脉癌栓,门脉右支受侵;胆囊炎,胆囊及胆囊结石;副脾;左肾上腺髓脂瘤可能。在2020-08-05于佑安医院行肝内肿瘤穿刺活检,病理结果为肝细胞癌(中分化),未行治疗,出院后规律服用索拉非尼(0.4g,po,qd),后出现体重下降、腹泻。2020-09-30于佑安医院门诊检验结果提示总胆红素(TBIL):31.6umol/l,白蛋白(ALB):39.3g/l,AFP>121000,异常凝血酶原>75000,患者现为求进一步诊疗就诊于我科。患者自发病以来,近一个月神清、精神尚可,小便可,水样便每日5-8次,体重下降数公斤。 既往史: 史:10余年前行肛瘘手术。高血压史,舒张压高为主(140/100mmhg),口服阿利沙坦治疗(240mg,qd),否认糖尿病、脑血管病、精神疾病史。否认结核史、疟疾史,过敏史:无,输血史:无,预防接种史:无,传染病史:无。其他系统回顾无特殊。 个人史:出生并久居于本地,否认疫水、疫区接触史,否认其他放射性物质及毒物接触史。免疫接种史不详。有吸烟史,日均吸烟40支,饮酒数十年,平均10两/天。否认去过武汉、否认接触过从武汉来的人。 家族史:nan 腹部核磁共振检查-腹部核磁检查所见:肝脏轮廓不规整,肝裂稍增宽。肝内见多个混杂信号影,最大位于右肝大小约18cm×13cm,边界尚清,与同相位相比,反相位上部分信号减低,DWI呈不均匀高信号,增强扫描动脉期不均匀明显强化,门脉期及延迟期强化减退,呈不均匀稍低信号。 肝内外胆管无扩张,胆囊显示欠佳。 胰腺形态如常,实质信号未见异常,胰管无扩张。 脾大,实质信号未见异常。 双肾形态如常,肾实质内未见异常信号。 左侧肾上腺见一结节,约2.4cm×1.6cm,反相位较同相位可见信号减低,增强扫描环形强化。 肝门部见多发淋巴结,较大者短径约1.1cm。
问题:请基于你的医学专业知识,诊断该病人的病因,这是含有以下7个选项的不定项选择题:脂肪肝,药物性肝损伤,原发性肝癌,酒精性肝病,自身免疫性肝炎,肝囊肿,肝血管瘤。如果病人是多种疾病,用'+'号连接。"""
messages = [
# SystemMessage(content="You are a helpful assistant that translates English to French."),
# HumanMessage(content="Translate this sentence from English to French. I love programming.")
# SystemMessage(content="请基于你的医学专业知识,诊断该病人的病因,这是含有以下7个选项的不定项选择题:脂肪肝,药物性肝损伤,原发性肝癌,酒精性肝病,自身免疫性肝炎,肝囊肿,肝血管瘤。如果病人是多种疾病,用'+'号连接。"),
HumanMessage(content=p)
]
print(
chat(messages)
)
"""
content='根据提供的病例信息和相关文本内容,可以诊断该患者的病因主要为:\n\n1. **原发性肝癌**:患者有乙肝表面抗原阳性20余年,并且在近期被确诊为肝细胞癌。\n\n2. **肝内肿瘤穿刺活检
病理结果**:提示为肝细胞癌(中分化)。\n\n3. **腹部核磁共振检查**:显示肝脏轮廓不规整,肝内见多个混杂信号影,最大位于右肝的大小约18cm×13cm,边界尚清,与同相位相比,反相位上部分
信号减低,DWI呈不均匀高信号,增强扫描动脉期不均匀明显强化,门脉期及延迟期强化减退,呈不均匀稍低信号。这些结果支持原发性肝癌的诊断。\n\n4. **肝内肿瘤**:通过腹部核磁共振检查发现
肝内存在多个混杂信号影,最大位于右肝区域,这与肝细胞癌的表现相符。\n\n5. **肝门部多发淋巴结**:虽然没有直接证据表明这些淋巴结是恶性转移,但它们的存在可能提示潜在的癌症扩散或转移
。\n\n基于以上信息和医学专业知识,可以诊断该患者的病因主要为**原发性肝癌**。其他选项如脂肪肝、药物性肝损伤、酒精性肝病、自身免疫性肝炎、肝囊肿、肝血管瘤等,在提供的病例信息中没
有直接证据表明患者存在这些疾病。\n\n完成[原发性肝癌]' additional_kwargs={} example=False
"""
from ollama import Client
MODEL = 'qwen2'
client = Client(host='http://localhost:11434')
response = client.chat(model=MODEL , messages=[
{
'role': 'assistant',# user,assistant,system
'content': 'prompt',
},]
)