英文

Chat & support: my new Discord server

Want to contribute? TheBloke's Patreon page

Allen AI的Tulu 13B GPTQ

这些文件是通过 GPTQ-for-LLaMa Allen AI's Tulu 13B Kaio Ken's SuperHOT 8K 合并后的GPTQ 4位模型文件。

这是一个使用 GPTQ-for-LLaMa 进行4位量化的实验性新GPTQ,可提供长达8K的上下文大小。

已经测试了增加的上下文长度与 ExLlama 兼容,通过最新版本的 text-generation-webui 进行测试。

已经从Python代码使用AutoGPTQ进行了测试,并使用 trust_remote_code=True。

编码信用:

  • 原始概念和增加上下文长度的代码: kaiokendev
  • 包括这个功能以及通过 trust_remote_code 远程代码的更新的Llama建模代码: emozilla

请仔细阅读下面的说明来了解如何使用它。

目前尚未提供GGML版本,因为llama.cpp尚不支持SuperHOT。这正在进行调查,并且希望很快会有进展。

可用的存储库

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

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

  • 点击 Model 选项卡。
  • 在 Download custom model or LoRA 下,输入 TheBloke/Tulu-13B-SuperHOT-8K-GPTQ。
  • 点击 Download。
  • 模型开始下载。下载完成后会显示 "Done"。
  • 取消选中 Autoload the model。
  • 在左上角,点击 Model 旁边的刷新图标。
  • 在 Model 下拉菜单中,选择刚刚下载的模型:Tulu-13B-SuperHOT-8K-GPTQ。
  • 要使用增加的上下文,请将 Loader 设置为 ExLlama,将 max_seq_len 设置为 8192 或 4096,将 compress_pos_emb 设置为4以获取 8192 上下文,或设置为 2 以获取 4096 上下文。
  • 现在点击 Save Settings,然后点击 Reload。
  • 模型将自动加载,现在已准备好使用!
  • 准备好后,点击 Text Generation 选项卡,输入提示即可开始!
  • 如何使用AutoGPTQ从Python代码中使用此GPTQ模型

    首先确保已安装AutoGPTQ和Einops:

    pip3 install einops auto-gptq
    

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

    如果您想要尝试4096以减少VRAM使用量,请手动编辑config.json以将max_position_embeddings设置为所需值。

    from transformers import AutoTokenizer, pipeline, logging
    from auto_gptq import AutoGPTQForCausalLM, BaseQuantizeConfig
    import argparse
    
    model_name_or_path = "TheBloke/Tulu-13B-SuperHOT-8K-GPTQ"
    model_basename = "tulu-13b-superhot-8k-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'])
    

    使用其他UI:猴子补丁

    存储库中提供了llama_rope_scaled_monkey_patch.py,由@kaiokendev撰写。

    理论上,它可以添加到任何Python UI或自定义代码中,以启用与 trust_remote_code=True 相同的结果。本人没有测试过这一点,并且使用 trust_remote_code=True 应该比使用猴子补丁更好,但为了完整性和适用性,我将其包含在内。

    提供的文件

    tulu-13b-superhot-8k-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),以增加兼容性并提高推理速度。

    • tulu-13b-superhot-8k-GPTQ-4bit-128g.no-act.order.safetensors
      • 可与具有增加的上下文(4096或8192)的ExLlama配合使用
      • 与Python代码的AutoGPTQ兼容,包括具有增加的上下文时,如果设置了 trust_remote_code=True
      • 应该可以与GPTQ-for-LLaMa的CUDA模式一起工作,但是不确定是否支持增加的上下文 - 待确认。可能在GPTQ-for-LLaMa Triton模式下有问题。
      • 与text-generation-webui一起使用,包括一键安装程序。
      • 参数:Groupsize = 128。Act Order / desc_act = False。

    Discord

    如需进一步支持,并对这些模型和AI进行讨论,请加入我们的Discord:

    TheBloke AI's Discord server

    致谢和如何贡献

    感谢 chirper.ai 团队!

    我已经有很多人问是否可以贡献。我喜欢提供模型和帮助他人,并且很愿意能够花更多时间这样做,以及扩展到新的项目,如微调/训练。

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

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

    特别感谢:Luke from CarbonQuill, Aemon Algiz, Dmitriy Samsonov。

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

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

    原始模型卡片:Kaio Ken的SuperHOT 8K

    SuperHOT原型2 w/ 8K上下文

    这是SuperHOT的第二个原型,这次是30B带有8K上下文和无RLHF,使用 the github blog 中描述的相同技术。测试表明,该模型确实利用了8K的扩展上下文。

    您需要使用猴子补丁,或者如果已经使用猴子补丁,将缩放因子更改为0.25,最大序列长度更改为8192。

    寻找合并和量化模型吗? 训练详情

    我使用以下配置训练了LoRA:

    • 1200个样本(超过2048的序列长度约为400个样本)
    • 学习率为3e-4
    • 3个epoch
    • 导出的模块为:
      • q_proj
      • k_proj
      • v_proj
      • o_proj
      • 无偏差
    • 等级= 4
    • Alpha = 8
    • 无dropout
    • 权重衰减为0.1
    • AdamW beta1为0.9,beta2为0.99,epsilon为1e-5
    • 在4位基础模型上训练

    原始模型卡片:Allen AI的Tulu 13B

    Chat & support: my new Discord server

    Want to contribute? TheBloke's Patreon page

    Allen AI的Tulu 13B fp16

    这些文件是使用pytorch格式的fp16模型文件,用于 Allen AI's Tulu 13B

    这是通过合并和/或转换源代码库为浮点16位而生成的结果。

    可用的存储库

    提示模板

    应使用以下模板:

    <|user|>
    prompt goes here
    <|assistant|>
    

    注意:<|assistant|> 后面应该有一个换行符。这似乎对于正确获取此模型的响应非常重要。

    换句话说,提示是:

    <|user|>\nprompt goes here\n<|assistant|>\n
    

    Discord

    如需进一步支持,并对这些模型和AI进行讨论,请加入我们的Discord:

    TheBloke AI's Discord server

    致谢和如何贡献

    感谢 chirper.ai 团队!

    我已经有很多人问是否可以贡献。我喜欢提供模型和帮助他人,并且很愿意能够花更多时间这样做,以及扩展到新的项目,如微调/训练。

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

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

    特别感谢:Luke from CarbonQuill, Aemon Algiz, Dmitriy Samsonov。

    Patreon特别提及:Oscar Rangel, Eugene Pentland, Talal Aujan, Cory Kujawski, Luke, Asp the Wyvern, Ai Maven, Pyrater, Alps Aficionado, senxiiz, Willem Michiel, Junyu Yang, trip7s trip, Sebastain Graf, Joseph William Delisle, Lone Striker, Jonathan Leane, Johann-Peter Hartmann, David Flickinger, Spiking Neurons AB, Kevin Schuppel, Mano Prime, Dmitriy Samsonov, Sean Connelly, Nathan LeClaire, Alain Rossmann, Fen Risland, Derek Yates, Luke Pendergrass, Nikolai Manek, Khalefa Al-Ahmad, Artur Olbinski, John Detwiler, Ajan Kanaga, Imad Khwaja, Trenton Dambrowitz, Kalila, vamX, webtim, Illia Dulskyi。

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

    原始模型卡片:Allen AI's Tulu 13B

    Tulu 13B

    这个模型是在FLAN V2,CoT,Dolly,Open Assistant 1,GPT4-Alpaca,Code-Alpaca和ShareGPT的混合指令数据集(FLAN V2, CoT, Dolly, Open Assistant 1, GPT4-Alpaca, Code-Alpaca, and ShareGPT)上进行微调的13B LLaMa模型。请注意,这是一个模型差异-有关使用说明,请参阅以下内容。

    这是作为 How Far Can Camels Go? Exploring the State of Instruction Tuning on Open Resources 论文的一部分进行训练的。用于训练和评估此模型的代码库可在 https://github.com/allenai/open-instruct 找到。

    本模型根据许可证AI model license和原始的Llama许可证(llama_license.txt)进行许可。

    用法

    我们假设您已经可以访问HF格式的LLaMa模型。有关获取访问权和转换模型的详细信息,请参阅 https://huggingface.co/docs/transformers/main/model_doc/llama

    克隆 https://github.com/allenai/open-instruct 并安装所需的依赖项,或者只需复制 scripts/weight_diff.py 并安装 weight-diff-requirements.txt 中列出的最低限度要求。然后在同一台机器上下载或克隆此模型差异。

    然后运行:

    python scripts/weight_diff.py recover --path_raw ${hf_llama_path} --path_tuned ${output_path} --path_diff ${diff_location}
    

    然后您将拥有一个恢复的模型!请注意,这会占用相当多的RAM,尤其是对于较大的模型。

    输入格式

    该模型经过训练以使用以下格式(注意换行符):

    <|user|>
    Your message here!
    <|assistant|>
    

    为了获得最佳结果,请以此方式格式化所有输入。

    性能

    以下是本模型在我们的论文 How Far Can Camels Go? Exploring the State of Instruction Tuning on Open Resources 探索的基准测试中的性能:

    MMLU 0-shot MMLU 5-shot GSM Direct GSM CoT BBH Direct BBH CoT TydiQA Gold-Passage TydiQA Closed-book Codex-Eval Pass@1 Codex-Eval Pass@10 AlpacaFarm vs Davinci-003 Average
    49.2 51.8 5.0 36.5 41.3 42.8 46.1 9.2 21.3 35.0 53.9 37.2

    如果您使用此模型,请引用我们的工作、llama论文和原始数据集:

    @misc{wang2023far,
          title={How Far Can Camels Go? Exploring the State of Instruction Tuning on Open Resources}, 
          author={Yizhong Wang and Hamish Ivison and Pradeep Dasigi and Jack Hessel and Tushar Khot and Khyathi Raghavi Chandu and David Wadden and Kelsey MacMillan and Noah A. Smith and Iz Beltagy and Hannaneh Hajishirzi},
          year={2023},
          eprint={2306.04751},
          archivePrefix={arXiv},
          primaryClass={cs.CL}
    }
    
    @misc{touvron2023llama,
          title={LLaMA: Open and Efficient Foundation Language Models}, 
          author={Hugo Touvron and Thibaut Lavril and Gautier Izacard and Xavier Martinet and Marie-Anne Lachaux and Timothée Lacroix and Baptiste Rozière and Naman Goyal and Eric Hambro and Faisal Azhar and Aurelien Rodriguez and Armand Joulin and Edouard Grave and Guillaume Lample},
          year={2023},
          eprint={2302.13971},
          archivePrefix={arXiv},
          primaryClass={cs.CL}
    }
    
    @misc{dolly,
      author = {Databricks},
      title = {Free Dolly: Introducing the World's First Truly Open Instruction-Tuned LLM},
      year = {2023},
      publisher = {GitHub},
      journal = {GitHub repository},
      howpublished = {Blog post},
      url = {https://www.databricks.com/blog/2023/04/12/dolly-first-open-commercially-viable-instruction-tuned-llm}
    }
    
    @article{longpre2023flan,
      title={The Flan Collection: Designing Data and Methods for Effective Instruction Tuning},
      author={Longpre, Shayne and Hou, Le and Vu, Tu and Webson, Albert and Chung, Hyung Won and Tay, Yi and Zhou, Denny and Le, Quoc V and Zoph, Barret and Wei, Jason and others},
      journal={arXiv preprint arXiv:2301.13688},
      year={2023}
    }
    
    @misc{köpf2023openassistant,
          title={OpenAssistant Conversations -- Democratizing Large Language Model Alignment}, 
          author={Andreas Köpf and Yannic Kilcher and Dimitri von Rütte and Sotiris Anagnostidis and Zhi-Rui Tam and Keith Stevens and Abdullah Barhoum and Nguyen Minh Duc and Oliver Stanley and Richárd Nagyfi and Shahul ES and Sameer Suri and David Glushkov and Arnav Dantuluri and Andrew Maguire and Christoph Schuhmann and Huu Nguyen and Alexander Mattick},
          year={2023},
          eprint={2304.07327},
          archivePrefix={arXiv},
          primaryClass={cs.CL}
    }
    
    @article{peng2023instruction,
      title={Instruction Tuning with GPT-4},
      author={Peng, Baolin and Li, Chunyuan and He, Pengcheng and Galley, Michel and Gao, Jianfeng},
      journal={arXiv preprint arXiv:2304.03277},
      year={2023}
    }
    
    @misc{codealpaca,
      author = {Sahil Chaudhary},
      title = {Code Alpaca: An Instruction-following LLaMA model for code generation},
      year = {2023},
      publisher = {GitHub},
      journal = {GitHub repository},
      howpublished = {\url{https://github.com/sahil280114/codealpaca}},
    }