这是一个关于“文本转行动”系列的教程,旨在利用 AI 将自然语言转化为实际的可操作结果,具体内容如下:
- 系列介绍:欢迎回到“文本转行动”系列,本系列构建智能系统,将自然语言转化为实际行动。
- 建立基础(Part 1):创建连接 Google Calendar API 的 Express.js 后端,通过暴露的 API 端点以编程方式创建日历事件。
- 添加 AI 魔法:使用 Ollama 建立本地语言模型,设计有效的文本转 JSON 提示,构建自然语言 API 端点、用户友好的文本输入界面,并处理日期、时间和时区的复杂性,使用户能输入自然语言描述并创建日历事件。
- 架构概述:用户通过 UI 或 API 调用输入自然语言文本,系统将其发送给 Ollama 并提取结构化数据,然后传递给 Google Calendar API 创建事件,最后向用户返回确认。
- 创建 NLP 服务:安装 axios 包用于向本地 Ollama 实例发送 HTTP 请求,创建
nlpService.js
文件处理自然语言处理,其关键部分是设计的提示,包括锚定当前日期、提供时区意识、明确处理模糊情况的规则和示例等。 - 日历实用函数:创建
utils/calendarUtils.js
文件用于日历操作,其中createCalendarEvent
函数使用 Google Calendar API 创建日历事件。 - 更新 Express 应用:在
app.js
文件中添加新的自然语言端点,处理用户输入的文本并创建日历事件,若发生错误则返回相应的错误信息。 - 构建用户界面:创建
public/text-to-event.html
页面用于自然语言输入,提供示例、文本输入区域和加载指示,以及处理表单提交的 JavaScript 代码。 - 创建测试脚本:创建
test-text-to-event.sh
脚本用于命令行测试,可自动检测系统时区或指定时区,发送自然语言输入到/api/text-to-event
端点并显示结果。 - 更新环境变量:在
.env
文件中更新 Google Calendar API 和 Ollama LLM 的设置。 - 提示工程的魔法:精心设计的提示是系统的核心,包括设置上下文、锚定日期、提供时区意识、定义格式和规则以及提供示例等,使文本转换可靠准确。
- 测试完整系统:启动服务器,确保 Ollama 运行,在浏览器中输入自然语言描述创建日历事件,也可从命令行进行测试,还可测试 Ollama 是否正常运行。
- 完整流程:用户输入文本,经过 NLP 服务、Ollama 和 Google Calendar API 的处理,创建事件并返回确认,展示了“文本转行动”的核心概念。
- 结论与下一步:本教程构建了强大的自然语言日历事件创建界面,展示了提示工程的作用和现代语言模型的能力,未来将探索添加语音识别、构建代理决策等功能,完整代码在 GitHub 上,期待下一集。
- 资源:提供了 GitHub 仓库、Part 1 教程、Ollama 文档和 Google Calendar API 等资源链接,欢迎在评论中提出下一集的需求。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。