TinyMCE AI Chat 是一个对话式 AI 功能,可促进用户与 AI 助手之间丰富的多轮交互。它提供上下文设置、模型选择、聊天历史记录,以及网页搜索和推理功能。

该聊天功能作为 TinyMCE 的 tinymceai 插件的一部分提供,并可通过 Conversations API 使用。本页涵盖以下两部分内容:

  • 插件部分描述内置的用户界面功能和配置(聊天配置)。

  • API 部分介绍 REST API 访问(从 Conversations API 开始)。

演示

HTML

<textarea id="tinymceai">
<h1>内容创作的未来:将 GenAI 融入现代工作流程</h1>
<p>数字内容创作的格局正在经历一场剧变。多年来,写作、编辑和发布的过程基本还是手动的,每一篇草稿都需要大量的认知负荷。然而,生成式人工智能(GenAI)的出现引入了一种新的范式。通过将智能直接嵌入到写作发生的地方,组织可以释放出前所未有的生产力和创造力水平。</p>
<figure class="image"><img style="width: 566px; aspect-ratio: 1536 / 1024; display: block; margin-left: auto; margin-right: auto;" src="https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/preview/" sizes="(min-width: 1536px) 1536px, 100vw" srcset="https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/100x/ 100w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/200x/ 200w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/300x/ 300w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/500x/ 500w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/750x/ 750w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/1000x/ 1000w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/1250x/ 1250w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/resize/1500x/ 1500w,https://tiny.ucarecdn.com/c273f5d9-8931-4f66-86a4-347a6137ca88/-/preview/ 1536w" alt="一幅以红蓝半色调风格呈现的复古波普艺术插图,展示了一个友好的机器人与三位使用笔记本电脑和平板电脑的人协作,象征着 AI 辅助内容创作和团队合作。" height="357">
  <figcaption>通过将智能直接嵌入到写作发生的地方,组织可以释放出前所未有的生产力和创造力水平。</figcaption>
</figure>
<h2>从外部工具到原生集成的转变</h2>
<p>许多早期采用人工智能技术的用户依赖外部聊天界面。虽然功能强大,但这种“复制粘贴”的工作流程会带来摩擦并打断创作流程。原生集成——即 AI 存在于文本编辑器本身——能让创作者保持专注。不再需要切换标签页来生成摘要或检查事实,AI 就像一个理解当前文档上下文的合作伙伴。</p>
<h3>集成 AI 的主要优势</h3>
<ul>
  <li><strong>语境感知:</strong>AI 可以分析现有文本,提出相关的后续要点或保持一致的品牌语调。</li>
  <li><strong>降低认知负荷:</strong>通过自动化格式化和基础校对等重复性任务,作者可以专注于高层策略和故事讲述。</li>
  <li><strong>简化协作:</strong>集成工具允许团队在一个共享环境中进行头脑风暴和优化想法,加快审批流程。</li>
  <li><strong>提高准确性:</strong>当连接到内部知识库时,GenAI 可以提供通用模型所缺乏的事实核查功能。</li>
</ul>
<h2>评估工作流程的改进</h2>
<p>为了理解 GenAI 集成的影响,比较传统工作流程与 AI 增强流程是有帮助的。下表突出了常见的内容任务以及原生 AI 如何为不同利益相关者转变输出和效率。</p>
<table style="width: 100%; border-collapse: collapse; margin-top: 20px; margin-bottom: 20px; border: 1px solid rgb(206, 212, 217);" border="1">
  <thead>
    <tr>
      <th style="border-color: #ced4d9; background-color: #ecf0f1; width: 26.6364%;">工作流程任务</th>
      <th style="border-color: #ced4d9; background-color: #ecf0f1; width: 35.8714%;">传统方法</th>
      <th style="border-color: #ced4d9; background-color: #ecf0f1; width: 37.4922%;">GenAI 增强方法</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="border-color: #ced4d9; width: 26.6364%;"><strong>起草</strong></td>
      <td style="border-color: #ced4d9; width: 35.8714%;">从空白页开始。</td>
      <td style="border-color: #ced4d9; width: 37.4922%;">AI 生成大纲和初稿。</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 26.6364%;"><strong>研究</strong></td>
      <td style="border-color: #ced4d9; width: 35.8714%;">在多个标签页中手动搜索。</td>
      <td style="border-color: #ced4d9; width: 37.4922%;">即时检索内部/外部数据。</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 26.6364%;"><strong>语调调整</strong></td>
      <td style="border-color: #ced4d9; width: 35.8714%;">针对不同受众手动重写。</td>
      <td style="border-color: #ced4d9; width: 37.4922%;">一键转换(例如,从随意到正式)。</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 26.6364%;"><strong>总结</strong></td>
      <td style="border-color: #ced4d9; width: 35.8714%;">阅读全文并手动浓缩。</td>
      <td style="border-color: #ced4d9; width: 37.4922%;">自动生成关键要点。</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 26.6364%;"><strong>本地化</strong></td>
      <td style="border-color: #ced4d9; width: 35.8714%;">需要专业的翻译人员。</td>
      <td style="border-color: #ced4d9; width: 37.4922%;">自动多语言适应。</td>
    </tr>
  </tbody>
</table>
<h2>GenAI 的实施挑战与解决方案</h2>
<p>虽然集成 GenAI 带来的好处很明显,但组织在实施过程中会遇到一些挑战。认识到这些障碍可以更好地为顺利过渡做好准备。</p>
<h3>常见的实施障碍</h3>
<ul>
  <li><strong>数据隐私问题:</strong>确保敏感信息在生成过程中不被泄露。</li>
  <li><strong>学习曲线:</strong>团队成员可能需要时间来适应新的工具和功能。</li>
  <li><strong>成本管理:</strong>AI 服务的持续订阅费用可能会累积。</li>
</ul>
<h3>实用的解决方案</h3>
<ul>
  <li>采用具备企业级安全合规性的平台,以解决隐私担忧。</li>
  <li>进行全面的培训课程,确保平稳采用并最大化工具效用。</li>
  <li>实施可扩展的定价模型,以适应不同的组织规模。</li>
</ul>
<h2>将 AI 集成到编辑器的技术路径</h2>
<p>对于开发者来说,将 GenAI 集成到现有编辑器中需要仔细规划和考虑 API 的使用。以下是代码片段,展示了前端如何与 AI 服务交互以获取内容建议。</p>
<code>
// 伪代码:将 AI 建议集成到编辑器
function getAiSuggestions(currentText) {
  const apiUrl = "https://api.example.com/v1/generate";
  const requestBody = {
    input: currentText,
    model: "gpt-3.5-turbo",
    parameters: {
      max_tokens: 500,
      temperature: 0.7
    }
  };
  
  // 发送请求到 GenAI API
  const response = fetch(apiUrl, {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify(requestBody)
  });
  
  // 处理响应并将建议返回到编辑器
  return response.json().then(data => {
    return data.suggestions;
  });
}
</code>
<p>上述代码仅作为一个基本示例。在生产环境中,会进行错误处理、速率限制以及缓存以优化性能。</p>
<h2>实施后的关键绩效指标(KPI)</h2>
<p>为了衡量 GenAI 集成的成功,组织应关注特定的指标,以反映生产力和内容质量的改进。</p>
<table style="width: 100%; border-collapse: collapse; margin-top: 20px; margin-bottom: 20px; border: 1px solid rgb(206, 212, 217);" border="1">
  <thead>
    <tr>
      <th style="border-color: #ced4d9; background-color: #ecf0f1; width: 50%;">绩效指标</th>
      <th style="border-color: #ced4d9; background-color: #ecf0f1; width: 50%;">目标改进</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="border-color: #ced4d9; width: 50%;">内容产出速度</td>
      <td style="border-color: #ced4d9; width: 50%;">产量提升 30%</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 50%;">校对时间</td>
      <td style="border-color: #ced4d9; width: 50%;">减少 40%</td>
    </tr>
    <tr>
      <td style="border-color: #ced4d9; width: 50%;">用户满意度</td>
      <td style="border-color: #ced4d9; width: 50%;">在 6 个月内增加 25%</td>
    </tr>
  </tbody>
</table>
<h2>结论:拥抱 AI 驱动的内容创作</h2>
<p>将 GenAI 集成到现代工作流中不仅仅是为了自动化任务,而是从根本上增强人类创造力。通过理解上下文、减少认知负荷以及简化协作,原生 AI 工具让创作者能够专注于他们最擅长的事情——讲述引人入胜的故事。随着技术的成熟,早期采用者将在数字内容领域占据领先地位。</p>
</textarea>
需要外部翻译服务。 编辑器内多语言支持和翻译。

克服采用挑战

虽然优势显而易见,但实施 GenAI 需要采取战略性方法。关于数据隐私、输出质量和"人性化体验"的担忧很常见。为解决这些问题,组织应优先选择提供"人在回路"功能的工具。应将 AI 视为助手——一个在提供建议的同时将最终编辑控制权保留在创作者手中的协同驾驶者。

此外,技术团队必须关注"集成者"体验。为开发者提供简洁的 API 和预构建的 UI 组件,可确保这些高级功能能够快速部署,而无需承担从零开始构建复杂 AI 基础设施的风险。展望未来,目标很简单:技术融入背景,赋能创作者以更少的摩擦完成最佳工作。

JS

// 第1步:设置会话 - 这应属于应用程序用户管理流程的一部分。
// 以下开源插件仅用于编辑演示 HTML(列表、链接、表格)。TinyMCE AI 选项是重点。
tinymce.init({
  selector: 'textarea#tinymceai',
  height: '800px',
  plugins: ['tinymceai', 'advlist', 'lists', 'link', 'autolink', 'table', 'wordcount'],
  toolbar: 'undo redo | tinymceai-chat ai-quickactions-translate tinymceai-review | styles | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link',
  sidebar_show: 'tinymceai-chat',
  tinymceai_chat_welcome_message: '欢迎使用 TinyMCE AI。请选择下方操作或输入自定义提示。',
  tinymceai_chat_welcome_actions: [
    { text: '以下是一些入门操作:' },
    { title: '总结文档', command: 'TinyMCEAIQuickActionsSummarize' },
    { title: '继续写作', command: 'TinyMCEAIQuickActionContinueWriting' },
    { title: '翻译成西班牙语', command: 'TinyMCEAIQuickActionTranslate', value: 'spanish' },
    { title: '审阅我的文档', command: 'ToggleSidebar', value: 'tinymceai-review' }
  ],
  tinymceai_token_provider: async () => {
    return fetch('/api/tinymceai-token', { credentials: 'include' })
      .then(resp => resp.text())
      .then(token => ({ token }));
  },
  tinymceai_chat_fetch_sources: () => Promise.resolve([{
    label: 'TinyMCE 资源',
    sources: [
      { id: 'docs', label: 'TinyMCE 文档', type: 'web-resource' },
      { id: 'blog', label: 'Tiny 博客', type: 'web-resource' },
      { id: 'survey-2023', label: '2023 年富文本编辑现状', type: 'web-resource' },
    ]
  }]),
  tinymceai_chat_fetch_source: (id) => {
    const urls = {
      'docs': 'https://www.tiny.cloud/docs/tinymce/latest/',
      'blog': 'https://www.tiny.cloud/blog/',
      'survey-2023': 'https://www.tiny.cloud/developer-survey-results-2023/',
    };
    return Promise.resolve({ type: 'web-resource', url: urls[id] });
  },
  tinymceai_quickactions_custom: [
    {
      type: 'chat',
      title: '挑战',
      prompt: '挑战陈述、验证事实并识别假设'
    }
  ],
  tinymceai_languages: [
    { title: '英语', language: 'english' },
    { title: '简体中文', language: 'chinese' },
    { title: '西班牙语', language: 'spanish' },
    { title: '德语', language: 'german' },
    { title: '日语', language: 'japanese' },
    { title: '葡萄牙语', language: 'portuguese' },
    { title: '瑞典语', language: 'swedish' },
    { title: '韩语', language: 'korean' },
    { title: '印地语(天城体)', language: 'hindi devanagari' },
    { title: '意大利语', language: 'italian' },
    { title: '克林贡语', language: 'klingon' },
    { title: '多斯拉克语', language: 'dothraki' },
  ]
});

使用聊天

上述交互式演示展示了文档旁打开的聊天侧边栏。以下部分描述聊天在编辑器中的行为。

处理文档

TinyMCE AI 直接在文档上下文中运行。用户可以询问特定部分的问题、请求全文校对等。每个新对话都包含当前编辑器内容,当内容被选中时,还会包含所选内容。请参阅当前文档和所选内容。

通过启用 网络搜索图标 网络搜索或 推理图标 推理功能,可扩展聊天能力,允许聊天在线查找信息并逐步处理复杂任务。

修改内容

用户可以与 AI 聊天并使用它对文档进行更改。要求它"总结文档"、"将此报告转为单页执行摘要"或"建议更好的章节标题和副标题"。AI 将提出一系列文档更改建议,可逐项审查、接受或拒绝。TinyMCE AI 直接作用于内容,无需复制粘贴聊天记录。

头脑风暴

聊天功能可加速创意流程。从空白文档开始,向 AI 寻求创意。通过聊天和应用更改逐步构建内容。然后审查或让 AI 重写最终草稿以获得最佳效果,所有这些都在一个地方完成。

聊天控件

聊天侧边栏提供以下控件:

  • New chat(位于侧边栏顶部)可发起新对话。聊天历史记录会保留之前的对话。

  • 位于侧边栏顶部的聊天历史图标历史记录按钮可打开过去对话的列表。

  • 提示输入框下方有添加上下文来源图标 Add context source按钮、Web 搜索图标 Web search开关、推理图标 Reasoning开关以及模型选择器。只有当tinymceai_allow_model_selection为true时,模型选择器才会显示。详见可用模型。

集成

要开始使用聊天功能,请在plugins选项中添加tinymceai。这将自动把聊天图标聊天工具栏按钮和菜单项添加到默认的 TinyMCE 工具栏和菜单中。

有关安装和启用 AI 功能的更多信息,请参阅插件参考文档。

可用模型

用户可通过聊天界面底部的下拉菜单为对话选择所需的 AI 模型。

TinyMCE AI 聊天可用模型下拉菜单

下拉菜单中的每个条目会显示模型名称、简短描述以及该模型是否支持 Web 搜索和推理,例如Web search: Yes • Reasoning: No。当令牌(token)不允许所选模型具备相应功能时,Web 搜索和推理开关将被禁用。详见模型功能。

用户可通过同一个下拉菜单更换模型。更换模型后发送的消息将使用新选择的模型。

配置

可通过以下选项配置 AI 聊天的模型选择:

  • tinymceai_default_model:设置新聊天会话的默认模型。该值为模型配置 id(例如agent-1、gpt-5.4或claude-4-5-haiku),必须在 JWT 和订阅允许的模型范围内。支持的模型表格列出了文档记录的名称和 id。若要获取服务在特定环境下返回的列表,可使用GET /v1/models/{version},或在启用tinymceai_allow_model_selection时通过编辑器内的模型选择器查看;详见检查兼容性。

  • tinymceai_allow_model_selection:当值为true时,用户可在 UI 中从服务暴露的模型里进行选择;当值为false时,则使用默认模型且不显示选择器(默认值为true)。

tinymce.init({
  selector: '#editor',
  plugins: 'tinymceai',
  toolbar: 'tinymceai-chat tinymceai-quickactions tinymceai-review',
  tinymceai_default_model: 'claude-4-5-haiku',
  tinymceai_allow_model_selection: true,
  // Required for authentication
  tinymceai_token_provider: () => {
    return fetch('/api/token').then(r => r.text()).then(token => ({ token }));
  }
});

Web 搜索

聊天中的 Web 搜索功能允许 AI 从互联网访问并检索实时信息。模型不再仅依赖预训练知识,而是可以通过网络搜索获取最新事实、核实细节,并提供更准确、及时的答案。

部分模型会自动使用 Web 搜索,而另一些模型可能需要手动激活。提示输入框下方的Web search开关Web 搜索图标是否需要开启取决于模型,有时甚至取决于提示的措辞。对于支持 Web 搜索的模型,请使用该开关按钮启用。

推理

聊天模型中的推理功能可开启对问题进行深入思考、得出逻辑结论以及理解复杂信息的能力。它使模型能够分析上下文、关联想法,并生成结构清晰、连贯的回答,而非仅进行简单的模式匹配。

部分模型会自动使用推理功能,而另一些模型可能需要手动激活。提示输入框下方的Reasoning开关推理图标是否需要开启取决于模型,有时甚至取决于提示的措辞。对于支持推理的模型,请使用该开关按钮启用。

自定义欢迎消息

当用户在发送任何消息之前打开聊天时,侧边栏可显示一条介绍性消息,并附带可运行常见任务的可点击按钮,帮助用户了解 AI 的功能,并通过一键点击开始对话。

TinyMCE AI Chat 欢迎消息

欢迎操作仅在对话中首次发送请求之前显示。一旦发送第一条消息后它们就会被隐藏,开始新对话时会再次显示。

每个建议操作都是一个按钮,选中时会运行编辑器命令。命令可以是 Quick Actions、Chat 命令、核心 ToggleSidebar 命令或任何其他已注册的编辑器命令。描述文本项和操作按钮可以交错排列,将相关操作分组在简短标题下。

配置

欢迎聊天操作通过两个选项配置:

  • tinymceai_chat_welcome_message:设置在聊天侧边栏空状态顶部显示的欢迎消息。

  • tinymceai_chat_welcome_actions:定义显示在欢迎消息下方的描述文本和建议操作按钮。

完整 schema、支持的项目类型和命令示例记录在 tinymceai_chat_welcome_message 和 tinymceai_chat_welcome_actions 中。

tinymce.init({
  selector: '#editor',
  plugins: 'tinymceai',
  toolbar: 'tinymceai-chat tinymceai-quickactions tinymceai-review',
  tinymceai_chat_welcome_message: '<p>Welcome! How can I help you today?</p>',
  tinymceai_chat_welcome_actions: [
    { text: 'Here are some actions to get started:' },
    { title: 'Summarize the document', command: 'TinyMCEAIQuickActionsSummarize' },
    { title: 'Continue writing', command: 'TinyMCEAIQuickActionContinueWriting' },
    { title: 'Review my document', command: 'ToggleSidebar', value: 'tinymceai-review' }
  ],
  // Required for authentication
  tinymceai_token_provider: () => {
    return fetch('/api/token').then(r => r.text()).then(token => ({ token }));
  }
});

为对话添加上下文

AI 聊天可以处理文档及其他内容。使用提示输入框下方的 添加上下文源 添加上下文源图标 按钮将 URL、文件和外部资源添加到对话中。菜单提供 当前文档、文件、链接以及任何自定义源列表。

当前文档和选区

每个新对话都会在提示输入框上方包含当前编辑器内容作为 当前文档 项。

当在编辑器中选中内容时,当前文档 项旁边会出现 选区 项。选区 项仅在当前文档附加时出现,且不能单独移除。

要在不包含文档的情况下开始对话,请在发送第一条消息前移除 当前文档 项。添加上下文源 菜单中的 当前文档 条目可将其添加回来。在 AI 回复包含文档的消息后,该文档无法从该对话中移除。要再次在不含文档的情况下开始,请选择 新聊天。

文件、URL 和外部资源

上传的文件可以是 PDF、DOCX、PNG、JPEG、Markdown、HTML 和纯文本文件。每个文件的大小限制、附件数量等上限取决于所选模型;请参阅 文件处理限制。

TinyMCE AI Chat 添加上下文源菜单

向 AI 询问特定资源,例如 "描述附件图像" 或 "总结附件 Word 文档中的要点"。AI 会分析这些资源并提供可轻松用于文档中的信息。

外部资源可将知识库和其他集中化数据无缝集成到 AI 聊天对话中。无需每次上传文档,可从列表中选择并在对话中引用。

添加自定义上下文源

用于将当前文档、URL 和文件添加到对话上下文的内置选项始终可供用户使用。没有配置选项可以启用或禁用这些内置选项。

要添加供用户选择的自定义外部源,请配置:

  • tinymceai_chat_fetch_sources:提供菜单中显示的源列表(例如来自数据库或 API)。

  • tinymceai_chat_fetch_source:加载所选源 ID 的内容,以便将其作为上下文发送到模型。

完整 schema、返回类型和示例记录在 聊天配置选项 中。

要在不要求用户选择的情况下将自定义源应用于每个新对话,请从 tinymceai_chat_fetch_sources 返回对象,并在其 defaults 属性中列出源 ID。

tinymce.init({
  selector: '#editor',
  plugins: 'tinymceai',
  toolbar: 'tinymceai-chat tinymceai-quickactions tinymceai-review',
  tinymceai_chat_fetch_sources: async () => [
    {
      label: 'My Documents',
      sources: [
        { id: 'doc-1', label: 'Document 1', type: 'file' },
        { id: 'url-1', label: 'Web Page', type: 'web-resource' }
      ]
    }
  ],
  tinymceai_chat_fetch_source: async (id) => {
    const res = await fetch(`/api/documents/${id}`);
    const blob = await res.blob();
    const filename = `${id}.pdf`;
    return { type: 'file', file: new File([blob], filename, { type: blob.type }) };
  },
  // 身份验证所需
  tinymceai_token_provider: () => {
    return fetch('/api/token').then(r => r.text()).then(token => ({ token }));
  }
});

处理 AI 生成的更改

当要求 AI 对文档进行更改时(例如,“将文档中的关键事实加粗”),AI 会提出一系列更改建议。这些更改会直接显示在文档内容中,方便查看将要修改的内容。

当聊天面板中的 AI 回复包含修改历史记录时,该区块会显示在可折叠的章节中。如果默认预览被截断,选择查看详细信息可显示完整历史记录,选择隐藏详细信息可再次折叠该区块。

预览更改

编辑器底部会出现一个审阅栏,其中包含差异模式(Diff mode)和预览(Preview)选项卡。切换这两个选项卡可显示内联的拟议更改(带有添加、删除和格式标记),或预览最终结果。启用差异模式后,拟议的更改会在文档中高亮显示,并带有标记指示添加(绿色)、删除(红色)和格式更改(蓝色)。使用建议叠加层中的箭头可在更改之间导航。当选中某个建议时,叠加层会自动跟随相应的文档章节。

应用更改

点击建议叠加层中的勾选标记接受建议图标以接受当前更改。使用箭头按钮可在各个建议之间移动。

TinyMCE AI Chat 应用更改

点击编辑器底部审阅栏中的全部应用可一次性应用所有待处理的建议。某个建议被应用或跳过后,按钮会显示为应用剩余项,并显示待处理建议的数量,例如“应用剩余项 (11)”。

TinyMCE AI Chat 应用所有更改

拒绝建议

点击建议叠加层中的拒绝建议图标以拒绝当前建议。点击编辑器底部审阅栏中的跳过全部可跳过所有待处理的建议。某个建议被应用或跳过后,按钮会显示为跳过剩余项。

TinyMCE AI Chat 拒绝按钮

聊天历史记录

所有过去的对话都会显示在聊天历史记录中。点击聊天标题中的聊天历史记录图标按钮可打开该列表。点击某个对话可重新打开它,或使用每个条目上的菜单将其固定、重命名或删除。点击AI 聊天可从历史记录视图返回到当前对话。

该列表会在已固定下显示已固定的对话,并在历史记录下显示其他对话。

AI 聊天历史记录

只要该对话所使用的 AI 模型仍受该功能支持,聊天历史记录中的任何对话都可以继续。点击历史记录中的对话可在聊天界面中加载该对话。

在完整页面加载或新的浏览器会话之后,重新打开聊天不会自动将编辑器重新连接到更早对话中的待处理建议。请从聊天历史记录中重新打开该对话,以便在接受或忽略待处理建议之前,将这些建议与当前编辑器会话关联起来。

对话 API(Conversations API)

聊天插件功能构建于对话 API之上,该 API 提供了对API 概述中所述的相同对话功能的 REST 访问。对话支持多条具有共享上下文的消息、可选的文件和网页资源,以及可以更新编辑器内容的建议。

有关端点列表以及请求或响应模式,请从API 概述和API 快速入门开始,然后使用交互式 API 文档(例如对话操作)。

主要功能

该 API 支持上传 PDF、Word 文档和图像,供 AI 阅读和理解。您可以询问特定章节的问题并获得智能回答。AI 在提取 PDF 文本的同时保留其结构,维持 Word 文档的格式上下文,解析 HTML 文件中的网页内容,并描述图像的内容。

每次对话都建立在之前的消息基础上,因此 AI 会跟踪整个讨论过程以及所有已共享的文件。文档、图片、网页链接和文本可以混合在同一个对话中,AI 会将所有格式的信息关联起来。

示例:产品发布工作流

  1. 上传产品规格 → “营销的关键特性有哪些?”

  2. 添加竞品分析 → “我们与竞品相比如何?”

  3. 引用博客文章 → “使用这篇博客文章和我们的优势撰写新闻稿”

  4. 包含品牌指南 → “符合我们的品牌调性和关键信息”

AI 会记住所有已共享的内容,并在整个对话过程中基于这些内容进行构建。

通过 API 发送消息

通过 API 发送消息需要三个请求。每个请求的 token 都需要会话权限。参见会话权限。

  1. 创建会话。

  2. 附加内容:一个 HTML 文档、一个 文件或一个 网页。文件大小限制见文件限制。

  3. 发送消息。服务通过 Server-Sent Events (SSE) 流式传输回复。参见流式响应。

API 功能

消息请求的 capabilities 对象可为该消息启用网页搜索 (webSearch) 和推理 (reasoning)。参见模型功能和推理。

网页搜索与 会话网页资源端点不同,后者将一个已知 URL 的内容附加到会话中。

使用已存储的会话

侧边栏的聊天历史记录显示 AI 服务存储的会话和消息。以下操作可读取和管理相同数据:

流式响应

会话使用 Server-Sent Events (SSE) 进行实时流式响应。有关详细实现信息和代码示例,请参见流式响应指南。有关事件及其载荷,请参见 API 参考中的发送消息。

API 参考

交互式 API 文档列出了每个会话端点、参数、模式和示例。在该界面中,相关操作被分组到以下标签下:会话、会话文档、会话文件、会话网页资源和 会话消息(包括流式传输、网页搜索和推理选项,如适用)。

相关功能

  • AI 审核:用于内容质量分析和改进建议。

  • 快速操作:用于快速、无状态的内容转换。

  • 多编辑器模式:用于在同一页面的多个编辑器之间共享聊天、审核和快速操作。