为什么 deepseek 的源代码只有几个文件?

1 天前
 cpalead

convert.py fp8_cast_bf16.py generate.py kernel.py model.py 就这几个文件? 就这一个文件就可以实现一个大模型?

1973 次点击
所在节点    deepseek
15 条回复
106npo
1 天前
大模型的开源指的是权重
opengps
1 天前
大模型里的大,指的是训练集大
cpalead
1 天前
@106npo 权重是什么意思
lifei6671
1 天前
当然不是呀。DeepSeek 所谓的开源是指开源里大模型的权重。你可以理解为一个公式,DeepSeek 给出的最优解集合。开源的当然不是解的过程。
一般情况下,会有三个文件,配置文件、权重文件和 Tokenizer 文件。
levn
1 天前
完全开源 (Open Source / Open Source AI - OSI): 遵循 Open Source Initiative 的定义。指不仅开放模型权重,还开放训练代码、数据预处理流程、甚至训练数据集的完整生态,OLMo 就是一个例子。
开放权重 (Open Weights): 大多数所谓的“开源”大模型均属于此。这类模型会公开模型参数( Weight ),使您可以运行、微调模型,但通常不公开训练数据来源、预训练时的配比策略或完整代码。例如,早期的 Llama 系列通常被认为是开放权重。
Inn0Vat10n
1 天前
其他的代码你没集群,没数据,也跑不起来啊
cpalead
1 天前
@Inn0Vat10n 其他的代码在哪
CEBBCAT
1 天前
楼主是退休的高校计算机系老教授吗?这些问题可以问问 chatgpt.com 看看
frayesshi1
1 天前
这几个 python 文件不是权重吧,权重是类似 CV 里面的 bin 文件或者 yolo 的 onnx 文件,是训练得到的数据
hefish
1 天前
数据有好多 G 的吧。
源码里面调用的模块,也不小啊。。
你跑了跑就知道了。。
我光装个 vllm 就装了几百个 M 。
strobber16
1 天前
微内核
cpalead
1 天前
@CEBBCAT 是什么让你判断是高校计算机老教授的
CEBBCAT
1 天前
@cpalead #12 说出来会打击人,总的来说还是尝试在思维敏捷和思辨上加强一些锻炼吧
xyooyx
1 天前
非 AI 时代,企业花了大量成本找来最优秀的工程师编写出优质代码,有价值的是代码逻辑,所以我们得出逻辑 [开放代码=共享价值] 。
模型时代,企业花了大量算力计算出模型权重,那么开发代码并不能实现价值共享,转而变成 [开放权重=共享价值]
zizon
16 小时 22 分钟前
1. generate.py 描述了数据/权重文件怎么加载的.
2. model.py,尤其 Transformer 类描述了模型结构/层等怎么构成的信息.
3. kernel.py 描述了 2 里用到的一些核心自定义算子.

给你 2+1 类似与给了头文件声明和.so 文件.

开源的是这个.h.

4. 更接近一些你理解的开源的是有些会提供 finetune.py,做微调的.
这个会告诉你一部分真实完整训练场景下,input/训练数据大概长什么样.
理论上,你有可能根据这个数据格式,去完整重新训练一个等价模型,前提是有对应的硬件资源.

但,通常来说 fintune.py 暴露的信息是不够的.
之所以叫微调,也就是因为它只是一部分 input 长这样.

你可以看看 olmo 的 train.py,比较符合你的对开源的想法.
属于一个端到端,理论上你有硬件条件就可以从 repo 完整复刻的开源形态.
https://github.com/allenai/OLMo/blob/main/scripts/train.py

你说 1/2/4 够不够.
也不能说不够吧.

但 pretrain 的 datasource 直觉上还是很影响跟模型交互的语言/prompt 风格的.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1201813

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX