配置建议加载时机
您可以自定义 AI 建议扩展何时调用大语言模型(LLM)来生成建议。这让您能够控制何时加载新的建议,以及建议被重新加载的频率。
启动时加载建议
默认情况下,AI 建议扩展将在编辑器准备好时自动加载建议。您可以通过 loadOnStart 选项禁用此行为。
AiSuggestion.configure({
// 禁用自动加载建议
loadOnStart: false,
})内容更新时重新加载建议
默认情况下,AI 建议扩展会在编辑器内容发生变化时重新加载建议。您可以通过 reloadOnUpdate 选项禁用此行为。
AiSuggestion.configure({
// 禁用自动重新加载建议
reloadOnUpdate: false,
})防抖超时
默认情况下,AI 建议扩展会在用户停止输入后等待 800 毫秒再重新加载建议。这可以防止 API 被过于频繁调用。您可以通过 debounceTimeout 选项配置此超时时间。
AiSuggestion.configure({
debounceTimeout: 1000,
})但在某些情况下,您可能希望强制重新加载建议。例如,用户点击“刷新”按钮时,您可能希望重新加载建议。
要手动重新加载建议,请使用 loadAiSuggestions 命令。
editor.commands.loadAiSuggestions()要延迟加载建议,请使用 loadAiSuggestionsDebounced 命令。延迟时间由 debounceTimeout 选项决定。
此命令内部用于在编辑器内容发生变化时重新加载建议(例如用户在编辑器中输入时)。函数带有防抖处理,因此如果在防抖超时内多次调用,仅执行最后一次调用。
editor.commands.loadAiSuggestionsDebounced()编程方式设置建议
如果您想将建议设置为某个具体值,而不是通过配置的 API 加载它们,可以使用 setAiSuggestions 命令。此方法适用于以下场景:
- 您已有一组想要立即显示的建议列表。
- 您想清空建议。
- 您想显示来自不同于扩展选项中配置的 API 的建议。
editor.commands.setAiSuggestions(suggestions)想了解建议对象应包含的数据详情,请查看 API 参考。