根据疾病名生成病例prompt

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患
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值