新手入行 AI,选什么方向好?

从前端转型学习 AI 一年多,踩了不少坑,也找到了一些门道。这篇文章不讲大道理,只分享我真实的选择和思考过程。

开篇:为什么我要写这篇文章

2024 年初,我开始正式学习 AI。作为一个写了 10 年前端的老程序员,面对 AI 这个庞大的领域,我最初也是一脸懵逼:

  • 机器学习、深度学习、大模型、RAG、Agent、Fine-tuning……这些概念之间是什么关系?
  • 我应该从哪个方向切入?
  • 作为前端,我有什么优势?又有什么劣势?
  • 学完能做什么?能找到什么样的工作?

经过一年多的摸索,我终于理清了思路,也有了一些实战经验。今天就把我的思考分享出来,希望能帮到同样迷茫的你。

先搞清楚:AI 领域到底有哪些方向?

在选择之前,我们得先知道有哪些选项。我按照"距离实际应用的远近",把 AI 领域大致分成这几层:

第一层:基础研究(学术界为主)

  • 机器学习理论:研究新的算法和数学基础
  • 深度学习架构:发明新的网络结构(比如 Transformer)
  • 预训练模型:训练大模型的底座

适合人群:博士、研究员、想进顶级 AI Lab 的人

我的看法:除非你有很强的数学背景和学术追求,否则不建议普通开发者走这条路。门槛太高,投入产出比不划算。

第二层:模型层应用

  • 模型微调(Fine-tuning):在已有大模型基础上针对特定任务优化
  • 模型部署和推理优化:让模型跑得更快、更省资源
  • 多模态模型:处理图片、视频、音频的模型应用

适合人群:有一定算法基础的后端开发者、算法工程师

我的看法:这是一个不错的方向,但需要一定的机器学习基础。如果你完全是零基础,学习曲线会比较陡峭。

第三层:应用层开发(我重点推荐的)

  • 大模型应用开发:基于 API 构建 AI 产品
  • RAG(检索增强生成):让 AI 能够基于你的数据回答问题
  • AI Agent:让 AI 能够自主思考和执行任务
  • Prompt Engineering:设计高质量的提示词

适合人群:有编程基础的开发者,尤其是前端/全栈开发者

我的看法:这是目前需求量最大、门槛相对较低、变现最快的方向。也是我选择的主攻方向。

第四层:AI + 垂直领域

  • AI + 电商:智能客服、商品推荐、图片生成
  • AI + 教育:智能助教、个性化学习
  • AI + 医疗:辅助诊断、医学影像分析
  • AI + 创意:AI 绘画、AI 写作、AI 音乐

适合人群:有特定行业经验的人

我的看法:如果你在某个行业深耕多年,AI + 行业经验是一个很好的差异化竞争点。

为什么我选择了"应用层开发"?

说实话,我最开始也想从底层学起。买了《深度学习》花书,看了吴恩达的机器学习课程,还手写过神经网络的反向传播……

但是,我很快发现几个问题:

问题一:学了不会用

我学会了梯度下降的公式,但面对一个实际需求——“给公司做一个智能客服”,我完全不知道从哪下手。

问题二:底层知识更新太快

大模型时代,很多传统机器学习的知识变得不那么重要了。你花几个月学的特征工程,在大模型面前可能直接被跳过。

问题三:前端背景的优势发挥不出来

作为前端,我的优势在于:

  • 熟悉用户交互和产品思维
  • 能快速构建可用的应用
  • 对 API 调用和异步处理非常熟练

这些优势在底层研究中完全用不上,但在应用层开发中简直是加分项。

最终决定

我决定从应用层切入,需要什么再补什么

这个策略效果出奇地好。一年下来,我不仅做出了好几个 AI 应用,还在实战中补齐了很多理论知识——而且是"用到什么学什么",效率极高。

应用层的三个热门方向详解

既然选择了应用层,那具体选哪个呢?我来分析一下目前最热门的三个方向:

方向一:RAG(检索增强生成)

是什么:让大模型能够基于你自己的数据来回答问题。

用前端的话来类比:就像给大模型接了一个"数据库",它回答问题时会先去"查一下",而不是只靠记忆瞎编。

典型应用场景

  • 企业知识库问答
  • 文档智能搜索
  • 客服机器人

技术栈示例

# 一个简单的 RAG 流程
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.chat_models import ChatOpenAI
from langchain.chains import RetrievalQA

# 1. 把你的文档转成向量存储
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(documents, embeddings)

# 2. 创建检索问答链
qa_chain = RetrievalQA.from_chain_type(
    llm=ChatOpenAI(model="gpt-4"),
    retriever=vectorstore.as_retriever(),
    return_source_documents=True
)

# 3. 提问
result = qa_chain({"query": "公司的请假制度是什么?"})
print(result["result"])

学习难度:⭐⭐⭐(中等)

就业前景:非常好。几乎每个企业都需要知识库问答系统。

我的踩坑经验

  • 向量数据库的选择很重要,我试过 Pinecone、Milvus、Chroma,各有优劣
  • 文档切分(Chunking)是个技术活,切得不好会严重影响效果
  • 召回和排序需要仔细调优

方向二:AI Agent

是什么:让 AI 能够自主思考、规划、使用工具来完成复杂任务。

用前端的话来类比:如果说普通的 API 调用是"函数调用",那 Agent 就像是一个"自动化脚本",它会根据目标自己决定调用什么函数、用什么参数。

典型应用场景

  • 自动化办公助手(自动发邮件、整理文档)
  • 智能数据分析(自动写 SQL、生成报表)
  • 代码助手(自动写代码、修 bug)

技术栈示例

// 用 TypeScript 写一个简单的 Agent(伪代码示意)
interface Tool {
  name: string;
  description: string;
  execute: (params: any) => Promise<string>;
}

const tools: Tool[] = [
  {
    name: "search_web",
    description: "搜索互联网获取信息",
    execute: async (query) => await searchWeb(query)
  },
  {
    name: "send_email",
    description: "发送邮件",
    execute: async ({ to, subject, body }) => await sendEmail(to, subject, body)
  }
];

async function runAgent(task: string) {
  let context = task;

  while (true) {
    // 让 LLM 决定下一步做什么
    const decision = await llm.chat({
      messages: [
        { role: "system", content: "你是一个智能助手,可以使用以下工具..." },
        { role: "user", content: context }
      ],
      tools: tools.map(t => ({ name: t.name, description: t.description }))
    });

    if (decision.action === "finish") {
      return decision.result;
    }

    // 执行工具
    const tool = tools.find(t => t.name === decision.tool);
    const result = await tool.execute(decision.params);
    context += `\n工具结果: ${result}`;
  }
}

学习难度:⭐⭐⭐⭐(较高)

就业前景:非常火热。各大公司都在招 Agent 开发工程师。

我的踩坑经验

  • Agent 的可控性是个大问题,它可能会"跑偏"
  • Token 消耗很快,成本控制是个挑战
  • 需要设计好工具的粒度和错误处理

方向三:Prompt Engineering + 产品设计

是什么:设计高质量的提示词,让 AI 输出更好的结果;同时设计好的 AI 产品交互。

这个方向可能被低估了。很多人觉得写 Prompt 没技术含量,但实际上:

  • 好的 Prompt 和差的 Prompt,效果可能天差地别
  • AI 产品的交互设计和传统产品很不一样
  • 这个方向特别适合有产品思维的前端

典型应用场景

  • AI 产品的 PM / 设计师
  • Prompt 工程师
  • AI 应用的交互设计

技术栈示例

# 一个好的 Prompt 模板示例

## 角色定义
你是一个专业的技术文档撰写者,有 10 年的技术写作经验。

## 任务描述
根据用户提供的代码片段,生成清晰的 API 文档。

## 输出格式
请按照以下格式输出:
1. 函数概述(一句话描述)
2. 参数说明(表格形式)
3. 返回值说明
4. 使用示例
5. 注意事项

## 约束条件
- 语言简洁,避免冗余
- 示例代码必须可运行
- 如果有边界情况,要明确说明

## 示例
[这里给一个示例输入输出]

学习难度:⭐⭐(较低)

就业前景:目前需求量大,但未来可能会被工具替代一部分。建议结合其他技能一起发展。

我的学习路径分享

分享一下我实际的学习路径,供参考:

第一阶段:快速上手(1-2 周)

  1. 直接上手调用 API

    • 注册 OpenAI / Claude 账号
    • 用 curl 或简单脚本跑通第一个调用
    • 理解 Token、Temperature 等基本概念
  2. 看几个开源项目

    • 找一个简单的 ChatGPT 克隆项目,跑起来
    • 读懂代码,理解基本流程

第二阶段:动手做项目(1-2 个月)

这是最重要的阶段。我做了这几个项目:

  1. 个人知识库助手

    • 把我的笔记、收藏的文章做成向量库
    • 用 RAG 实现问答
    • 部署到英博云平台,给自己日常使用
  2. 代码审查助手

    • 结合前端经验,做一个自动代码审查工具
    • 输入代码,输出改进建议
    • 学会了 Prompt 的迭代优化
  3. 简单的 Agent

    • 做了一个能自动搜索、总结新闻的 Agent
    • 踩了很多坑,但学到了很多

第三阶段:补理论(持续进行)

在做项目的过程中,我发现有些概念不懂会卡住,这时候再去学理论,效率很高:

  • 不懂 Embedding?看看什么是向量、余弦相似度
  • 不懂 Attention?简单了解一下 Transformer 架构
  • 不懂 Token?学一下 BPE 分词

注意:不需要深入到数学推导,理解概念和直觉就够用了。

第四阶段:深入一个方向(3-6 个月)

我选择深入 Agent 方向:

  • 读了 LangChain、AutoGPT 的源码
  • 研究了 ReAct、CoT 等 Prompt 范式
  • 自己设计了一套 Agent 框架
  • 英博云平台部署了生产环境的 Agent 服务

给不同背景的人的建议

如果你是前端开发者

优势

  • 熟悉异步编程,调 API 没问题
  • 有产品思维,能做出好用的 AI 应用
  • 全栈能力强,能快速出 Demo

建议方向

  1. 首选:AI 应用开发(RAG + Agent)
  2. 次选:AI 产品设计 + Prompt Engineering
  3. 可以兼顾:AI 前端组件开发(比如对话框、流式输出组件)

具体行动

# 第一步:跑通一个 AI 前端项目
git clone https://github.com/Yidadaa/ChatGPT-Next-Web.git
cd ChatGPT-Next-Web
npm install && npm run dev

# 第二步:尝试修改和定制
# 第三步:做自己的项目

如果你是后端开发者

优势

  • 熟悉服务端架构,部署没问题
  • 了解数据库,做 RAG 有优势
  • 对性能优化有经验

建议方向

  1. 首选:RAG 系统开发
  2. 次选:模型部署和推理优化
  3. 可以发展:AI 基础设施

如果你是产品经理 / 设计师

优势

  • 理解用户需求
  • 有产品设计能力
  • 会讲故事,能推动项目

建议方向

  1. 首选:AI 产品经理 / AI 产品设计
  2. 次选:Prompt Engineering
  3. 可以学习:基本的 API 调用,能自己做原型

如果你是完全零基础

建议

  1. 先学一门编程语言(Python 或 JavaScript)
  2. 学会基本的 API 调用
  3. 然后再参考"前端开发者"的路径

关于找工作的现实思考

说点现实的。AI 岗位现在确实火,但也要注意:

市场真实情况

  1. 应用层岗位需求量大

    • AI 应用开发工程师
    • RAG / Agent 开发工程师
    • AI 产品经理
  2. 算法岗竞争激烈

    • 头部公司要求高(名校博士起步)
    • 中小公司算法岗位少
    • 很多"算法工程师"实际上做的是应用
  3. 薪资范围

    • 应用层:和普通开发差不多,好的项目经验会加分
    • 算法层:天花板高,但门槛也高

我的建议

  1. 不要为了"AI"而"AI"

    • 先想清楚你要解决什么问题
    • AI 是工具,不是目的
  2. 积累作品集

    • GitHub 上放几个 AI 项目
    • 写技术博客分享经验
    • 参加开源社区
  3. 保持学习

    • 这个领域变化太快
    • 今天的最佳实践明天可能就过时了
    • 保持好奇心和学习能力

总结

回到开头的问题:新手入行 AI,选什么方向好?

我的答案是:

  1. 优先选择应用层:门槛相对低、需求量大、能快速出成果
  2. 结合自身背景:前端就做 AI 应用,后端就做 RAG 和部署
  3. 从项目开始:别只看书,动手做才能真正学会
  4. 持续迭代:选定一个方向深入,需要什么再补什么

最后,AI 领域确实很卷,但机会也很多。关键是找到自己的定位,发挥自己的优势。

如果你也是前端转型学 AI,欢迎交流。我在英博云平台部署了一些 AI 应用的 Demo,有兴趣可以去看看。


参考资源

入门推荐

进阶学习

实战项目参考

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐