Este modelo de código abierto CHATGLM-6B de código abierto que ha sido ajustado/instrucción ajustado (instrucciones de instrucciones). Construimos un conjunto de datos de instrucciones médicas chinas a través del gráfico de conocimiento médico y la API GPT3.5, y las instrucciones ajustadas a ChatGLM-6B sobre esta base, mejorando el efecto de preguntas y respuestas de ChatGLM en el campo de la medicina.
Basado en los mismos datos, también capacitamos la versión médica del modelo LLAMA: Huatuo
ACTUALIZACIÓN: Dado que el chatglm se actualiza muy rápidamente, se recomienda usar la solución oficial de tuning de chatglm: https://github.com/thudm/chatglm-6b/blob/main/ptuning/readme.md
Primero instale el paquete de dependencia, Python Environment recomienda 3.9+
pip install -r requirements.txt
Los parámetros del modelo capacitado se pueden descargar de la siguiente manera:
| Nombre del modelo | tamaño | Dirección de descarga del modelo |
|---|---|---|
| Chatglm-6b-med | Aproximadamente 13.4GB | [Baidu NetDisk] [Googledrive] |
Después de instalar el entorno, se pueden realizar pruebas interactivas:
python infer.py
Hemos adoptado una base de conocimiento médico chino abierta y autocuidas, principalmente referiéndose a CMEKG. La base de conocimiento médico se basa en enfermedades, medicamentos, indicadores de examen, etc., y los campos incluyen complicaciones, factores de alto riesgo, exámenes histológicos, síntomas clínicos, tratamiento farmacológico, tratamiento auxiliar, etc. El ejemplo de la base de conocimiento es el siguiente:
{"中心词": "偏头痛", "相关疾病": ["妊娠合并偏头痛", "恶寒发热"], "相关症状": ["皮肤变硬", "头部及眼后部疼痛并能听到连续不断的隆隆声", "晨起头痛加重"], "所属科室": ["中西医结合科", "内科"], "发病部位": ["头部"]}
Utilizamos la interfaz GPT3.5 para crear datos de preguntas y respuestas en torno a la base de conocimiento médico y configurar una variedad de formularios rápidos para hacer un uso completo del conocimiento.
Los ejemplos de datos establecidos de capacitación para instrucciones de ajuste fino son los siguientes:
"问题:一位年轻男性长期使用可卡因,突然出现胸痛、呕吐、出汗等症状,经检查发现心电图反映心肌急性损伤,请问可能患的是什么疾病?治疗方式是什么?"
回答: 可能患的是心肌梗塞,需要进行维拉帕米、依普利酮、硝酸甘油、ß阻滞剂、吗啡等药物治疗,并进行溶栓治疗、低分子量肝素、钙通道阻滞剂等辅助治疗。此外需要及时停用可卡因等药物,以防止病情加重。"
La calidad del conjunto de datos de ajuste de instrucción aún es limitada, y la iteración se llevará a cabo en el futuro. Al mismo tiempo, la base de conocimiento médico y el código de construcción del conjunto de datos aún se están ordenando, y se lanzará después de completar la clasificación.
Consulte https://github.com/thudm/chatglm-6b y coloque el modelo descargado en el directorio model .
sh scripts/sft_medchat.sh
Ajuste el tamaño del lote y otros hiperparámetros de acuerdo con la situación real, y el valor predeterminado son los parámetros que utilizamos.
Si desea continuar con el ajuste/ajuste de instrucciones de instrucciones con su propio conjunto de datos, puede crear un formato de archivo similar al conjunto de capacitación en data . O consulte el repositorio de ajuste de instrucciones de chatglm.
Entrenamos en una tarjeta gráfica A100-SXM-80GB. Según la experiencia, se recomienda elegir 32G o más para capacitar la memoria de video.
| Entrada de prueba | Salida de chatglm-6b | Salida CHATGLM-6B-MED |
|---|---|---|
| ¿Aumentarán los niveles de glutamiltranspeptidasa debido al consumo de drogas o al consumo de alcohol? | El uso de drogas y el consumo de alcohol pueden tener efectos negativos en la salud de su cuerpo, incluidos los efectos en el hígado y el corazón. El consumo de alcohol puede causar daño hepático y enfermedad cardíaca porque el alcohol puede destruir la función del hígado y el corazón. El consumo a largo plazo también puede conducir a problemas de salud como el hígado graso, la cirrosis, la enfermedad cardíaca, etc. El consumo de drogas puede causar daños graves al hígado y al corazón, lo que resulta en fibrosis hepática, cirrosis, enfermedades cardiovasculares, etc. El uso de drogas también puede provocar trastornos mentales, retirada social, violencia y delincuencia. Por lo tanto, ya sea consumo de alcohol o drogas, tendrá un impacto negativo en la salud y el uso excesivo debe evitarse. | Existen muchas razones para la glutamiltranspeptidasa elevada, incluida la infección, la úlcera péptica, la infección, los efectos secundarios de las drogas, etc. Los comportamientos no saludables como el uso de drogas o el consumo de alcohol pueden conducir a la glutamiltranspeptidasa elevada. |
| Xiao Li desarrolló recientemente síntomas de taquicardia, acompañados de dolor leve en el pecho. El examen físico descubrió que el intervalo de PR se prolongó, acompañado por las anormalidades de la onda T y el segmento ST | Lo siento mucho, no entiendo tu pregunta. Proporcione más contexto o contexto para que pueda responder mejor a su pregunta. ¡Gracias! | Xiao Li tiene síntomas de taquicardia y está acompañado de dolor en el pecho. Es necesario considerar si hay enfermedades cardiovasculares como la miocardiopatía y la aterosclerosis coronaria. Se recomienda someterse a electrocardiograma, análisis de sangre, examen de ultrasonido cardíaco, etc. |
| ...... | ...... | ...... |
P: ValorError de error: 130001 no está en la lista / ValueError: 150001 no está en la lista
R: Debido a la rápida actualización de dependencias relacionadas, diferentes versiones conducirán a algunos errores
(1) Si el error es 150001 no está en la lista, actualice el repositorio a la última versión
(2) Si el error es 130001 no está en la lista, recurra el repositorio a la versión con Commit CB9D827, el enlace es https://github.com/scir-hi/med-chatglm/tree/cb9d82738021ec6f82b307d6031e8595a49dcb0000
P: El modelo tiene un efecto limitado
R: Dado que la propia estrategia de capacitación de Chatglm no es de código abierto, el método de capacitación de ajuste de instrucción proporcionado en este repositorio puede tener un impacto negativo en las capacidades básicas de ChatGLM. Debido a los derechos de autor y otras consideraciones, nuestras iteraciones modelo en el futuro se centrarán en los modelos de código abierto.
Este proyecto fue completado por Wang Haochun y Liu Chi, el Grupo de Inteligencia de la Salud del Centro para la Computación Social y la Recuperación de Información del Instituto de Tecnología Harbin. Los instructores son el profesor asociado Zhao Sendong, el profesor Qin Bing y el profesor Liu Ting.
Este proyecto se refiere a los siguientes proyectos de código abierto, y nos gustaría expresar nuestra gratitud a los proyectos relevantes y al personal de investigación y desarrollo.
Los recursos relacionados con este proyecto son solo para la investigación académica y están estrictamente prohibidas para fines comerciales. Al usar piezas que involucran código de terceros, siga estrictamente el protocolo de código abierto correspondiente. El contenido generado por el modelo se ve afectado por factores como el cálculo del modelo, la aleatoriedad y las pérdidas cuantitativas de precisión, y este proyecto no puede garantizar su precisión. La mayoría de los conjuntos de datos de este proyecto son generados por modelos y no pueden usarse como base para el diagnóstico médico real, incluso si cumplen con ciertos hechos médicos. Este proyecto no asume ninguna responsabilidad legal por la producción de contenido por parte del modelo, ni es responsable de las pérdidas que puedan surgir del uso de recursos relevantes y resultados de salida.
Si usa los datos o el código de este proyecto, declare la referencia
@misc{ChatGLM-Med,
author={Haochun Wang, Chi Liu, Sendong Zhao, Bing Qin, Ting Liu},
title = {ChatGLM-Med: 基于中文医学知识的ChatGLM模型微调},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {url{https://github.com/SCIR-HI/Med-ChatGLM}},
}