使用GPT进行AI编程#
自托管版本不可用。
不支持Python。 ///
在代码节点中使用AI#
功能可用性
代码节点中的AI辅助功能仅对云用户可用,自托管的n8n不提供此功能。
AI生成的代码会覆盖您的代码
如果您已经在代码选项卡中编写了一些代码,AI生成的代码将替换它。n8n建议使用AI作为起点来创建初始代码,然后根据需要对其进行编辑。
要在代码节点中使用ChatGPT生成代码:
- 在代码节点中,将语言设置为JavaScript。
- 选择询问AI标签页。
- 编写您的查询。
- 选择生成代码。n8n会将您的查询发送至ChatGPT,然后在代码标签页中显示结果。
使用限制#
在试用阶段没有使用限制。如果n8n将该功能设为永久功能,可能会根据您的定价等级设置使用限制。
功能限制#
n8n中的ChatGPT实现有以下限制:
- AI编写的代码用于操作n8n工作流中的数据。您不能要求它从其他来源提取数据。
- AI不了解您的数据,仅知道数据结构,因此您需要告诉它如何找到要提取的数据,或如何检查空值。
- 在运行AI查询之前,Code节点之前的节点必须执行并将数据传递给Code节点。
- 不适用于大型传入数据架构。
- 如果代码节点之前有很多节点,可能会出现一些问题。
编写优质提示词#
编写优质的提示词能提高获取有用代码的几率。
一些通用提示:
- 提供示例:如果可能的话,给出一个期望输出的样例。这有助于AI更好地理解您想要实现的转换或逻辑。
- 描述处理步骤:如果有特定的处理步骤或逻辑需要应用于数据,请按顺序列出。例如:"首先,过滤掉所有18岁以下的用户。然后,按姓氏对剩余用户进行排序。"
- 避免歧义:虽然AI能理解各种指令,但清晰直接的表达能确保获得最准确的代码。与其说"获取年长用户",不如明确表达为"筛选60岁及以上的用户"。
- 明确说明你期望的输出结果。你是希望数据被转换、筛选、聚合还是排序?请尽可能提供详细说明。
以及一些n8n特有的指导:
- 思考输入数据:确保ChatGPT知道您想要访问数据的哪些部分,以及传入数据代表什么。您可能需要告诉ChatGPT关于n8n内置方法和变量的可用性。
- 声明节点间的交互:如果您的逻辑涉及多个节点的数据,请明确指定它们应如何交互。"基于'userID'属性将'节点A'的输出与'节点B'合并"。如果您希望数据来自特定节点或忽略其他节点,请明确说明:"仅考虑'Purchases'节点的数据,忽略'Refunds'节点。"
- 确保输出与n8n兼容。有关n8n所需数据结构的更多信息,请参阅Data structure。
示例提示#
这些示例展示了各种可能的提示和任务。
示例1:在第二个数据集中查找一条数据#
要亲自尝试此示例,下载示例工作流并将其导入n8n。
在第三个代码节点中,输入以下提示:
Slack数据仅包含一项。输入数据代表所有Notion用户。有时包含邮箱的人员属性可能为空。我想找到Slack用户的notionId并返回它。
看看AI生成的代码。
这是您需要的JavaScript代码:
1 2 3 4 5 6 7 8 9 | |
示例2:数据转换#
要亲自尝试此示例,下载示例工作流并将其导入n8n。
在合并项代码节点中,输入以下提示:
返回一行文本,其中列出所有用户名并用逗号分隔。每个用户名应使用双引号括起来。
看看AI生成的代码。
这是你需要的JavaScript代码:
1 2 3 4 | |
示例3:汇总数据并创建Slack消息#
要亲自尝试此示例,下载示例工作流并将其导入n8n。
在Summarize代码节点中,输入以下提示:
为Slack创建一个Markdown文本,用于统计已提交的想法、功能和错误的数量。提交类型保存在property_type字段中。功能对应的属性为"Feature",错误对应的属性为"Bug",想法对应的属性为"Bug"。同时,在该消息中列出按投票数排名前五的提交内容。使用"
"作为链接的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。
在第二个代码节点中,输入以下提示:
"Mock data"中的数据代表了一个人员列表。对于每个人,返回一个包含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的内置方法和变量很有用。
