更新:小模型 + Engram
摘要
作者提供了关于构建一个小型20亿参数AI模型的更新,该模型具有Engram组件,在1500万维基百科tokens上训练,达到了惊人的连贯性,并计划进行Apache 2.0开源发布。
几天前我发布了一些关于9B模型的内容。真正的问题是双重的。有人建议尺寸太大,无法完全验证。这是一个合理的论点。但我需要模型的深度。第二个问题是这些模型的'能力',以及实验室(有钱的)仍然在生产这些模型的事实。在我脑海中没有真正的实用性。一个2B模型?也许有趣。想要聊天机器人吗?- 这可能就是它。此外,模型核心的Llama许可问题很大,不得不被丢弃。它过于限制性,我无法以Apache 2.0发布任何东西。所以我转而使用OLMo分词器。不过我将d_model缩小到2048,以便构建一个小型2B模型。词汇表的大小(使用1/2/3 gram)迫使Engram表达到完整的1B。这占50%,而DS建议约10-20%。所以基本上是2B模型 + 1B Engram。模型由于2048 d_model允许的深度,使我能够总共使用40个SWA/Global块,以利用注意力基础的残差流(Moonshot Kimi K3风格)在密集模型中。数据来自我初始训练中的标准Wiki风格数据源。数据通过7B OLMo模型生成概率。这告诉模型下一个token是32个不同token的概率。最大的惊喜是结果。即使在仅1500万token之后,模型也出奇地连贯。如果我使用纯one-hot交叉熵,1500万token将毫无用处。我会得到乱码。然而,我借用了嵌入和LM_head,这些是从5k降维到2048 d_model。这保留了大约65%的'大'模型在频谱分析时的嵌入数据。训练限制在1500万token,所以它就像... 关于罗马战争历史和该token子集中存在的东西的闲谈。但它没有陷入经典早期模型阶段,即反复重复一个token。这是预训练1500万token通常最初给你的。总之,这是给任何关心这个垃圾的人的更新和进展报告... 我仍在处理来自HuggingFace的所有Wikipedia块,并努力训练它。这将需要时间。如果你读到这里,谢谢。如果有问题,我很乐意回复。有人建议我是一个不懂ML的怪人。我大约20年前开始学习ML,并在Anthropic短暂(6个月)任职,红队测试了原始的Opus 4模型,在他们'Constitutional'论文发布之前。我在论文中被模糊地提及为'红队成员',我猜。我这样做主要是因为我喜欢它。我想如果我构建一个Apache 2.0模型,我至少希望人们能玩它。它似乎可以在24GB VRAM上100%训练。训练代码/模型/数据最终会跟进。目前在HF/Github上。旧帖子在这里:https://old.reddit.com/r/LocalLLaMA/comments/1wezm58/is_there_still_strong_interest_in_a_dense_9b_model/
相似文章
对于一个密集的9b模型,是否仍有浓厚兴趣?
一位开发者创建了一个密集的9.4B参数AI模型,具有Engram表和AttnRes建模等技术增强,旨在开源发布,并寻求社区兴趣以进行进一步训练和部署。
我以独立研究项目的形式,从零开始开发了一个拥有2.7亿参数的语言模型
一个从零开始在英文维基百科上训练、并经过指令微调以用于对话式AI的2.7亿参数语言模型,作为独立研究项目开发。
@MindsAI_Jack: 朝着正确方向迈出一步。据我所知,由Google最初通过ByT5开创,它更具抗性,能够抵御…
来自Meta的一篇研究论文表明,字节级语言模型最初逊于基于令牌的模型,但随着计算资源的增加,它们可以超越后者。这通过在高达1万亿字节上训练的精炼10亿参数模型得到展示。
如何让小型的本地AI模型不再破坏JSON——一种基于语法的方法
作者介绍了一种使用llama.cpp中的GBNF语法来约束本地AI模型输出、确保生成有效JSON的方法。构建了一个编译器,将工具模式转换为语法规则,并在每轮对话中缩小范围,只保留相关工具。
@TheAhmadOsman: 终于大家都在谈论小型专用模型了,下面的推文是17个月前发的
一条推文强调了Jina AI的ReaderLM-v2,这是一个4GB的小型模型,能从杂乱的DOM元素中高精度提取信息,体现了小型专用语言模型的趋势。