Skip to content

面向兴趣介绍:如何从零开始"玩"这些领域 ​

返回 目录

AI ​

机器学习 / 训练算法 ​

包括 CV(计算机视觉)、NLP(自然语言处理)、多模态等方向。

(待补充:入门路径、推荐课程与动手项目)

AI Infra ​

(感谢@Marshall Ge的补充!) Infra主要在做一件事情:让模型跑得更快一点。快了,token 就便宜了,同样的卡能服务更多人。

它大体分四层,可以分开深入研究其中一两个:

  • 算子:把矩阵运算和硬件特性结合起来,是所有性能的地基。
  • 框架:把算子串起来、让模型跑起来、稳定地提供服务,这一层知识面最广。
  • 模型优化:看模型结构对硬件友不友好、模块编排合不合理,跟算法相差挺小的。
  • 通信:多机多卡的数据交换,推理追低时延,训练追 GPU 利用率。
  • 异构:让国产卡、RISC-V、FPGA等GPU(还有CPU)在同一个集群里高效工作。

算子

关于算子,你得清楚它内核的分布是怎样的形状,线程有多少个,数据在硬件上是怎样分布的,这些清楚后才能写出一个较为高效的算子。 比如说一个经典的硬件常识:硬件喜欢 64 的倍数。一个没有硬件概念的人会写出 150×150 这种 tile 形状,性能非常拉胯;改成 128×128 立刻就是另一个量级,因为计算单元和显存访问都是按块对齐的。类似这种"跟底层形状强相关"的直觉,是算子工程师最核心的东西。

任务:用 CUDA 手写矩阵乘(GEMM),性能超过 torch.matmul。超过了,算子这块你就算入门了。

框架

直接读 vLLM 会被代码量劝退,先看 nano-vLLM,代码量比较少。读完可以尝试一下,给它加一个特性,比如 suffix cache。

顺便说一下这俩东西的区别:prefix cache(或者说KV cache) 是命中对话开头那段公共前缀时的缓存,也就是常说的"命中缓存";suffix cache 是反过来把结尾变化的部分也缓存起来。魔改过两三个这样的特性,框架层就算不错了。

模型优化

盯着 DeepSeek 系列啃,V3.2、V4 一个模块一个模块看过去,每看一个都问自己"它为什么要这么设计"。比如 KV cache 压缩得很巧妙、MoE 怎么路由、通信怎么省带宽——这些设计背后都是硬件账。

再横向看 Qwen、Kimi 这些典型的开源模型,把架构差异和自己的判断对上,比如Kimi的DEA。然后再跑一下,就算是入门了。

异构(公开资源没多少)

门槛挺高的,像寒武纪,昆仑芯都是些内部开发的保密资源,也挺难拿到卡的,能够搞的是RISC-V这种东西。(by 主持人吐槽:前两年学校就一张4090)说一下方法论,要会看硬件,知道硬件适合干啥,比如带宽,算力峰值啥的,然后写不同硬件的算子(主要工程量)。

通信 这方面不是很清楚啥入门资料,就列举一个吧,ray attention,可以把这个看了

Agent ​

AI 的应用层方向,偏向于开发。

首先你去deepseek/kimi/qwen官方api网站申请一个api key(modelscope这样的应该也有)作为你学习的工具,记住一定要保管好,并且尽量避免让ai看到(可以创建一个.env文件) 然后对着官方的API使用文档deepseek API文档,告诉ai,你想要搭建一个ai对话式的项目,然后api重点关注这个:

 "messages": [
    {
      "content": "You are a helpful assistant",
      "role": "system"
    },
    {
      "content": "Hi",
      "role": "user"
    }
  ],

这代表了你向ai api 输入的内容。 然后他会返回这样一个同样是messages的字段:

  "choices": [
    {
      "finish_reason": "stop",
      "index": 0,
      "message": {
        "content": "Hello! How can I help you today?",
        "role": "assistant"
      }
    }
  ],

先一步搭建起来这次一轮对话还是比较简单的。

后面呢,是给返回的message内容加入到输入的数组里面,构成循环,你就会发现ai可以跟你多轮会话了。

第三步:让ai学会创建你电脑的文件。给输入的tools字段加上关于shell命令的使用简介(比方说cat命令创建文件,这比较明显),然后响应返回的后一步加一段代码可以检查ai是否调用工具,如果有执行命令。最后看看你电脑文件夹有没有成功新建了一个文件,如果有那么就成功了! 在这之后,你就可以正式开始关于agent的学习:

https://github.com/shareAI-lab/learn-claude-code

这个是入门的材料,这个会了你就算入门了。

计算机 ​

前端 ​

首先非常推荐大伙去看MDN这个网站:MDN,可以说它教会了你怎么基本搭建出一个基本的网站。第一步就是从写一份html走起,写下 <p>hello world!</p>,然后在github新建一个index.html,登陆:(你的账号).github.io,于是你得到了第一份属于你自己的网站~

然后在就是根据这个网站,逐渐加入css样式,js的编程语言,让这个网站能够动起来,色彩丰富起来。

然后是服务器的一些搭建知识,为了能够让网站显示动态的数据,我们需要另行一个网站提供服务,mdn也给了我们这个教程:

https://developer.mozilla.org/zh-CN/docs/Learn_web_development/Extensions/Server-side

最后,你就可以使用ai工具,借助vue或者react框架搭建起一个你想要的现代化网站了!在这里的建议是,新手不建议直接去看vue,react的官方文档,然后记笔记式的学习,建议是跟随ai搭建网站的过程,你看每一步它是怎么实现的,比如vue的computed(),react的useeffect,关于每个细节你都需要向ai问明白,这样才是一个好的实践式学习方式,而且你记的也牢。

如果你完成了以上的搭建并且对于知识有所学习而不是只是看着ai开发不动脑,那么你也入了前端这个领域。

后端 ​

(待补充)

全栈 / AI 应用 ​

AI 应用算是全栈的套皮,主要借助 vibe 工具完成开发。也就是说,如果你前后端都会,那么这个问题也不大。

游戏 / 客户端 ​

(待补充)

大数据 ​

(待补充)

以兴趣驱动学习