The Closing Window
我们的 AI 推广从人开始,而不是从流程开始 image
Photo by Alex Shute on Unsplash

我们的 AI 推广从人开始,而不是从流程开始

AI Insights

TL;DR

我们给公司里的每个人都提供了一个 AI 工具:不到 500 人,分布在多个欧盟国家。我们从每个人的日常工作开始,而不是从自上而下的流程自动化开始。这个工具是 LibreChat,自托管,连接到欧盟区域的 Azure OpenAI,让数据留在欧盟境内,并在请求流中接入了 Redakt,也就是我之前写过的那个 PII 检测器。这篇文章讲的是我们为什么按这个顺序来做,以及这套配置里都有什么。

两条路径,以及我们为什么从人开始

把 AI 引入一个组织有两条路径。一条是自上而下的:管理层和各部门审视流程,寻找 AI 可以改进的地方。另一条是自下而上的:帮助每个人更高效地完成自己的日常工作。你从起草、总结、翻译、梳理一份文档或一张表格开始,然后进阶到创建针对某个非常具体的工作流进行优化的个人智能体。更进一步的目标,是让每个人都成为 builder,至少给他们具备这种能力的可能。

流程这条路径很重要,但在很多组织里,包括我们自己,它很大一部分都依赖于尚未清理干净、尚未良好连接的数据,而这项工作需要时间。需要这些数据的项目只能等着,而其他项目则可以继续推进。个人这条路径没有这种依赖,所以能更快带来价值。它需要的东西更小:一个人人都能用的好用工具,再加上一点如何使用它的指导。

所以我们从人开始。而且在你能用 AI 帮助任何人完成日常工作之前,大家得先有访问权限,这让第一步变得很具体:给每个人一个大家都能用的工具,好用到足够有用,运行在我们自己掌控的基础设施上,数据留在欧盟境内。这篇文章接下来讲的就是我们是怎么把它搭起来的。

我们用了什么

我们选了 LibreChat。它是一个开源的、ChatGPT 风格的前端,在自托管圈子里相当有名,不过很多做 AI 的人却没听说过它。

对于一次全公司范围的部署,它涵盖了我们需要的东西:

  • 通过 Azure Entra ID 实现 SSO,这样访问就用我们现有的身份体系,而不用单独维护一份用户列表。
  • 自托管,这样部署和数据流向都归我们自己。
  • 可扩展,这对我们后面想加的东西很重要。

我们也看了 Open WebUI,这个领域里另一个常见选择。两者都很能干。LibreChat 在运维上对我们的需求来说稍微轻一些,所以我们就选了它。

技术栈

模型是 GPT-5,运行在 Sweden Central 的 Azure OpenAI 上,采用欧盟数据专区(data zone)部署,让处理过程留在欧盟境内以符合 GDPR。一个更小、更便宜的模型负责后台任务,比如生成对话标题。

GPT-5 大约是每百万输入 token 1.25 美元、每百万输出 token 10 美元。不便宜。让它能作为一个面向所有人的工具用起来的,是按用量计费。按席位的 AI 许可证大约是每人每月 20–30 欧元,而对于几百号人来说,其中大多数人用得很轻,那就意味着一大堆付了钱却闲置的访问权。用按用量计费的推理,我们只为实际用掉的部分付费,所以那些几乎不碰它的大多数人几乎不花什么钱。我们仍然为那些离不开它们的人提供像 Claude 和 Copilot 这样的按席位工具,但这个是它们底下的基础层。

用 Redakt 做 PII 检测

Redakt 是我自己做的、之前写过的那个 PII 检测服务。我们把它接进了我们内部的聊天工具,让它处在 LibreChat 客户端和 Azure 推理 API 之间,在对话经过时进行检查。它是异步运行的,所以不会给聊天增加延迟。

目前它只会发出警告。如果有人正要发送一个姓名、一个地址或者其他客户信息,Redakt 就会把它标记出来。它也可以设置成抛出一个错误,我们的定制会据此阻止对话完成,但我们一开始用的是警告,而不是拦截。

我们是有意这么做的。在有人粘贴个人数据的那一刻给出一个警告,会让大家先去调整自己的习惯。以后从警告转为拦截只是一次配置上的改动,等到大家已经习惯了这个工具之后就行。

如何扩展

LibreChat 有两种添加能力的方式,对我们要把它带向何方来说,两者都很重要。

它内置了一个 agents 功能。这是这个概念的一个简化版:一个有名字的配置,把一个模型、一段 system prompt、一些工具和知识文件组合在一起,用户可以直接和它聊天。和一个完整的智能体框架相比,它比较有限,但用来做诸如政策助手或写作助手之类的东西已经够了,而且不用写代码。

要做超出这个范围的事,你就在像 Haystack 或 LangGraph 这样的框架里构建智能体,把它暴露成一个兼容 OpenAI 的 endpoint,再把这个 endpoint 添加到 LibreChat 里。这个智能体随后就会出现在大家本来就在用的同一个界面里。LibreChat 还支持 MCP 服务器,用来连接工具和数据源。文档涵盖了完整的范围。

我们要接入的第一个东西是 Sherpa,一个我一直在做的 AI 落地指南,用来帮助同事们弄清楚怎么在自己的工作中使用 AI。

接下来是什么

流程这条路径在并行推进。其中一部分已经在进行了,而那些依赖更干净、连接更好的数据的部分,会随着那项工作落地而逐步打开。与此同时,个人这条路径已经在产出价值,而且会不断累积:人们只有通过使用,才能学到一个工具能被推到多远。帮助同事完成日常任务会培养这种熟悉度,我的期望是,它能打开一些他们本来不会去尝试的、更高层次的 AI 用法,而这正是培训工作和像 Sherpa 这样的工具的意义所在。

一个共享的工具,再加上一点指导,就是个人这条路径起步所需要的全部。更大的、流程层面的工作,会与它并行推进。

Powered by Buttondown.