jiangchengchengNLP's picture
Update README.md
f69efda verified
metadata
license: apache-2.0

这是基于Auto-GPTQ框架的量化模型,模型选取为huatuoGPT2-7B,这是一个微调模型,基底模型为百川-7B。

参数说明: 原模型大小:16GB,量化后模型大小:5GB

推理准确度尚未测试,请谨慎使用

量化过程中,校准数据采用微调训练集Medical Fine-tuning Instruction (GPT-4)。

使用示例(目前仅支持gptq,transformers的集成尚在研究):

确保你安装了bitsandbytes

pip install bitsandbytes

确保你安装了auto-gptq

!git clone https://github.com/AutoGPTQ/AutoGPTQ

cd AutoGPTQ

!pip install -e .
from transformers import AutoTokenizer,TextGenerationPipeline
from auto_gptq import AutoGPTQForCausalLM, BaseQuantizeConfig
model = AutoGPTQForCausalLM.from_quantized("jiangchengchengNLP/huatuo_AutoGPTQ_7B4bits", device="cuda:0",trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained("jiangchengchengNLP/huatuo_AutoGPTQ_7B4bits",trust_remote_code=True)
pipeline = TextGenerationPipeline(model=model, tokenizer=tokenizer,max_new_tokens=1000)
def generate(text):
    return pipeline(text)[0]["generated_text"]

print(generate("请回答,艾滋病的危害"))
    

如果你想使用chat的方式运行这个模型,请启用聊天模板

tokenizer.chat_template="""
{%- for message in messages -%}
    {%- if (message['role'] == 'user') != (loop.index0 % 2 == 0) -%}
        {{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }}
    {%- endif -%}
    
    {%- if message['role'] == 'user' -%}
        {{ '<问>:' + message['content'] + '\n' }}

    {%- elif message['role'] == 'assistant' -%}
        {{ '<答>:' + message['content'] + '\n' }}
    {%- endif -%}
{%- endfor -%}
{%- if add_generation_prompt -%}
    {{- '<答>:' -}}
{% endif %}

"""
pipeline = TextGenerationPipeline(model=model, tokenizer=tokenizer,max_new_tokens=1000,)
def generate(text):
    return pipeline([{"role": "user", "content": f"{text}"}])[0]["generated_text"]

generate("请回答,艾滋病的危害")

输出结果如下:

1、

艾滋病是感染艾滋病病毒(HIV)的一种疾病。艾滋病病毒通过血液、精液、阴道液、乳汁等体液传播,主要途径包括性传播、血液传播和母婴传播。

艾滋病是一种严重的免疫系统疾病,会损害人体的免疫系统,导致机体对各种感染和肿瘤的抵抗力下降。艾滋病病毒会攻击人体的CD4+T淋巴细胞,这些细胞在免疫系统中起着重要的作用。随着病毒复制的进行,免疫系统逐渐受损,使得感染者容易受到各种感染和肿瘤的侵袭。

艾滋病的症状因个体差异而有所不同,常见的症状包括发热、乏力、体重下降、盗汗、恶心、呕吐、腹泻等。艾滋病在早期可能没有明显症状,但随着病情的进展,症状会逐渐出现。

目前,艾滋病还没有根治方法,但通过抗逆转录病毒治疗(ART)可以有效控制病情,延缓疾病进展,提高患者的生活质量。此外,艾滋病的预防非常重要,包括使用安全套、避免共用注射器、定期进行HIV检测等。

如果您或身边的人怀疑感染了艾滋病病毒,建议尽快到医疗机构进行HIV检测,以便早期发现和治疗。

2、

[{'role': 'user', 'content': '请回答,艾滋病的危害'},
 {'role': 'assistant',
'content': '艾滋病(AIDS)是由人类免疫缺陷病毒(HIV)引起的一种疾病。
HIV病毒主要攻击人体的免疫系统,特别是CD4 T淋巴细胞,这些细胞是免疫系统的重要组成部分,负责抵抗病毒和其他病原体。
当这些细胞被破坏,人体的免疫能力就会下降,使得患者容易受到各种感染和疾病的侵袭。\n\n
艾滋病的危害主要包括以下几个方面:\n\n
1. **严重的免疫系统损害**:HIV病毒会破坏人体的免疫系统,使得患者容易受到各种感染和疾病的侵袭。
这些可能包括肺炎、结核病、皮肤感染、口腔感染、消化道感染等。\n\n
2. **恶性肿瘤的风险增加**:HIV感染患者的免疫系统受损,因此他们更容易患上某些类型的癌症,如卡波西肉瘤和非霍奇金淋巴瘤。\n\n
3. **严重的并发症**:HIV感染可能导致一系列严重的并发症,包括心脏病、神经系统疾病、肝病、肾病等。\n\n
4. **影响生活质量**:HIV感染可能导致一系列症状,如发热、疲劳、体重减轻、夜间出汗等,这些症状会严重影响患者的生活质量。\n\n
5. **传染性**:HIV是一种高度传染性的病毒,通过血液、性行为、母婴传播等途径传播。\n\n
6. **经济和社会影响**:HIV/AIDS患者需要长期服药,这对患者和家庭都会带来经济压力。此外,社会对HIV/AIDS患者的歧视和偏见也会对他们的生活产生负面影响。\n\n
因此,艾滋病的危害是非常严重的,需要引起我们的高度重视。预防HIV感染的最佳方法是采取安全的性行为,避免使用他人的注射器,以及定期进行HIV检测。'}]

补充说明: TextGenerationPipeline的可选参数与generate类似,研究人员可自行调节参数,以便模型更好输出。

更多量化细节:

量化环境:双卡T4

校正规模:512 训练对

量化配置:

ntize_config = BaseQuantizeConfig(
    bits=4, # 4 or 8
    group_size=128,
    damp_percent=0.01,
    desc_act=False,  # set to False can significantly speed up inference but the perplexity may slightly bad
    static_groups=False,
    sym=True,
    true_sequential=True,
    model_name_or_path=None,
    model_file_base_name="model"
)