AI 生成编辑器命令
Available in Start plan
Tiptap 编辑器的 AI 生成扩展提供了一组预配置的命令,您可以将它们集成到富文本编辑器中。这些命令允许您调整文本语气、文本补全、生成图像等,增强编辑器功能。
欲了解这些命令的使用示例,请参阅概览页面。
| 命令 | 描述 |
|---|---|
aiAdjustTone(tone: Tone, options: TextOptions) | 将选中文本的语气调整为指定的TONE。 |
aiBloggify(options: TextOptions) | 将文本重写为博客格式 |
aiComplete(options: TextOptions) | 补全文本中的选中部分 |
aiDeEmojify(options: TextOptions) | 从选中文本中移除表情符号 |
aiEmojify(options: TextOptions) | 为您的文本添加表情符号 ✨ |
aiExtend(options: TextOptions) | 扩展您的文本 |
aiFixSpellingAndGrammar(options: TextOptions) | 修正文法和拼写错误 |
aiKeypoints(options: TextOptions) | 将文本总结为关键点列表 |
aiRephrase(options: TextOptions) | 改写选中文本 |
aiRestructure(options: TextOptions) | 重新结构化选中文本,使其使用富文本格式 |
aiShorten(options: TextOptions) | 缩短选中文本 |
aiSimplify(options: TextOptions) | 用更简单的词汇改写您的文本 |
aiSummarize(options: TextOptions) | 总结您的文本 |
aiTextPrompt(options: TextOptions) | 运行您的自定义提示 |
aiTldr(options: TextOptions) | 生成“TL;DR”(太长,没看完)版本文本 |
aiTranslate(language: Language, options: TextOptions) | 将选中文本翻译为指定语言 |
| 辅助命令 | |
aiAccept(options: AcceptOptions) | 接受生成的响应,并插入编辑器 |
aiReject(options: RejectOptions) | 拒绝生成的响应,并重置 ai.storage 状态 |
aiRegenerate(options: RegenerateOptions) | 重新生成响应,使用相同参数 |
大多数文本命令
大多数文本命令接受相同的选项,使用方法类似。以下示例展示了如何使用 aiBloggify 命令:
editor.chain().focus().aiBloggify(options: TextOptions)aiAdjustTone
// 语气: 'default' | 'academic' | 'business' | 'casual' | 'childfriendly' | 'confident' | 'conversational' | 'creative' | 'emotional' | 'excited' | 'formal' | 'friendly' | 'funny' | 'humorous' | 'informative' | 'inspirational' | 'memeify' | 'narrative' | 'objective' | 'persuasive' | 'poetic' | string
editor.chain().focus().aiAdjustTone(tone: Tone, options: TextOptions).run()aiTranslate
将选中的文本内容翻译为指定的输出语言。
接受两个字母 ISO 639-1 语言代码。
// 语言: 'en' | 'de' | 'nl' | ...
editor.chain().focus().aiTranslate(language: Language, options: TextOptions).run()文本命令选项
对于支持 TextOptions 的每个命令,您可以指定以下选项:
| 设置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
modelName | 见支持的文本模型 | gpt-3.5-turbo | 使用的 OpenAI 模型 |
format | 'rich-text' | 'plain-text' | plain-text | 决定模型响应的格式 |
stream | boolean | false | 是否将字符流式传输到编辑器?其效果类似 ChatGPT 中的“打字机”行为。这需要最新版本的扩展! |
insertAt | undefined | number | {from: number; to: number} | undefined | 将响应插入编辑器的具体位置。如果为 undefined,响应将插入当前选区;如果为数字,响应将插入至该位置;如果为对象,则替换该范围内内容。 |
language | string(例如 en、de) | null | 虽然我们会尽力让 OpenAI 以输入语言响应,有时自己定义语言更准确。 |
tone | string | null | 应当转换为的语气 |
textLength | number | undefined | AI 应生成的文本长度数值(例如“3段”中的数字3) |
textLengthUnit | 'paragraphs' | 'words' | 'characters' | undefined | 文本长度的单位(例如“3段”中的“段落”) |
collapseToEnd | boolean | true | 操作完成后光标是否移动到文本末尾,或插入内容是否被选中。 |
context | Array<{ type: 'text', text: string} | { type: 'url', url: string }> | [] | 为模型生成响应提供的上下文 |
text | string | undefined | 可选的消息文本,用于让模型响应 |
insert | boolean | true | 是否允许直接将内容插入编辑器 |
append | boolean | true | 如果为 true,响应将追加到当前选区末尾;如果为 false,响应将替换当前选区。 |
regenerate | boolean | false | 命令是否用于重新生成之前的响应。若设为 true,initialContent 属性不会更新。 |
遗憾的是,语气与语言的组合有时会导致生成的响应不符合预期语言。
支持的文本模型
目前支持如下 OpenAI 聊天模型:
gpt-4.1gpt-4.1-2025-04-14gpt-4.1-minigpt-4.1-mini-2025-04-14gpt-4.1-nanogpt-4.1-nano-2025-04-14chatgpt-4o-latestgpt-4o-minigpt-4o-mini-2024-07-18gpt-4ogpt-4o-2024-11-20gpt-4o-2024-08-06gpt-4o-2024-05-13gpt-4-turbogpt-4-turbo-2024-04-09gpt-4-turbo-previewgpt-4gpt-4-0125-previewgpt-4-1106-previewgpt-4-0613gpt-4-0314gpt-4-32kgpt-4-32k-0613gpt-3.5-turbo-0125gpt-3.5-turbogpt-3.5-turbo-1106gpt-3.5-turbo-16k
选择合适的模型
在配置 Tiptap AI 扩展时,请根据您的应用需求考虑:
- 经济实惠的操作:如果最主要考虑预算且任务不要求顶级能力,选择 GPT-3 或 DALL·E 2。
- 高级需求:若应用需要最高水平的语言理解或图像生成质量,且预算较充足,推荐选择 GPT-4o 或 DALL·E 3。
Tiptap AI 扩展的灵活配置使您能够根据具体需求和预算调整 AI 集成方案。
注:由于价格存在变动且需保持最新,本文未提供具体定价。建议访问官方 OpenAI 价格页面了解最新信息。