一、今天学习内容简要分析
今天的学习重点依然围绕AI 应用开发展开。
我现在的基础是Java,因此学习 AI 时不能只停留在“会用工具”这个层面,而是要逐步理解:
AI 模型如何被调用、如何接入业务系统、如何和工具/数据库/知识库结合,最终形成一个可以完成任务的 Agent。
今天的学习可以分成三个方向:
| 学习方向 | 主要内容 |
|---|---|
| AI 基础理解 | 模型、Prompt、上下文、推理能力 |
| AI 应用开发 | 如何调用大模型 API,如何组织输入输出 |
| Agent 思维 | 让 AI 不只是回答问题,而是能拆解任务、调用工具、完成流程 |
二、今天对 AI 的进一步理解
以前我理解 AI,更多是把它看成一个“聊天工具”。
但随着学习深入,我发现真正的 AI 应用开发并不是简单地问一句、答一句,而是要围绕一个完整流程来设计。
比如一个 AI Agent 通常需要具备以下能力:
- 理解用户意图
- 拆解任务步骤
- 选择合适的工具
- 调用外部能力,比如数据库、API、搜索、文件系统
- 汇总结果并给出最终答案
- 在多轮对话中保持上下文
这让我意识到,Agent 工程师其实不是单纯写 Prompt,而是把 AI 能力工程化、产品化、系统化。
三、Prompt 不只是“提问”,而是任务设计
今天我对 Prompt 的理解也更深了一点。
以前写 Prompt 可能只是这样:
帮我总结一下这段内容。但更好的 Prompt 应该包含:
你是一名 AI 学习助手。 请帮我用适合初学者理解的方式总结下面内容。 要求: 1. 先列出核心概念 2. 再用通俗语言解释 3. 最后给出一个实际开发场景这说明 Prompt 本质上是一种“任务描述语言”。
好的 Prompt 通常要说明:
- 角色:让模型知道它应该以什么身份回答
- 目标:明确最终要完成什么任务
- 约束:规定格式、长度、语气、边界
- 输入:提供必要的上下文
- 输出:规定结果结构
这对于以后做 Agent 非常重要,因为 Agent 的每一步行为,其实都离不开清晰的任务指令。
四、从 Java 开发视角理解 AI 应用
因为我之前主要学习 Java,所以今天我也尝试从 Java 后端开发的角度理解 AI 应用。
传统 Java 后端开发中,我们经常关注:
Controller -> Service -> Mapper -> Database而 AI 应用开发中,可能会变成:
User Input -> Prompt 构造 -> LLM 调用 -> 工具调用 / 知识库检索 -> 结果整理 -> 返回用户两者并不是完全割裂的。
Java 依然可以负责:
- 用户接口
- 权限系统
- 业务流程
- 数据存储
- API 编排
- 日志与监控
- 系统部署
AI 模型则负责:
- 自然语言理解
- 内容生成
- 任务规划
- 信息总结
- 智能问答
- 决策辅助
所以我认为,对 Java 开发者来说,转向 AI 方向并不是放弃原来的技术栈,而是把 AI 能力接入原来的工程体系中。
五、Agent 的核心不是“聊天”,而是“执行任务”
今天最重要的一个收获是:
普通 AI 应用更像是问答系统,而 Agent 更像是能完成任务的智能执行单元。
例如:
普通 AI 问答:
用户:帮我解释一下 RAG 是什么。 AI:RAG 是检索增强生成……Agent 场景:
用户:帮我整理我最近学习 AI 的内容,并生成一篇 CSDN 博客。 Agent: 1. 查询学习记录 2. 提取关键知识点 3. 整理文章结构 4. 生成标题 5. 输出可发布内容这两者的差别很明显。
Agent 不只是回答问题,而是会围绕目标去完成一系列步骤。
这也是我未来想成为 Agent 工程师的原因:它更接近真实的软件系统,也更符合工程化方向。
六、学习过程中的一个小插曲:Docker 源问题
今天学习过程中还有一个比较头疼的小插曲,就是处理Docker 镜像源的问题。
在学习 Agent 的过程中,我们需要用到向量数据库。传统数据库,比如 MySQL、Oracle、PostgreSQL 等,虽然在结构化数据处理方面很成熟,但在高维向量的存储、索引和检索方面并不擅长,所以更适合选择专业的向量数据库。
我这次先采用的是Milvus。Milvus 是一个开源向量数据库,专门用于存储、索引和检索高维向量,非常适合语义搜索、推荐系统、RAG 等场景。
一开始,我想在虚拟机里通过 Docker 安装 Milvus,但在配置 Docker 源的时候遇到了很多问题。前前后后尝试了十几个镜像源,结果都不太顺利。最后只能换一种思路,在 Windows 系统上安装 Docker。这样做的好处是,可以直接利用代理访问 Docker 官网,不需要再反复配置各种镜像源,下载也顺畅了很多。
整个过程可以说是几经波折。虽然当时感觉花了不少时间,甚至有点浪费时间,但回过头来看,这其实也是学习过程中很真实的一部分。很多时候,技术学习并不是一路顺风,环境配置、依赖安装、网络问题,都是必须经历的坑。踩过这些坑之后,对 Docker、Milvus 以及开发环境的理解也会更深入一些。
七、今天学习后的思考
今天学习之后,我感觉 AI 学习不能只关注“模型有多强”,还要关注它如何落地。
一个真正可用的 AI 系统,至少要考虑:
- 用户输入是否清晰
- 模型输出是否稳定
- 数据来源是否可靠
- 是否需要接入知识库
- 是否需要调用工具
- 是否能处理异常情况
- 是否能和已有业务系统结合
这和传统软件开发非常像。
区别在于,传统程序的逻辑大多是确定性的,而 AI 的输出带有一定不确定性。
所以做 AI 应用开发时,不仅要会写代码,还要学会设计:
Prompt、上下文、约束、工具、流程、评估机制八、我目前的学习路线
结合今天的学习,我后续准备按照下面的路线继续推进:
Java 基础能力 ↓ Spring Boot 项目开发 ↓ 大模型 API 调用 ↓ Prompt Engineering ↓ RAG 知识库问答 ↓ Function Calling / Tool Calling ↓ AI Agent 框架 ↓ 独立完成 AI Agent 项目我觉得这条路线比较适合我,因为它没有完全脱离 Java 后端基础,而是在原有能力上叠加 AI 应用开发能力。
九、今日总结
今天对 AI 的理解更加清晰了。
学习 AI 不能只停留在“会问 ChatGPT”或者“知道一些概念”上,而是要逐步走向工程化。
尤其是对于我这种 Java 学习背景的人来说,未来的重点应该是:
用 Java 后端能力承载业务系统,用 AI 能力增强系统智能化,用 Agent 思维设计自动化任务流程。
AI Agent 不是一个单独的概念,而是多种能力的组合:
大模型 + Prompt + 工具调用 + 知识库 + 任务规划 + 工程系统。