prompt
请根据疾病名:" + disease_name + " 为我生成一份病历。下面是病历内容的要求:病例应严格包含如下几项: 性别,年龄,疾病名(必须是" + disease_name + "),主诉(不超过20字),现病史(包括症状起因、治疗经过等),既往史(包括慢性疾病史、传染病史等),个人史(包括生活习惯、工作环境等),家族史,体格检查(包括体温、脉搏、呼吸、血压等),辅助检查(疾病相关的检测项目,但是检查项目必须和疾病相关),初步诊断(需要明确结果,内容需要包含疾病名)等11项, 要求如下:不要出现假设,字数要大于50字。 一定要包含性别,年龄,疾病名,主诉,现病史,既往史,个人史,家族史,体格检查,辅助检查,初步诊断11个部分且字段名严格保持一致。参考格式如下:【性别】:男\n【年龄】:35岁\n【疾病名】:" + disease_name + "\n【主诉】\n不超过20字的症状疾病描述,症状需要有伴随时间,比如右脚大拇指疼痛,活动受限1个月。\n【现病史】\n现患疾病有哪些\n【既往史】\n过去生过哪些病。\n【个人史】\n吸烟饮酒工作生活睡眠等状况\n【家族史】\n家族中无类似疾病患者\n【体格检查】\n和" + disease_name + "病相关的身体外形检查\n【辅助检查】\n和" + disease_name + "病相关的体检指标\n【初步诊断】\n急性支气管炎\n"
prompt
请扮演一个心理咨询领域的文本改写员,将给定的【单轮长文本中文心理咨询对话】 改写为多轮的共情的对话,要求如下:1、多轮对话以“用户:”开始,“心理咨询师:”结束:2、“心理咨询师”的回复需要结合用户的描述内容并提供共情,如:顿听、安慰、理解、信任、认可、真诚、情感支持等:3、用户和心理咨询师的对话轮数应根据对话内容决定,在8-20轮之间:4、在一轮对话当中,用户与心理咨询师的对话长度应结合对话历史,并且不宜过长。\n\n【单轮长文本中文心理咨询对话】:用户:我正在用我的感觉和我自己经历一些事情。我几乎睡不着,什么也不做,只想着我是多么的一无是处,我不应该在这里。我从未尝试或考虑过自杀。我一直想解决我的问题,但我从来没有抽出时间。我该如何改变对每个人来说都毫无价值的感觉? 心理咨询师:如果每个人都认为你毫无价值,那么也许你需要找新的人一起玩。说真的,一个人生活的社会环境对自尊有很大的影响。否则,你可以一次又一次地试图理解为什么你不是一无是处,然后回到同一个人群中,再次被击倒。你可以在社交媒体上找到很多鼓舞人心的信息。也许读一些书,其中说没有人是没有价值的,每个人的生活都有一个美好的目标。此外,由于我们的文化中充斥着这样一种信念,即如果有人自我感觉不好,这在某种程度上是可怕的。不良情绪是生活的一部分。它们是我们摆脱对我们弊大于利的处境和关系的动力。糟糕的感觉确实很糟糕。你的无价值感可能是好的,因为它能激励你发现自己比今天的感觉好多了。\n\n请逐步分析以上单轮对话中用户的需求以及心理咨询师的共情技巧,并且改写为多轮的共情的对话,你的改写结果为:
代码:
import os
import pandas as pd
import warnings
warnings.filterwarnings("ignore")
from tqdm import tqdm
from peft import AutoPeftModelForCausalLM
from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig
qwen_path = "/mnt/sdd/Qwen-7B-Chat"
qwen_tokenizer = AutoTokenizer.from_pretrained(qwen_path, trust_remote_code=True)
qwen_model = AutoModelForCausalLM.from_pretrained(qwen_path, device_map="auto", trust_remote_code=True).eval()
def read_file():
root_path = "/home/wangyp/Big_Model/symptom_3_explain/disease_name"
all_data = []
# 遍历文件夹下的文件
for filename in os.listdir(root_path):
with open(os.path.join(root_path, filename), mode="r", encoding="utf-8") as f:
print(os.path.join(root_path, filename))
hh = (f.readlines())
all_data = all_data + hh
a1 = list(set(all_data))
a2 = [a.replace("'", "").strip() for a in a1]
print(len(a2))
print(a2[:5])
return a2
def qwen(disease_name):
"""
年龄,性别,疾病名(必须和我提供的疾病名一致),主诉,现病史,既往史,个人史,家族史,体格检查,辅助检查(需要明确结果,最好有描述,最起码有结果),初步诊断(需要明确结果,最好有描述,最起码有结果)等11项,
:param disease_name:
:return:
"""
# pmt = "你现在扮演一名医生的角色,我需要你基于我给的疾病名:"+ disease_name +",生成对应的【病历】,病例应严格包含如下几项,不能出现其他幻想项目:患者年龄、性别、疾病名称(必须和我提供的疾病名一致)、主诉、患者病史、诊断方案(需要明确结果,最好有描述,最起码有结果)、查体、辅助检查、诊断依据、鉴别诊断等10个部分,要求如下:诊断要和病例非常匹配,不要出现假设,描述详细且专业、字数要大于50字、且一定要有疾病名称这个部分"
# pmt = "你现在扮演一名医生的角色,我需要你基于我给的疾病名:"+ disease_name + ",生成对应的【病历】,病例应严格包含如下几项: 性别,年龄,疾病名(必须和我提供的疾病名一致),主诉(包括症状描述和持续时间),现病史(包括症状起因、治疗经过等),既往史(包括慢性疾病史、传染病史等),个人史(包括生活习惯、工作环境等),家族史,体格检查(包括体温、脉搏、呼吸、血压等),辅助检查(疾病相关的检测项目,但是检查项目必须和疾病相关),初步诊断(需要明确结果,内容需要包含疾病名)等11项, 要求如下:不要出现假设,描述详细且专业、字数要大于50字。 一定要包含性别,年龄,疾病名,主诉,现病史,既往史,个人史,家族史,体格检查,辅助检查,初步诊断11个部分且字段名严格保持一致。参考格式如下:【性别】:男\n【年龄】:35岁\n【疾病名】:急性支气管炎\n【主诉】\n患

最低0.47元/天 解锁文章
103

被折叠的 条评论
为什么被折叠?



