0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

开源大模型Falcon(猎鹰) 180B发布 1800亿参数

OSC开源社区 来源:OSC开源社区 2023-09-18 09:29 次阅读

世界最强开源大模型 Falcon 180B 忽然火爆全网,1800亿参数,Falcon 在 3.5 万亿 token 完成训练,性能碾压 Llama 2,登顶 Hugging Face 排行榜。

今年5月,TII(阿联酋阿布扎比技术创新研究所)推出了号称是 “史上最强的开源大语言模型”——Falcon(猎鹰)。虽然 Falcon 的参数比 LLaMA 小,但性能却更加强大。

此前,Falcon 已经推出了三种模型大小,分别是1.3B、7.5B、40B。据介绍,Falcon 180B 是 40B 的升级版本,Falcon 180B 的规模是 Llama 2 的 2.5 倍,且可免费商用。 Falcon 180B在 Hugging Face 开源大模型榜单上被认为是当前评分最高的开放式大模型,其评分68.74,Meta 的 LlaMA 2以 1.39 的分数差距排名第二。

360532b2-4fcd-11ee-a25d-92fbcf53809c.png

3624d5c2-4fcd-11ee-a25d-92fbcf53809c.png

据官方介绍,Falcon 180B 是当前最好的开源大模型。 其在 MMLU 上 的表现超过了 Llama 2 70B 和 OpenAI 的 GPT-3.5。在 HellaSwag、LAMBADA、WebQuestions、Winogrande、PIQA、ARC、BoolQ、CB、COPA、RTE、WiC、WSC 及 ReCoRD 上与谷歌的 PaLM 2-Large 不相上下。

364a2cf0-4fcd-11ee-a25d-92fbcf53809c.png

目前大家可以通过以下地址进行Demo 体验:https://hf.co/spaces/HuggingFaceH4/falcon-chat


硬件要求

类型 种类 最低要求 配置示例
Falcon 180B Training Full fine-tuning 5120GB 8x 8x A100 80GB
Falcon 180B Training LoRA with ZeRO-3 1280GB 2x 8x A100 80GB
Falcon 180B Training QLoRA 160GB 2x A100 80GB
Falcon 180B Inference BF16/FP16 640GB 8x A100 80GB
Falcon 180B Inference GPTQ/int4 320GB 8x A100 40GB

Prompt 格式

其基础模型没有 Prompt 格式,因为它并不是一个对话型大模型也不是通过指令进行的训练,所以它并不会以对话形式回应。预训练模型是微调的绝佳平台,但或许你不该直接使用。其对话模型则设有一个简单的对话模式。

System: Add an optional system prompt here
User: This is the user input
Falcon: This is what the model generates
User: This might be a second turn input
Falcon: and so on

Transformers

从 Transfomers 4.33 开始,可以在 Hugging Face 上使用 Falcon 180B 并且使用 HF 生态里的所有工具。但是前提是请确保你已经登录了自己的 Hugging Face 账号,并安装了最新版本的 transformers:

pip install --upgrade transformers
huggingface-cli login
bfloat16 以下是如何在bfloat16中使用基础模型的方法。Falcon 180B 是一个大型模型,所以请注意它的硬件要求(硬件要求如上所示)。
from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch

model_id = "tiiuae/falcon-180B"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)

prompt = "My name is Pedro, I live in"
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")

output = model.generate(
    input_ids=inputs["input_ids"],
    attention_mask=inputs["attention_mask"],
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
    max_new_tokens=50,
)
output = output[0].to("cpu")
print(tokenizer.decode(output)

这可能会产生如下输出结果:

My name is Pedro, I live in Portugal and I am 25 years old. I am a graphic designer, but I am also passionate about photography and video.
I love to travel and I am always looking for new adventures. I love to meet new people and explore new places.
使用 8 位和 4 位的 bitsandbytes Falcon 180B 的 8 位和 4 位量化版本在评估方面与bfloat16几乎没有差别!这对推理来说是个好消息,因为你可以放心地使用量化版本来降低硬件要求。请记住,在 8 位版本进行推理要比 4 位版本快得多。要使用量化,你需要安装 “bitsandbytes” 库,并在加载模型时启用相应的标志:
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    **load_in_8bit=True,**
    device_map="auto",
)
对话模型 如上所述,为跟踪对话而微调的模型版本使用了非常直接的训练模板。我们必须遵循同样的模式才能运行聊天式推理。作为参考,你可以看看聊天演示中的format_prompt函数:
def format_prompt(message, history, system_prompt):
    prompt = ""
    if system_prompt:
        prompt += f"System: {system_prompt}
"
    for user_prompt, bot_response in history:
        prompt += f"User: {user_prompt}
"
        prompt += f"Falcon: {bot_response}
"
        prompt += f"User: {message}
Falcon:"
    return prompt
如你所见,用户的交互和模型的回应前面都有User:和Falcon:分隔符。我们将它们连接在一起,形成一个包含整个对话历史的提示。这样就可以提供一个系统提示来调整生成风格。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    3210

    浏览量

    42286
  • 大模型
    +关注

    关注

    2

    文章

    2257

    浏览量

    2327

原文标题:1800亿参数,性能碾压Llama 2,世界最强开源大模型Falcon 180B发布

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    中国石油发布330亿参数昆仑大模型

    中国石油在近日于北京举行的成果发布会上,震撼发布了拥有330亿参数的昆仑大模型,标志着中国能源化工行业正式迈入大
    的头像 发表于 08-29 18:10 733次阅读

    Meta即将发布超强开源AI模型Llama 3-405B

    在人工智能领域的激烈竞争中,Meta公司再次掷出重磅炸弹,宣布将于7月23日正式发布其最新力作——Llama 3-405B,一个拥有惊人4050亿参数
    的头像 发表于 07-18 09:58 920次阅读

    英伟达开源Nemotron-4 340B系列模型,助力大型语言模型训练

    近日,英伟达宣布开源了一款名为Nemotron-4 340B的大型模型,这一壮举为开发者们打开了通往高性能大型语言模型(LLM)训练的新天地。该系列
    的头像 发表于 06-17 14:53 511次阅读

    智谱AI发布全新多模态开源模型GLM-4-9B

    近日,智谱AI在人工智能领域取得重大突破,成功推出全新开源模型GLM-4-9B。这款模型以其卓越的多模态能力,再次刷新了业界对于大型语言模型
    的头像 发表于 06-07 09:17 636次阅读

    通义千问开源千亿级参数模型

    通义千问近日开源了其首个千亿级参数模型Qwen1.5-110B,这是其全系列中首个达到千亿级别的开源模型。Qwen1.5-110
    的头像 发表于 05-08 11:01 676次阅读

    通义千问推出1100亿参数开源模型

    通义千问近日震撼发布1100亿参数开源模型Qwen1.5-110B,这一举措标志着通义千问在A
    的头像 发表于 05-06 10:49 532次阅读

    谷歌发布用于辅助编程的代码大模型CodeGemma

    谷歌发布了用于辅助编程的代码大模型 CodeGemma。CodeGemma 基于谷歌今年 2 月发布的轻量级开源模型 Gemma,针对 G
    的头像 发表于 04-17 16:07 604次阅读
    谷歌<b class='flag-5'>发布</b>用于辅助编程的代码大<b class='flag-5'>模型</b>CodeGemma

    阿里云通义千问发布320亿参数模型,优化性能及效率

    与之前的模型相比,新版320亿参数模型在性能、效率以及内存占用方面取得了明显改善。具体来说,32B在智能体场景下能力优于14B
    的头像 发表于 04-08 14:44 754次阅读

    谷歌开源70亿参数大语言模型,全方位超越Meta Llama-2?

    基于Gemini打造的开源模型Gemma。   谷歌加入AI模型开源阵营,Gemma横空出世   根据谷歌的介绍,Gemma是由谷歌DeepMind以及其他团队开发,由Gemini启发
    的头像 发表于 02-23 00:15 3422次阅读
    谷歌<b class='flag-5'>开源</b>70<b class='flag-5'>亿</b><b class='flag-5'>参数</b>大语言<b class='flag-5'>模型</b>,全方位超越Meta Llama-2?

    谷歌发布全球最强开源模型Gemma

    谷歌近日宣布,其全新开源模型Gemma正式亮相。Gemma被誉为全球性能最强大、同时也是最轻量级的模型系列,分为2B(20亿
    的头像 发表于 02-22 14:51 729次阅读

    模型开源开放评测体系司南正式发布

    近日,大模型开源开放评测体系司南(OpenCompass2.0)正式发布,旨在为大语言模型、多模态模型等各类
    的头像 发表于 02-05 11:28 977次阅读

    Meta发布CodeLlama70B开源模型

    Meta发布CodeLlama70B开源模型 Meta发布开源
    的头像 发表于 01-31 10:30 1338次阅读

    Meta发布开源模型Code Llama 70B

    近日,Meta宣布推出了一款新的开源模型Code Llama 70B,这是其“Code Llama家族中体量最大、性能最好的模型版本”。这款新模型
    的头像 发表于 01-31 09:24 849次阅读

    阿里云通义千问720亿参数模型宣布开源

    12月1日,阿里云通义千问720亿参数模型Qwen-72B宣布开源。与此同时,他们还开源了18亿
    的头像 发表于 12-01 17:08 1283次阅读

    浪潮信息发布源2.0基础大模型,千亿参数全面开源

    11月27日,浪潮信息发布"源2.0"基础大模型,并宣布全面开源。源2.0基础大模型包括1026亿、518
    的头像 发表于 11-28 09:10 767次阅读
    浪潮信息<b class='flag-5'>发布</b>源2.0基础大<b class='flag-5'>模型</b>,千亿<b class='flag-5'>参数</b>全面<b class='flag-5'>开源</b>