英文

Chat & support: my new Discord server

Want to contribute? TheBloke's Patreon page

VicUnlocked-30B-LoRA GPTQ

这些文件是用于 VicUnlocked-30B-LoRA 的GPTQ模型文件。

提供了多个GPTQ参数排列,有关提供的选项、其参数和用于创建它们的软件的详细信息,请参阅下面的提供的文件部分。

这些模型是使用由 Latitude.sh 提供的硬件进行量化的。

可用的存储库

提示模板:羊驼

Below is an instruction that describes a task. Write a response that appropriately completes the request.

### Instruction: {prompt}

### Response:

提供的文件

提供了多个量化参数,以便您可以选择最适合您的硬件和需求的参数。

每个独立的量化在不同的分支中。请参阅下面关于如何从不同分支提取的说明。

Branch Bits Group Size Act Order (desc_act) File Size ExLlama Compatible? Made With Description
main 4 None True 16.94 GB True GPTQ-for-LLaMa Most compatible option. Good inference speed in AutoGPTQ and GPTQ-for-LLaMa. Lower inference quality than other options.
gptq-4bit-32g-actorder_True 4 32 True 19.44 GB True AutoGPTQ 4-bit, with Act Order and group size. 32g gives highest possible inference quality, with maximum VRAM usage. Poor AutoGPTQ CUDA speed.
gptq-4bit-64g-actorder_True 4 64 True 18.18 GB True AutoGPTQ 4-bit, with Act Order and group size. 64g uses less VRAM than 32g, but with slightly lower accuracy. Poor AutoGPTQ CUDA speed.
gptq-4bit-128g-actorder_True 4 128 True 17.55 GB True AutoGPTQ 4-bit, with Act Order and group size. 128g uses even less VRAM, but with slightly lower accuracy. Poor AutoGPTQ CUDA speed.
gptq-8bit--1g-actorder_True 8 None True 32.99 GB False AutoGPTQ 8-bit, with Act Order. No group size, to lower VRAM requirements and to improve AutoGPTQ speed.
gptq-8bit-128g-actorder_False 8 128 False 33.73 GB False AutoGPTQ 8-bit, with group size 128g for higher inference quality and without Act Order to improve AutoGPTQ speed.
gptq-3bit--1g-actorder_True 3 None True 12.92 GB False AutoGPTQ 3-bit, with Act Order and no group size. Lowest possible VRAM requirements. May be lower quality than 3-bit 128g.
gptq-3bit-128g-actorder_False 3 128 False 13.51 GB False AutoGPTQ 3-bit, with group size 128g but no act-order. Slightly higher VRAM requirements than 3-bit None.

如何从分支中下载

  • 在text-generation-webui中,您可以在下载名称的末尾加上 :branch ,例如 TheBloke/VicUnlocked-30B-LoRA-GPTQ:gptq-4bit-32g-actorder_True
  • 使用Git,您可以使用以下命令克隆分支:
git clone --branch gptq-4bit-32g-actorder_True https://huggingface.co/TheBloke/VicUnlocked-30B-LoRA-GPTQ`
  • 在Python Transformers代码中,分支是 revision 参数;请参阅下面的说明。

如何轻松地在 text-generation-webui 中下载并使用此模型。

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

强烈建议使用text-generation-webui的一键安装程序,除非您知道如何进行手动安装。

  • 单击 Model 标签。
  • 在 Download custom model or LoRA 下,输入 TheBloke/VicUnlocked-30B-LoRA-GPTQ。
    • 要从特定的分支下载,请输入例如 TheBloke/VicUnlocked-30B-LoRA-GPTQ:gptq-4bit-32g-actorder_True
    • 有关每个选项的分支列表,请参阅上面的提供的文件。
  • 点击 Download。
  • 模型将开始下载。下载完成后会显示“Done”
  • 在左上角,点击 Model旁边的刷新图标。
  • 在 Model 下拉菜单中,选择刚刚下载的模型:VicUnlocked-30B-LoRA-GPTQ
  • 模型将自动加载,现在已准备好使用!
  • 如果您需要任何自定义设置,请设置并点击 Save settings for this model ,然后在右上方点击 Reload the Model。
    • 请注意,您不需要再手动设置GPTQ参数。这些参数将自动从文件 quantize_config.json 中设置。
  • 准备好后,点击 Text Generation 标签并输入提示开始!
  • 如何在Python代码中使用此GPTQ模型

    首先确保您已安装 AutoGPTQ

    GITHUB_ACTIONS=true pip install auto-gptq

    然后尝试以下示例代码:

    from transformers import AutoTokenizer, pipeline, logging
    from auto_gptq import AutoGPTQForCausalLM, BaseQuantizeConfig
    
    model_name_or_path = "TheBloke/VicUnlocked-30B-LoRA-GPTQ"
    model_basename = "VicUnlocked-30B-GPTQ-4bit--1g.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=False,
            device="cuda:0",
            use_triton=use_triton,
            quantize_config=None)
    
    """
    To download from a specific branch, use the revision parameter, as in this example:
    
    model = AutoGPTQForCausalLM.from_quantized(model_name_or_path,
            revision="gptq-4bit-32g-actorder_True",
            model_basename=model_basename,
            use_safetensors=True,
            trust_remote_code=False,
            device="cuda:0",
            quantize_config=None)
    """
    
    prompt = "Tell me about AI"
    prompt_template=f'''Below is an instruction that describes a task. Write a response that appropriately completes the request.
    
    ### Instruction: {prompt}
    
    ### Response:
    '''
    
    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'])
    

    兼容性

    提供的文件可与AutoGPTQ(CUDA和Triton模式)、GPTQ-for-LLaMa(仅测试了CUDA)和Occ4m的GPTQ-for-LLaMa分支一起使用。

    ExLlama与4位的Llama模型兼容。有关每个文件的兼容性,请参见上面提供的文件表。

    Discord

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

    TheBloke AI's Discord server

    感谢以及如何贡献

    感谢 chirper.ai 团队!

    我收到很多人的询问是否可以做出贡献。我喜欢提供模型和帮助他人,并希望能够花更多时间做这些事情,以及扩展到新项目,如微调/训练。

    如果您能够并愿意做出贡献,我将非常感激,并将帮助我继续提供更多模型,并开始进行新的AI项目。

    捐款者将在所有关于AI/LLM/模型的问题和请求上获得优先支持,还可以访问私人Discord聊天室以及其他好处。

    特别感谢:CarbonQuill团队中的Luke,Aemon Algiz。

    Patreon特别感谢:Space Cruiser,Nikolai Manek,Sam,Chris McCloskey,Rishabh Srivastava,Kalila,Spiking Neurons AB,Khalefa Al-Ahmad,WelcomeToTheClub,Chadd,Lone Striker,Viktor Bowallius,Edmond Seymore,Ai Maven,Chris Smitley,Dave,Alexandros Triantafyllidis,Luke @flexchar,Elle,ya boyyy,Talal Aujan,Alex,Jonathan Leane,Deep Realms,Randy H,subjectnull,Preetika Verma,Joseph William Delisle,Michael Levine,chris gileta,K,Oscar Rangel,LangChain4j,Trenton Dambrowitz,Eugene Pentland,Johann-Peter Hartmann,Femi Adebogun,Illia Dulskyi,senxiiz,Daniel P. Andersen,Sean Connelly,Artur Olbinski,RoA,Mano Prime,Derek Yates,Raven Klaugh,David Flickinger,Willem Michiel,Pieter,Willian Hasse,vamX,Luke Pendergrass,webtim,Ghost,Rainer Wilmers,Nathan LeClaire,Will Dee,Cory Kujawski,John Detwiler,Fred von Graf,biorpg,Iucharbius,Imad Khwaja,Pierre Kircher,terasurfer,Asp the Wyvern,John Villwock,theTransient,zynix,Gabriel Tamborski,Fen Risland,Gabriel Puliatti,Matthew Berman,Pyrater,SuperWojo,Stephen Murray,Karl Bernard,Ajan Kanaga,Greatston Gnanesh,Junyu Yang。

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

    原始模型卡片:VicUnlocked-30B-LoRA

    转换工具

    https://github.com/practicaldreamer/vicuna_to_alpaca

    训练工具

    https://github.com/oobabooga/text-generation-webui

    目前我正在使用2023.05.04v0版本的数据集进行训练,并进行完整内容的训练。

    注意事项:

    因为完整上下文的30B训练时间太长,所以我只会训练一个epoch。这一个epoch将花费我8天的时间,但幸运的是,这些LoRA在第一个epoch表现良好,就像我13B版本的一样。此外,我将几乎每天上传检查点。如果有足够的需求,我可以训练另一个epoch。

    更新:由于我不会训练超过一个epoch,@Aeala将进行完整的三个epoch的训练,但只有一半的上下文长度,如果您关心的话。同时,@Aeala的训练即将结束。

    更新:第1个epoch的训练已完成,这8天感觉真长。我只有一个A6000,我能做的事情有限。此外,RIP gozfarb,不知道他发生了什么事。

    如何进行测试?

  • 如果您尚未下载LLaMA-30B-HF,请下载: https://huggingface.co/Neko-Institute-of-Science/LLaMA-30B-HF
  • 在loras文件夹中创建一个名为VicUnLocked-30b-LoRA的文件夹。
  • 下载adapter_config.json和adapter_model.bin文件到VicUnLocked-30b-LoRA文件夹中。
  • 加载ooba:python server.py --listen --model LLaMA-30B-HF --load-in-8bit --chat --lora VicUnLocked-30b-LoRA
  • 选择instruct并选择Vicuna-v1.1模板。
  • 训练日志

    https://wandb.ai/neko-science/VicUnLocked/runs/vx8yzwi7