使用 GPT 进行 AI 编码#
功能可用性
在自托管版本中不可用。
不支持 Python。
在代码节点中使用 AI#
功能可用性
代码节点中的 AI 辅助功能仅对云服务用户可用。自托管的 n8n 中不提供此功能。
AI 生成的代码会覆盖您的代码
如果您已在代码选项卡中编写了一些代码,AI 生成的代码将替换它。n8n 建议使用 AI 作为创建初始代码的起点,然后根据需要进行编辑。
在代码节点中使用 ChatGPT 生成代码:
- 在代码节点中,将语言设置为 JavaScript。
- 选择 Ask AI 选项卡。
- 编写您的查询。
- 选择生成代码。n8n 将您的查询发送给 ChatGPT,然后在代码选项卡中显示结果。
使用限制#
在试用阶段没有使用限制。如果 n8n 使该功能永久化,可能会有使用限制作为您的定价层的一部分。
功能限制#
n8n 中的 ChatGPT 实现有以下限制:
- AI 编写操作来自 n8n 工作流的数据的代码。您不能要求它从其他来源拉取数据。
- AI 不知道您的数据,只知道架构,因此您需要告诉它如何找到您要提取的数据,或如何检查 null。
- 代码节点之前的节点必须执行并将数据传递给代码节点,然后您才能运行 AI 查询。
- 不适用于大型传入数据架构。
- 如果代码节点之前有很多节点,可能会出现问题。
编写好的提示#
编写好的提示增加了获得有用代码的机会。
一些通用提示:
- 提供示例:如果可能,给出预期输出的样本。这有助于 AI 更好地理解您想要的转换或逻辑。
- 描述处理步骤:如果有应该应用于数据的特定处理步骤或逻辑,请按顺序列出它们。例如:"首先,过滤掉所有 18 岁以下的用户。然后,按姓氏对剩余用户进行排序。"
- 避免歧义:虽然 AI 理解各种指令,但清晰直接确保您获得最准确的代码。不要说"获取年长的用户",您可能会说"过滤 60 岁及以上的用户"。
- 明确您期望的输出。您希望数据被转换、过滤、聚合还是排序?提供尽可能多的详细信息。
以及一些 n8n 特定的指导:
- 考虑输入数据:确保 ChatGPT 知道您要访问数据的哪些部分,以及传入数据代表什么。您可能需要告诉 ChatGPT 关于 n8n 内置方法和变量的可用性。
- 声明节点之间的交互:如果您的逻辑涉及来自多个节点的数据,请指定它们应该如何交互。"基于'userID'属性合并'节点 A'和'节点 B'的输出"。如果您希望数据来自某些节点或忽略其他节点,请明确:"仅考虑来自'购买'节点的数据并忽略'退款'节点。"
- 确保输出与 n8n 兼容。有关 n8n 所需数据结构的更多信息,请参阅数据结构。
示例提示#
这些示例显示了一系列可能的提示和任务。
示例 1:在第二个数据集中查找数据片段#
要自己尝试该示例,下载示例工作流并将其导入 n8n。
在第三个代码节点中,输入此提示:
Slack 数据只包含一个项目。输入数据代表所有 Notion 用户。有时保存电子邮件的人员属性可能为 null。我想找到 Slack 用户的 notionId 并返回它。
查看 AI 生成的代码。
这是您需要的 JavaScript:
1 2 3 4 5 6 7 8 9 |
|
示例 2:数据转换#
要自己尝试该示例,下载示例工作流并将其导入 n8n。
在连接项目代码节点中,输入此提示:
返回一行文本,其中列出了所有用户名,用逗号分隔。每个用户名都应该用双引号括起来。
查看 AI 生成的代码。
这是您需要的 JavaScript:
1 2 3 4 |
|
示例 3:总结数据并创建 Slack 消息#
要自己尝试该示例,下载示例工作流并将其导入 n8n。
在总结代码节点中,输入此提示:
为 Slack 创建一个 markdown 文本,计算已提交了多少想法、功能和错误。提交类型保存在 property_type 字段中。功能具有属性"Feature",错误具有属性"Bug",想法具有属性"Idea"。另外,在该消息中列出按投票排名前五的提交。使用"
"作为链接的 markdown。
查看 AI 生成的代码。
这是您需要的 JavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
明确引用传入节点数据#
如果您的传入数据包含嵌套字段,使用点符号引用它们可以帮助 AI 理解您想要什么数据。
要自己尝试该示例,下载示例工作流并将其导入 n8n。
在第二个代码节点中,输入此提示:
"模拟数据"中的数据代表人员列表。对于每个人,返回一个包含 personal_info.first_name 和 work_info.job_title 的新项目。
这是您需要的 JavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
相关资源#
Pluralsight 提供了关于如何使用 ChatGPT 编写代码的简短指南,其中包括示例提示。
修复代码#
AI 生成的代码可能无需任何更改即可工作,但您可能必须编辑它。您需要了解 n8n 的数据结构。您可能还会发现 n8n 的内置方法和变量很有用。