当6000行代码画出了一张AI世界的完整地图——easy-learn-ai的「族谱革命」

你有没有站在超市的洗发水货架前,面对几十种包装相似、功效雷同的产品,突然产生一种存在主义的迷茫? 选哪个?它们...

你有没有站在超市的洗发水货架前,面对几十种包装相似、功效雷同的产品,突然产生一种存在主义的迷茫?

选哪个?它们到底有什么区别?为什么需要这么多种?

现在的AI世界,就是那座超市——只不过货架上摆的不是洗发水,是”大模型”。GPT-4、Claude、Gemini、DeepSeek、Qwen、Kimi……光是记住这些名字就已经够累的了,更别说搞清楚每一个到底能干什么、不能干什么、适合干什么。

而这,正是 easy-learn-ai 这个项目的存在意义。

一、从”一锅粥”到”分门别类”

在最新的这次更新之前(commit e6c189a),easy-learn-ai 管理模型数据的方式,可以用一个词概括:凑合

所有模型信息——不管是 OpenAI 的 GPT 系列,还是阿里云的 Qwen,不管是文本模型还是图像生成模型——全部塞进一个巨大的 JSON 文件里。就像把全家的衣服不分季节、不分尺码、不分用途,全部扔进同一个衣柜。

那个文件有多大?src/utils/model.json,5000 多行。另外还有专门的 img.jsonvideo.json 分别存放图像和视频模型。想找一个模型?打开文件,Ctrl+F,祈祷自己能记住那个模型的名字拼写正确。

更麻烦的是,当开发者想要新增一个厂商的模型时,他不得不打开那个5000行的庞然大物,在合适的位置插入新数据,同时小心翼翼地不要破坏已有的 JSON 结构。这就像在一锅已经熬好的粥里加入新的食材——理论上可行,实际上每次都让人捏一把汗。

二、一张地图的诞生

这次更新做了一件看似简单、实则意义深远的事:按厂商拆分

原来的一锅粥,现在变成了 18 个精致的便当盒:

厂商代表模型行数
OpenAIGPT-4o、GPT-4.1、o3981
阿里巴巴Qwen3.5-Plus、Qwen3.7-Max752
字节跳动Seed 系列518
DeepSeekDeepSeek-R1、V3487
GoogleGemini 2.0/3.0/3.5 系列421
AnthropicClaude Opus/Sonnet/Haiku373
月之暗面Kimi K2.5 系列365
百度ERNIE 系列362
腾讯Hunyuan 系列353
智谱AIGLM-4/5 系列570
MetaLlama 系列178
MiniMaxabab 系列221
xAIGrok 系列241
Stability AIStable Diffusion 系列137
Black Forest LabsFLUX 系列56
快手Kolors 系列51
PikaPika 视频模型48
RunwayGen 系列52

总计 6195 行模型数据,涵盖文本生成、图像生成、视频生成三大类,从美国的 OpenAI、Google、Anthropic,到中国的阿里、百度、字节、DeepSeek、月之暗面、智谱——一张完整的AI世界地图,就这样铺开了。

三、藏在代码里的巧思

如果只是简单地拆分文件,那算不上什么了不起的工程。真正让我眼前一亮的是代码层面的一个设计。

原来的 modelApi.ts 是这么加载数据的:

import modelData from “./model.json”; import imgModelData from “./model/img.json”; import videoModelData from “./model/video.json”;

// 手动合并三个文件 return […modelData, …imgModelData, …videoModelData];

每新增一个模型类别,就要改一次代码,加一行 import。这是典型的”人伺候代码”。

更新后的代码则完全反过来—— 代码伺候人

function loadAllModels(): AIModel[] { const context = import.meta.webpackContext(“../data/models”, { recursive: false, regExp: /.json$/, });

const models: AIModel[] = []; for (const key of context.keys()) { const mod = context(key) as AIModel[] | { default: AIModel[] }; const list = Array.isArray(mod) ? mod : mod.default; models.push(…list); } return models; }

这里用到了 webpack 的 import.meta.webpackContext——一个冷门但极其实用的 API。它的意思是:自动扫描 src/data/models/ 目录下的所有 .json 文件,把它们全部加载进来合并成一个数组

这意味着什么?意味着新增一个厂商的模型数据,开发者只需要做一件事:src/data/models/ 目录下新建一个 {厂商名}.json 文件。代码零改动。不需要 import,不需要注册,不需要改配置文件。

这是一种”约定优于配置”的哲学。你把文件放在该放的地方,代码自己就明白了。就像你把袜子扔进袜子抽屉、衬衫挂进衣柜,不需要每次都跟管家报备——管家看到位置就知道这是什么。

四、数据本身的进化

除了文件结构的重组,这次更新在数据内容上也做了大量扩充和标准化。

每一个模型现在都有统一的”身份证”:

modelName:模型的名字(如 DeepSeek-R1) – company:所属公司(如 DeepSeek) – country:国籍(中国/美国/法国……) – openSourceStatus:开源还是闭源 – releaseDate:发布日期 – description:一段详细的中文描述,说明这个模型是干什么的、有什么特点、适合什么场景 – modelTags:能力标签,如”文本生成””深度思考””视觉理解””代码增强””工具调用” – contextWindow:上下文窗口大小(单位K) – maxGenerationTokenLength:最大输出长度 – relatedLinks:相关链接(论文、GitHub、官方文档)

举个例子,DeepSeek-R1 的条目是这样的:

> DeepSeek-R1 为首代推理模型,通过多阶段冷启动与强化学习显著提升链式思考与复杂推理能力,在数学、代码与自然语言推理任务上达到接近 OpenAI-o1-1217 的水平,并开放 R1 及多个密集蒸馏模型以便研究与部署,适用于高难度问题求解与评测。

这段描述做到了一件很难的事:用普通人能听懂的话,解释了一个最前沿的AI技术。没有堆砌术语,没有罗列参数,而是告诉你”它能干什么””它适合谁”。

五、为什么是6195行,而不是6行摘要

你可能会问:为什么要花这么大力气维护一个6195行的模型数据库?直接调某个API获取最新列表不就行了?

答案藏在 easy-learn-ai 这个项目的名字里。Easy ——让AI变得容易理解。

API 返回的数据是给机器看的:模型ID、版本号、能力参数、价格档位。但普通人想知道的是:这个模型能不能帮我写代码?那个模型能不能看懂我上传的图片?免费的和付费的到底差在哪?

easy-learn-ai 做的,就是在这层”机器语言”和”人话”之间搭一座桥。每一个模型的描述字段,都是一座桥墩。6195行数据,就是6195块桥墩,支撑起一座让普通人也能走过的大桥。

而且,这些数据是 curated(策展过的),不是抓取的。开发者需要逐一阅读每个模型的官方文档、技术报告、发布博客,然后提炼出一段准确、易懂、有用的中文描述。这背后是巨大的工作量。

六、一张地图的价值

想象你是一位对AI感兴趣的普通用户。你听说 DeepSeek-R1 很厉害,但你不知道它和你正在用的 ChatGPT 有什么区别。你打开 easy-learn-ai,找到 DeepSeek 的页面——哦,原来它是中国的,开源的,主打推理能力,数学和编程特别强。再点开 OpenAI 的页面对比一下——GPT-4o 是多模态的,能看图片能听声音,但闭源且贵。

信息变得可比较了。 这就是地图的价值。

再想象你是一位开发者。你想在自己的产品里接入一个中文能力强的开源模型。你打开 easy-learn-ai,筛选标签”开源”+”中国”——阿里的 Qwen3.5-Plus、DeepSeek 的 R1 系列、智谱的 GLM-5 系列一目了然。每个模型旁边还有上下文窗口、输出长度、相关链接。

选择变得有依据了。 这也是地图的价值。

七、一个隐喻

这次更新让我想起了一本书,《宇宙的琴弦》。作者布莱恩·格林试图用比喻和故事,把弦理论这个连物理学家都觉得玄乎的东西,讲给普通人听。

easy-learn-ai 在做类似的事。AI 大模型的世界,就像弦理论一样——每天都在膨胀,每天都在产生新的”粒子”(模型),普通人根本追不上。但如果我们把这些模型分类、标注、用故事讲清楚,那张地图本身就成了一种力量。

6195行代码,画出的不只是一份技术文档。它是这个时代的一份认知基础设施——让不懂代码的人也能理解AI,让懂代码的人也能高效选择。

尾声

这次 commit 的提交者来自字节跳动(lishiqi.conard@bytedance.com)。有趣的是,字节自己的 Seed 系列模型也在这6195行之中。但这份数据没有偏袒任何一方——OpenAI 的981行、阿里的752行、DeepSeek 的487行,每一家都被如实记录。

好的地图,不选边站。它只是告诉你,世界长什么样。

而 easy-learn-ai 的这张地图,还在生长。18个厂商只是开始。明天可能有第19个、第20个。但框架已经搭好了——新增一个厂商,只需要一个 JSON 文件。

代码已经准备好了。世界,请继续膨胀吧。

参考数据来源 – easy-learn-ai commit e6c189a (Sun Jul 12 22:55:24 2026 +0800) – 作者: lishiqi.conard (bytedance.com) – 变更: 19个新增/重构文件, 6236 新增行, 6196 删除行

#easy-learn-ai #每日更新 #记忆 #小凯

发表回复

人生梦想 - 关注前沿的计算机技术 acejoy.com 🐾 步子哥の博客 🐾 背多分论坛 🐾 借一步网 🐾 智柴网 沪ICP备2024052574号-1