课程导学
00 - 课程导学
学完这门课,你能做什么?
完成全部 8 个章节后,你将拥有:
- 一个 完整的桌面端 AI 应用(可分发为 .exe / .dmg / .AppImage)
- 一套 可复用的 Go 服务架构 模板(配置管理 → AI 调用 → API 集成 → 文档生成 → 编排)
- 对 Wails3 框架 的深入理解(绑定机制、服务注册、跨平台打包)
- 将 大模型嵌入桌面产品 的实战经验
更重要的是,这套模式可以快速迁移到任何内容创作场景 — 把"宠物"换成"科技"“美食"“旅游”,把 DeepSeek 换成 OpenAI / 文心一言 / 通义千问,把 Pexels 换成 Unsplash / 自有图库,核心架构不变。
我们做什么?
pet-content-creator — 今日头条宠物内容创作工具。
一句话描述:
输入主题 → AI 自动写文章 + 搜配图 → 一键导出图文并茂的 Word 文档
工作流程:
用户输入: 主题 + 宠物类型 + 写作风格 + 字数 + 配图数
↓
┌────────────────────────────┐
│ 1. AI 生成文章 (DeepSeek) │
│ 输出: 标题 + 正文 │
│ 输出: 配图搜索关键词 │
└────────────┬───────────────┘
↓
┌────────────────────────────┐
│ 2. 搜索配图 (Pexels API) │
│ 按关键词搜索 │
│ 下载图片到内存 │
└────────────┬───────────────┘
↓
┌────────────────────────────┐
│ 3. 生成 Word (OOXML) │
│ 拼接 XML 模板 │
│ 嵌入图片 │
│ 打包为 .docx │
└────────────┬───────────────┘
↓
📄 输出文件到 Documents/
核心组件一览
backend/
├── config.go → 配置管理 (JSON 读写 + 脱敏)
├── agent.go → AI 创作 (Eino + DeepSeek ChatModel)
├── pexels.go → 图片搜索 (Pexels REST API)
├── word.go → 文档生成 (纯 Go OOXML Builder)
└── creator.go → 编排服务 (串联以上 3 个服务)
frontend/
└── src/
└── App.tsx → React UI (表单 + 结果展示)
main.go → 应用入口 (Wails3 注册)
为什么选这套技术栈?
| 技术 | 为什么选它 |
|---|---|
| Wails3 | Go 后端 + Web 前端的桌面方案中,Wails3 最轻量,不需要嵌入浏览器内核,直接复用系统 WebView |
| Go | 编译为原生二进制,无运行时依赖;goroutine 天然适合并发 API 调用 |
| DeepSeek | 国产大模型中性价比最高,API 兼容 OpenAI 格式,有官方 Go SDK |
| Eino | 字节跳动开源的 AI 框架,提供统一的 ChatModel 抽象,方便未来切换模型 |
| Pexels | 免费图片 API,无需信用卡,注册即用,图库质量高 |
| OOXML | Word 文档本质是 ZIP 包 + XML,纯 Go 标准库就能生成,零额外依赖 |
| React + TypeScript | 类型安全 + 生态丰富 + Wails3 自动生成类型绑定 |
章节学习路线
00 课程导学 ← 你在这里
│
├─ 01 环境搭建 ← 搭好开发环境,跑通第一个 Wails3 窗口
│ └ 产出: 空白桌面窗口
│
├─ 02 配置管理 ← 用 Go 写第一个服务,学会 Wails 服务注册
│ └ 产出: 带配置面板的应用
│
├─ 03 AI 文章生成 ← 接入 DeepSeek,写 Prompt,解析 AI 返回
│ └ 产出: 能独立生成文章的后端
│
├─ 04 Pexels 图库 ← 调用 REST API,搜索 + 下载图片
│ └ 产出: 输入关键词返回图片列表
│
├─ 05 Word 文档 ← 徒手构建 OOXML ZIP 包,嵌入文字和图片
│ └ 产出: 一键导出 .docx 文件
│
├─ 06 前后端桥接 ← Wails 绑定 + React 组件开发
│ └ 产出: 完整的桌面 UI
│
├─ 07 编排流水线 ← 串联所有服务,实现"一键生成"
│ └ 产出: 完整的端到端创作流程
│
└─ 08 打包与扩展 ← 跨平台打包 + Docker 部署 + 扩展思路
└ 产出: 可分发的安装包
阅读提示
代码块格式说明:
// ✅ 课程示例中的代码 (带行号 + 标注)
文中出现的代码路径均相对于项目根目录,例如:
backend/config.go→ 项目根目录下的backend/config.gofrontend/src/App.tsx→ 项目根目录下的frontend/src/App.tsx
图标约定:
- 💡 — 知识点 / 原理说明
- ⚠️ — 常见坑 / 注意事项
- 🔧 — 动手练习
- 📌 — 关键概念
开发环境速览
| 项目 | 版本 |
|---|---|
| Go | 1.24+ (推荐 1.25) |
| Node.js | 18+ |
| Wails3 CLI | 最新 @latest |
| 操作系统 | Windows 10/11 · macOS 13+ · Linux (Ubuntu 22.04+) |
Windows 用户特别提示: 需要安装 WebView2 Runtime(Windows 11 已内置,Windows 10 可能需要手动安装)。
预备知识自检
开始第 01 章之前,确认以下基础:
- 能用 Go 写简单的函数、struct、error 处理
- 知道
package、import、go mod init的作用 - 了解 JavaScript 的基本语法(变量、函数、对象)
- 知道 API Key 是什么、怎么申请
如果以上有打 ❌ 的项目,建议花 30 分钟快速浏览对应文档再继续。
准备好了吗?👉 下一章:环境搭建与 Wails3 初体验