AI Assistant 是 TinyMCE 首个将 AI 功能集成到编辑器中的迭代版本。TinyMCE AI 是当前的 AI 解决方案,通过聊天、快捷操作和审查模式提供深度文档感知的 AI 功能。TinyMCE AI 可同时与 Tiny Cloud 和自托管 TinyMCE 编辑器配合使用,并能连接托管的 Tiny Cloud AI 服务或自托管 AI 服务。

什么是 AI 代理服务器?

代理服务器位于包含 TinyMCE 编辑器的浏览器与 AI 大语言模型(LLM)之间,例如 OpenAI 服务器。

部署代理服务器后,TinyMCE 不再直接与 AI LLM 通信,而是通过代理服务器发送请求。

相应地,LLM 的响应也会先经过代理服务器再返回给 TinyMCE。

代理服务器增加了一层灵活性,可在请求发送至 LLM 之前以及响应返回 TinyMCE 编辑会话之前进行额外处理。

为何要使用代理服务?

  • 用于隐藏查询时使用的 OpenAI API 密钥。

  • 允许不同 TinyMCE 会话的多个查询使用同一个 OpenAI 密钥。

  • 可选择验证已登录用户,并拒绝未经授权使用 OpenAI 服务的行为。

    • 建议在生产系统中采用此做法。

  • 可选择在向 OpenAI 发送请求之前进行额外处理。

    • 例如,在 OpenAI LLM 处理之前过滤并拒绝滥用内容。

  • 可选择在服务器响应 TinyMCE 时进行额外处理。

    • 例如,修改或重新格式化响应。

使用 TinyMCE 设置代理服务需要什么?

注册 TinyMCE AI Assistant

TinyMCE AI Assistant 提供终端用户界面交互组件和工作流程。这使得终端用户可以发起 AI 请求、修改和微调结果,并将增强后的内容重新插入编辑器。该插件还提供服务器请求组件,用于将用户请求发送至 AI LLM 服务。

注册详情可在此处获取。

选择您所选的代理服务器

选择适用于您实施的代理服务器。

出于演示目的,我们使用 Envoy 作为参考。

代理服务器可与其他服务配合使用,在发送带有 OpenAI API 密钥的最终请求至 OpenAI 服务器之前对请求进行预处理。

此外,代理服务器在从 OpenAI 服务器接收到响应后,在将其传递给 TinyMCE 编辑会话之前,还可以提供额外的处理层。

OpenAI 聊天补全 API

该服务会返回由您的 API 查询生成的内容。

您需要一个 OpenAI 账户以及该账户附带的 OpenAI API 密钥。

需要 OpenAI API 密钥才能从 OpenAI 服务发起请求。

身份验证端点

在所有必要情况下均建议使用此端点,尤其是生产系统。

在向 OpenAI 服务器发送任何请求之前,先检查用户是否有权发起这些请求。若请求无法通过身份验证,则应拒绝该请求。

需要身份验证服务来提供此机制。

OpenAI 内容审核 API

OpenAI 有禁止滥用内容的政策。频繁违反该政策可能导致账户暂停使用。

为避免这种情况,内容审核服务可以预先过滤滥用内容并拒绝请求。

下面是一张流程图,展示了上述组件如何协同工作以提供 AI 增强体验。

OpenAI 代理调用流程

示例参考应用

已创建一个示例参考应用来演示 TinyMCE AI Assistant。

该参考应用对源代码进行了技术剖析,重点突出上述代理调用流程图中所述必需组件之间的关键集成点。

技术剖析文档可在项目文档中找到。

参考应用打包在 Docker 容器中,因此您需要 Docker 来运行示例应用。