马斯克的人工智能公司 xAI 在 Apache 2.0 许可下发布了其 3140 亿参数混合专家模型 Grok-1 的权重和架构。
此前,马斯克上周一承诺向公众免费提供 Grok。作为一个一直密切关注人工智能领域发展的人,不得不说,这是在开放性和可访问性方面向前迈出的一大步。
什么是Grok?
Grok 是一个庞大的语言模型,拥有 3140 亿
个参数,是目前最大的开源模型。就上下文而言,是 OpenAI 的 GPT-3
大小的两倍多,GPT-3
在 2020 年发布时被认为是一项突破。
从下面的图表中,可以看到与竞争对手相比,Grok 的规模有多大。
Grok 不仅更大,它还利用了专家混合 (MoE) 架构,使得 Grok 能够针对不同任务有策略地激活其参数子集。理论上,与传统的密集模型相比,Grok 更加高效且适应性更强。
以下是 Grok-1 版本的摘要
314B
参数混合专家模型,在给定 Token上有25%
的活跃权重- 基本模型是根据大量文本数据进行训练的,没有针对任何特定任务进行微调。
- 8 experts (2 active)
- 860 亿个参数
- 论文:x.ai/blog/grok-o…
- 代码:github.com/xai-org/gro…
安装 Grok
有关加载和运行 Grok-1 的说明在 GitHub 存储库 中有相应的说明。
从 HuggingFace 或 Academic Torrents 下载权重并将其放入 checkpoints
目录中。
下面就使用 huggingface-cli
来下载,先安装:
arduino复制代码pip install -U "huggingface_hub[cli]"
安装之后,运行以下命令下载 ckpt
:
css复制代码huggingface-cli download xai-org/grok-1 --repo-type model --include ckpt/tensor* --local-dir checkpoints/ckpt-0 --local-dir-use-symlinks False
有些人质疑为什么权重是通过 Bittorrent magnet 链接发布的。由于模型变得越来越大,这可能会成为未来的常态。另外,通过 torrent 分发
300 GB
数据比直接分发更便宜。
打开终端并运行以下命令来测试代码:
首先拉取项目代码:
bash复制代码git clone https://github.com/xai-org/grok-1.git
将下载的模型文件复制到相应的目录后,执行下面命令:
bash复制代码python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
如果出现以下异常
ERROR: Could not find a version that satisfies the requirement jaxlib==0.4.25+cuda12.cudnn89; extra == “cuda12_pip” (from jax[cuda12-pip]) (from versions: 0.4.3, 0.4.4, 0.4.6, 0.4.7, 0.4.9, 0.4.10, 0.4.11, 0.4.12, 0.4.13, 0.4.14, 0.4.16, 0.4.17, 0.4.18, 0.4.19, 0.4.20, 0.4.21, 0.4.22, 0.4.23, 0.4.24, 0.4.25) ERROR: No matching distribution found for jaxlib==0.4.25+cuda12.cudnn89; extra == “cuda12_pip”
可以通过先执行以下命令,在重新安装:
arduino复制代码pip install -U "jax[cuda12_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
安装完成之后,再次运行:
复制代码pip install -r requirements.txt
接下来就是激动人心的时刻:
arduino复制代码python run.py
运行结果如下:
该脚本在测试输入上加载模型中的 checkpoint
和样本。由于 Grok-1 模型规模庞大,包含 3140 亿
个参数,因此需要具有足够 GPU 内存的机器才能使用提供的示例代码测试模型。
xAI 存储库中专家混合 (MoE)层的当前实现并未针对效率进行优化。故意选择此实现是为了优先考虑模型正确性验证并避免开发自定义内核的需要。
如何尝试 Grok
如果只是对 Grok 的功能感到好奇,它目前在 X 上可用,但只有 Premium+
用户可以使用,价格为每月 16 美元
。
总结
xAI 的 Grok-1 体现了技术成熟度、道德考虑和前瞻性创新的融合。它的发布不仅有助于人工智能技术的进步,而且还为人工智能模型的开发和集成到数字交互和信息交换结构中设定了新标准。随着 Grok-1 不断发展和适应,它有望成为追求知识和技术进步的宝贵资产。