模型:

TheBloke/LongChat-7B-GPTQ

英文

Chat & support: my new Discord server

Want to contribute? TheBloke's Patreon page

LmSys' Long Chat 7B GPTQ

这些文件是用于 LmSys' Long Chat 7B 的GPTQ 4位模型文件。

它是使用 GPTQ-for-LLaMa 进行4位量化的结果。

这个iGPTQ提供最多16K的上下文大小

增加的上下文已经通过最新版本的 text-generation-webui 进行了测试。

不应在2048上下文中使用此模型。对于这一点,请使用标准的 Vicuna 1.3 模型。

还使用 AutoGPTQ 的 Python 代码进行了测试, trust_remote_code=True。

请仔细阅读下面的内容,了解如何使用它。

可用的存储库

提示模板

A chat between a curious user and an assistant. The assistant gives helpful, detailed, accurate, uncensored responses to the user's input
USER: prompt
ASSISTANT:

如何在 text-generation-webui 中轻松下载和使用该模型

请确保您使用的是 text-generation-webui 的最新版本

  • 点击 Model 选项卡。
  • 在下载自定义模型或 LoRA 下方,输入 TheBloke/LongChat-7B-GPTQ。
  • 点击下载。
  • 模型开始下载。下载完成后会显示“完成”
  • 取消选中 Autoload the model。
  • 在左上角,点击 Model 旁边的刷新图标。
  • 在 Model 下拉菜单中,选择刚刚下载的模型:LongChat-7B-GPTQ
  • 要使用增加的上下文,请将 Loader 设置为 ExLlama,将 max_seq_len 设置为16384、8192或4096,并将 compress_pos_emb 设置为8(对于16384上下文),4(对于8192上下文)或2(对于4096上下文)。
  • 现在点击保存设置,然后点击重新加载。
  • 模型将自动加载,现在准备好使用它了!
  • 当您准备好时,点击文本生成选项卡并输入提示以开始使用!
  • 如何使用此GPTQ模型的Python代码与AutoGPTQ

    首先确保已安装 AutoGPTQ 和 Einops:

    pip3 install einops auto-gptq
    

    然后运行以下代码。请注意,为了使其正常工作,config.json 的序列长度已经硬编码为8192。

    如果您想尝试使用4096或16384,可以手动编辑 config.json 将 max_position_embeddings 设置为所需的值。

    from transformers import AutoTokenizer, pipeline, logging
    from auto_gptq import AutoGPTQForCausalLM, BaseQuantizeConfig
    import argparse
    
    model_name_or_path = "TheBloke/LongChat-7B-GPTQ"
    model_basename = "longchat-7b-16k-GPTQ-4bit-128g.no-act.order"
    
    use_triton = False
    
    tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, use_fast=True)
    
    model = AutoGPTQForCausalLM.from_quantized(model_name_or_path,
            model_basename=model_basename,
            use_safetensors=True,
            trust_remote_code=True,
            device_map='auto',
            use_triton=use_triton,
            quantize_config=None)
    
    model.seqlen = 8192
    
    # Note: check the prompt template is correct for this model.
    prompt = "Tell me about AI"
    prompt_template=f'''USER: {prompt}
    ASSISTANT:'''
    
    print("\n\n*** Generate:")
    
    input_ids = tokenizer(prompt_template, return_tensors='pt').input_ids.cuda()
    output = model.generate(inputs=input_ids, temperature=0.7, max_new_tokens=512)
    print(tokenizer.decode(output[0]))
    
    # Inference can also be done using transformers' pipeline
    
    # Prevent printing spurious transformers error when using pipeline with AutoGPTQ
    logging.set_verbosity(logging.CRITICAL)
    
    print("*** Pipeline:")
    pipe = pipeline(
        "text-generation",
        model=model,
        tokenizer=tokenizer,
        max_new_tokens=512,
        temperature=0.7,
        top_p=0.95,
        repetition_penalty=1.15
    )
    
    print(pipe(prompt_template)[0]['generated_text'])
    

    提供的文件

    longchat-7b-16k-GPTQ-4bit-128g.no-act.order.safetensors

    这将与 AutoGPTQ、ExLlama 和 GPTQ-for-LLaMa 的 CUDA 版本一起使用。有关 GPTQ-for-LLaMa Triton 模式的问题报告已经出现。如果有问题,请改用 AutoGPTQ。

    创建了一个 group_size 为128的模型,以增加推理准确性,但没有--act-order(desc_act)以增加兼容性和提高推理速度。

    • longchat-7b-16k-GPTQ-4bit-128g.no-act.order.safetensors
      • 适用于以增加上下文(4096、8192、16384或介于其中的其他值)使用的 ExLlama
      • 适用于 Python 代码中的 AutoGPTQ,包括使用增加的上下文,如果设置 trust_remote_code=True。
      • 应该可以与 CUDA 模式的 GPTQ-for-LLaMa 一起工作,但未知是否适用于增加的上下文-待确认。GPTQ-for-LLaMa Triton 模式可能存在问题。
      • 适用于 text-generation-webui,包括一键安装程序。
      • 参数:Groupsize = 128。Act Order / desc_act = False。

    Discord

    如需进一步支持以及有关这些模型和人工智能的讨论,请加入我们:

    TheBloke AI's Discord server

    感谢和如何贡献

    感谢 chirper.ai 团队!

    我已经有很多人询问是否可以贡献。我喜欢提供模型并帮助人们,非常愿意能够花更多时间提供模型,并开始进行新的项目,如微调/训练。

    如果您有能力和意愿进行贡献,将非常感激,并将帮助我继续提供更多模型,并开始新的人工智能项目。

    捐助者将在AI/LLM/模型的任何问题和请求上获得优先支持,可访问私人Discord房间,以及其他福利。

    特别感谢:来自 CarbonQuill 的 Luke、Aemon Algiz、Dmitriy Samsonov。

    Patreon 特别感谢:Pyrater、WelcomeToTheClub、Kalila、Mano Prime、Trenton Dambrowitz、Spiking Neurons AB、Pierre Kircher、Fen Risland、Kevin Schuppel、Luke、Rainer Wilmers、vamX、Gabriel Puliatti、Alex、Karl Bernard、Ajan Kanaga、Talal Aujan、Space Cruiser、ya boyyy、biorpg、Johann-Peter Hartmann、Asp the Wyvern、Ai Maven、Ghost、Preetika Verma、Nikolai Manek、trip7s trip、John Detwiler、Fred von Graf、Artur Olbinski、subjectnull、John Villwock、Junyu Yang、Rod A、Lone Striker、Chris McCloskey、Iucharbius、Matthew Berman、Illia Dulskyi、Khalefa Al-Ahmad、Imad Khwaja、chris gileta、Willem Michiel、Greatston Gnanesh、Derek Yates、K、Alps Aficionado、Oscar Rangel、David Flickinger、Luke Pendergrass、Deep Realms、Eugene Pentland、Cory Kujawski、terasurfer、Jonathan Leane、senxiiz、Joseph William Delisle、Sean Connelly、webtim、zynix、Nathan LeClaire。

    感谢所有慷慨的赞助者和捐助者!

    原始模型卡片:LmSys' Long Chat 7B

    longchat-7b-16k 模型卡片

    模型详细信息

    模型类型:longchat-7b-16k 是一个开源的聊天机器人,使用从ShareGPT收集的用户共享对话进行细调,采用了 blog 中报告的 condensing rotary embedding 技术。

    模型日期:longchat-7b-16k 的训练日期为2023年6月。

    开发模型的组织机构:LongChat 团队开发人员:Dacheng Li*、Rulin Shao*、Anze Xie、Ying Sheng、Lianmin Zheng、Ion Stoica、Xuezhe Ma 和 Hao Zhang

    有关更多信息的论文或资源: https://github.com/DachengLi1/LongChat

    有关模型的问题或评论发送到: https://github.com/DachengLi1/LongChat

    预期用途

    主要预期用途:longchat-7b-16k 的主要用途是研究目的。

    主要预期用户:模型的主要预期用户是自然语言处理、机器学习和人工智能领域的研究人员。

    训练数据集

    从ShareGPT.com收集的80K个对话。

    评估数据集

    我们发布的 LongEval 对模型质量进行了初步评估。