探索 Tiptap V3 的最新功能

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决定模型响应的格式
streambooleanfalse是否将字符流式传输到编辑器?其效果类似 ChatGPT 中的“打字机”行为。这需要最新版本的扩展!
insertAtundefined | number | {from: number; to: number}undefined将响应插入编辑器的具体位置。如果为 undefined,响应将插入当前选区;如果为数字,响应将插入至该位置;如果为对象,则替换该范围内内容。
languagestring(例如 endenull虽然我们会尽力让 OpenAI 以输入语言响应,有时自己定义语言更准确。
tonestringnull应当转换为的语气
textLengthnumberundefinedAI 应生成的文本长度数值(例如“3段”中的数字3)
textLengthUnit'paragraphs' | 'words' | 'characters'undefined文本长度的单位(例如“3段”中的“段落”)
collapseToEndbooleantrue操作完成后光标是否移动到文本末尾,或插入内容是否被选中。
contextArray<{ type: 'text', text: string} | { type: 'url', url: string }>[]为模型生成响应提供的上下文
textstringundefined可选的消息文本,用于让模型响应
insertbooleantrue是否允许直接将内容插入编辑器
appendbooleantrue如果为 true,响应将追加到当前选区末尾;如果为 false,响应将替换当前选区。
regeneratebooleanfalse命令是否用于重新生成之前的响应。若设为 trueinitialContent 属性不会更新。

遗憾的是,语气语言的组合有时会导致生成的响应不符合预期语言。

支持的文本模型

目前支持如下 OpenAI 聊天模型:

  • gpt-4.1
  • gpt-4.1-2025-04-14
  • gpt-4.1-mini
  • gpt-4.1-mini-2025-04-14
  • gpt-4.1-nano
  • gpt-4.1-nano-2025-04-14
  • chatgpt-4o-latest
  • gpt-4o-mini
  • gpt-4o-mini-2024-07-18
  • gpt-4o
  • gpt-4o-2024-11-20
  • gpt-4o-2024-08-06
  • gpt-4o-2024-05-13
  • gpt-4-turbo
  • gpt-4-turbo-2024-04-09
  • gpt-4-turbo-preview
  • gpt-4
  • gpt-4-0125-preview
  • gpt-4-1106-preview
  • gpt-4-0613
  • gpt-4-0314
  • gpt-4-32k
  • gpt-4-32k-0613
  • gpt-3.5-turbo-0125
  • gpt-3.5-turbo
  • gpt-3.5-turbo-1106
  • gpt-3.5-turbo-16k

选择合适的模型

在配置 Tiptap AI 扩展时,请根据您的应用需求考虑:

  • 经济实惠的操作:如果最主要考虑预算且任务不要求顶级能力,选择 GPT-3 或 DALL·E 2。
  • 高级需求:若应用需要最高水平的语言理解或图像生成质量,且预算较充足,推荐选择 GPT-4o 或 DALL·E 3。

Tiptap AI 扩展的灵活配置使您能够根据具体需求和预算调整 AI 集成方案。

注:由于价格存在变动且需保持最新,本文未提供具体定价。建议访问官方 OpenAI 价格页面了解最新信息。