windows 安装dbrx尝试

背景介绍

DBRX一款性能出色、应用场景广泛的开源大模型,尤其在处理速度和训练成本上具有显著优势。

对DBRX的研究势在必行

DBRX介绍

DBRX是由Databricks公司推出的一种基于Transformer架构的混合专家模型。它拥有1320亿的总参数,并采用了创新的细粒度MoE(混合专家)架构。在每次推理时,DBRX只会激活其中的360亿参数,这种设计不仅大幅提高了模型的处理速度,还显著降低了训练成本。

DBRX由16个专家网络组成,每次推理时,会使用其中的4个专家网络。这种架构使得DBRX在推理速度上相较于其他模型有显著优势,比如Databricks声称DBRX的推理速度比LLaMA 2-70B快了2倍。同时,DBRX的训练成本也直接减半,仅需1000万美元和3072块NVIDIA H100 GPU。

在性能上,DBRX在多个领域都展现出了优势。在语言理解、编程、数学和逻辑方面,DBRX相较于其他主流开源模型,如Meta公司的Llama 2-70B、法国MixtralAI公司的Mixtral以及马斯克旗下xAI开发的Grok-1等,均表现优异。这使得DBRX可以被应用于多种场景,包括但不限于自然语言理解、编程问题解决、数学问题解答等。

此外,DBRX的预训练数据量达到了12T个字符token,最大上下文长度可以达到32K个token,使其在处理长文解答任务和RAG任务上表现好于GPT-3.5。在Databricks优化的serving环境下,单个用户每秒可以支持高达150个token的处理。

综上所述,DBRX是一款性能出色、应用场景广泛的开源大模型,尤其在处理速度和训练成本上具有显著优势。

官网(科学上网):databricks/dbrx-instruct · Hugging Face  

GitHub地址:”dbrx“ 的搜索结果 | GitHub 中文社区 (github-zh.com)

安装DBRX

安装的方法有不少官方推荐的方法,可以从github、或者知乎上任选一种,按照自己条件任选一种。地址:如何快速下载huggingface模型——全方法总结 - 知乎 (zhihu.com)

笔者使用的时python下载模型(耗时7个小时),步骤如下:

1.获取huggingface-accesstoken,创建token只读权限就可以了

2.模型下载

import os

os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"  # 设置为hf的国内镜像网站

from huggingface_hub import snapshot_download

model_name = "databricks/dbrx-instruct"
# while True 是为了防止断联
while True:

    try:
        snapshot_download(
            repo_id=model_name,
            local_dir_use_symlinks=True,  # 在local-dir指定的目录中都是一些“链接文件”
            ignore_patterns=os.listdir('dbrx-instruct'),  # 忽略已经下载过的文件
            local_dir=model_name,
            token="your_token",  # huggingface的token
            resume_download=True,
        )
        break
    except:
        pass

3.下载加载模型所需要的包

cpu运行:

torch>=2.1.0

transformers>=4.39.0

accelerate==0.28.0

tiktoken==0.4.0

gpu运行

torch>=2.1.0

transformers>=4.39.0

accelerate==0.28.0

flash-attn==2.5.0

tiktoken==0.4.0

运行模型

cpu运行:

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
path=path
tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(path, device_map="cpu", torch_dtype=torch.bfloat16, trust_remote_code=True)

input_text = "Databricks was founded in "
input_ids = tokenizer(input_text, return_tensors="pt")

outputs = model.generate(**input_ids, max_new_tokens=100)
print(tokenizer.decode(outputs[0]))

gpu运行:

path=path

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

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

input_text = "Databricks was founded in "
input_ids = tokenizer(input_text, return_tensors="pt").to("cuda")

outputs = model.generate(**input_ids, max_new_tokens=100)
print(tokenizer.decode(outputs[0]))

运行结果:

2013 by Ion Stoica, Matei Zaharia, Ali Ghodsi, Scott Shenker, and Reynold Xin. The company was created to provide a unified analytics platform for data science teams to collaborate on large-scale data engineering, data science, and machine learning workloads. Databricks is headquartered in San Francisco, California, and has raised over $3 billion in funding to date. The company's flagship product is the Databricks Unified Analytics Platform, which is built on▕

  • 63
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值