为 AI 建议扩展定义规则
AI 建议扩展必须配置一个规则列表,帮助大型语言模型(LLM)分析编辑器内容并生成建议。
AiSuggestion.configure({
rules: [
{
id: '1',
title: '拼写检查',
prompt: '识别并纠正任何拼写错误',
color: '#DC143C',
backgroundColor: 'FFE6E6',
},
],
})每条建议都关联一个规则。如果未提供规则,AI 建议扩展将不会生成任何建议。
每条规则必须有一个唯一的字符串 id,以便每条建议都能匹配到对应的规则。
prompt 属性是一个描述规则的字符串,会提供给 AI 模型帮助它生成建议。
只有 id 和 prompt 会被发送给 AI 模型。title、color 和 backgroundColor 属性用于在编辑器中为建议进行样式设置和展示。
规则会存储在 Tiptap Cloud 吗?
如果您使用 Tiptap 内容 AI 云服务为内容生成建议,规则不会被存储在云端。它们会在每次请求时发送。
因为我们不存储您的规则,您可以随时更改规则,并根据您自己的应用程序逻辑启用它们。例如,您可以拥有适用于所有文档的规则、文档特定规则、适用于某些用户的规则,甚至让用户自行定义规则。
如果您希望规则跨会话持久化,应该将它们存储在您自己的数据库中。
编辑器加载后如何更改规则
您可以随时更改规则,无需重新加载编辑器。使用 setAiSuggestionRules 命令来更新规则。
const newRules = [
{
id: '2',
title: '语法检查',
prompt: '识别并纠正任何语法错误',
color: '#FFA500',
backgroundColor: 'FFF5E6',
},
]
editor.commmands.setAiSuggestionRules(newRules)警告:setAiSuggestionRules 命令不会自动重新加载建议。您需要调用 loadAiSuggestions 命令来基于新规则更新建议。一个常见的做法是将两个命令链式调用。
editor.chain().setAiSuggestionRules(newRules).loadAiSuggestions().run()