AI 智能建议
AI 智能建议是一种基于上下文的智能提示能力,用于在用户输入过程中实时预测并生成后续内容。它能够根据当前文本及光标位置,提供连续写作、智能提示或文本补全建议,帮助用户减少重复输入,提高编辑效率与写作流畅度。
AI 智能建议功能适用于 AI 写作、智能提示、代码补全、文本增强等场景。目前,AI 智能建议仅适用于文本类节点。
该功能支持单条或多条补全建议,用户可通过 Tab 键快速采纳补全内容;当存在多条候选建议时,可使用上下方向键在不同补全项之间切换。
效果截图

配置项示例
const defaultOptions = {
// AI 智能建议相关配置
ai: {
suggestion: {
enabled: false,
async onSuggestion() {
console.log(
'Key "ai": Key "suggestion": Please set the ai.suggestion.onSuggestion method'
)
},
waitTime: 1000,
},
},
}配置项说明
ai.suggestion.enabled
说明:是否启用 AI 智能建议功能。
类型:Boolean
默认值:false
ai.suggestion.onSuggestion
说明:AI 智能建议的核心回调函数,用于根据当前文本上下文生成补全建议。
类型:AsyncFunction,Promise
参数:
params.text:当前节点完整的整文本内容,包含当前光标位置,用于精确告知 AI 智能建议的当前光标位置和上下文内容,适合 LLM 补全、上下文分析、续写判断等。当前光标位置用ai.cursorMarker中配置的占位符表示。params.node:当前节点的 Markdown 内容。params.document:整个文档的 Markdown 内容,包含当前光标位置,当前光标位置用ai.cursorMarker中配置的占位符表示。
返回值:建议的结果字符串 String 或数组 String[]。
示例:
async onSuggestion(text) {
await new Promise((r) => setTimeout(r, 100))
const suggestions = [
'候选建议001',
'候选建议002',
'候选建议003',
'候选建议004',
]
// 返回单条候选建议
// return suggestions[0]
// 返回多条候选建议
const index = text.length % suggestions.length
return suggestions.slice(index, index + 3)
}ai.suggestion.waitTime
说明:用户输入时触发 AI 智能建议的防抖时间,用于控制补全请求的触发频率,单位为毫秒。
类型:Number
默认值:1000
方法列表
方法的使用示例请参考:方法列表。
enableAiSuggestion
说明:在编辑器已就绪且启用 AI 智能建议(ai.suggestion.enabled 为 true)的情况下,开启 AI 智能建议功能。
参数:无
返回值: Boolean | Error
disableAiSuggestion
说明:在编辑器已就绪且启用 AI 智能建议(ai.suggestion.enabled 为 true)的情况下,关闭 AI 智能建议功能。
参数:无
返回值: Boolean | Error
toggleAiSuggestion
说明:在编辑器已就绪且启用 AI 智能建议(ai.suggestion.enabled 为 true)的情况下,切换 AI 智能建议功能的开启和关闭状态。
参数:无
返回值: Boolean | Error