模型:

TheBloke/Manticore-13B-Chat-Pyg-Guanaco-SuperHOT-8K-GPTQ

英文

Chat & support: my new Discord server

Want to contribute? TheBloke's Patreon page

Manticore 13B 聊天 Pyg Guanaco GPTQ

这些文件是使用 GPTQ-for-LLaMa 进行四位量化的 GPTQ 4bit 模型文件,合并了 Manticore 13B Chat Pyg Guanaco Kaio Ken's SuperHOT 8K

这是一个实验性的新 GPTQ,可以提供高达8K的上下文大小

经过最新版本的 text-generation-webui 的测试,增加的上下文可以与 ExLlama 正常工作。

它还经过了使用 AutoGPTQ 的 Python 代码的测试,其中 trust_remote_code=True .

代码贡献者:

  • 增加上下文长度的原始概念和代码: kaiokendev
  • 包含此功能的更新的 Llama 模型代码,通过 trust_remote_code 自动实现: emozilla .

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

GGML 版本尚未提供,因为 llama.cpp 尚不支持 SuperHOT。正在调查中,希望很快推出支持。

可用的存储库

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

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

  • 点击“模型”选项卡
  • 在“下载自定义模型或 LoRA”下,输入“TheBloke/Manticore-13B-Chat-Pyg-Guanaco-SuperHOT-8K-GPTQ”
  • 点击“下载”
  • 模型开始下载。下载完成后会显示“完成”
  • 取消选中“自动加载模型”
  • 在左上部,点击“模型”旁边的刷新图标
  • 在“模型”下拉菜单中,选择刚刚下载的模型:“Manticore-13B-Chat-Pyg-Guanaco-SuperHOT-8K-GPTQ”
  • 要使用增加的上下文,请将“加载器”设置为“ExLlama”,将“max_seq_len”设置为8192或4096,并将“compress_pos_emb”设置为8192上下文为4,4096上下文为2。
  • 现在点击“保存设置”,然后点击“重新加载”
  • 模型将自动加载,现在已经准备好使用!
  • 准备好后,点击“文本生成”选项卡,输入提示即可开始!
  • 如何在 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/Manticore-13B-Chat-Pyg-Guanaco-SuperHOT-8K-GPTQ"
    model_basename = "manticore-13b-chat-pyg-guanaco-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:monkey patch

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

    它可以在任何 Python UI 或自定义代码中添加,以实现与 trust_remote_code=True 相同的效果。我没有测试过这个,而且应该通过使用 trust_remote_code=True 来取代它,但为了完整和有趣起见将其包含在内。

    提供的文件

    manticore-13b-chat-pyg-guanaco-superhot-8k-GPTQ-4bit-128g.no-act.order.safetensors

    这将适用于 AutoGPTQ、ExLlama 和 CUDA 版本的 GPTQ-for-LLaMa。有报道称最新版本的 GPTQ-for-LLaMa 的 Triton 模式存在问题。如果有问题,请使用 AutoGPTQ。

    它是使用 group_size 128 创建的,以提高推理准确性,但没有使用 --act-order (desc_act) ,以提高兼容性和推理速度。

    • manticore-13b-chat-pyg-guanaco-superhot-8k-GPTQ-4bit-128g.no-act.order.safetensors
      • 适用于具有增加的上下文的 ExLlama (4096 或 8192)
      • 适用于 Python 代码中的 AutoGPTQ,包括具有增加的上下文,如果设置了 trust_remote_code=True 。
      • 应该可以在 CUDA 模式下使用 GPTQ-for-LLaMa,但不确定是否适用于增加的上下文 - 待定。可能在 GPTQ-for-LLaMa Triton 模式下存在问题。
      • 适用于 text-generation-webui,包括一键安装程序。
      • 参数: 组大小 = 128. Act Order / desc_act = False。

    Discord

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

    TheBloke AI's Discord server

    感谢和如何贡献

    感谢 chirper.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上利用扩展的上下文。

    您将需要使用 monkey patch 或者如果您已经使用了 monkey patch,请将缩放因子更改为0.25,最大序列长度更改为8192

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

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

    • 1200 个样本(2048 序列长度以上的样本数约为400个)
    • 学习率为 3e-4
    • 3 个 epochs
    • 导出的模块包括:
      • q_proj
      • k_proj
      • v_proj
      • o_proj
      • 没有偏差
    • Rank = 4
    • Alpha = 8
    • 没有 dropout
    • 权重衰减为 0.1
    • AdamW 的 beta1 为 0.9 和 beta2 0.99,epsilon 为 1e-5
    • 在 4-bit 基本模型上进行训练

    原始模型卡片:Manticore 13B 聊天 Pyg Guanaco

    Manticore-13b-Chat-Pyg 应用了 TimDettmers 的 Guanaco 13b qLoRa