☰
用WorkBuddy配合仓颉.Skill 2.5免费蒸馏飞书内容为可复用技能
2026/9/28 23:39:19 网站建设 项目流程

每天一睁眼,打开飞书就是满屏的文档、表格、群消息、会议纪要,几年下来,这些内容早就变成一座“数据矿山”。但真到要用的时候,要么记不清文件在哪,要么找到了也没法直接复用。我最近折腾出一条免费路子,用本地AI工作台WorkBuddy配合一个叫仓颉.Skill 2.5的技能包,把飞书里的任何内容成体系地“蒸馏”出来,变成能直接调用的技能。这里的蒸馏,不是模型训练里那个知识蒸馏,而是把散落的业务内容提炼、清洗、重组,封装成可复用的Skill。这篇文章是我自己的实操记录,包括怎么绕过飞书官方那个动不动就收费的CLI权限,纯免费把整条链路跑通。

1. 为什么要“蒸馏”飞书:先搞懂这套组合要解决什么问题

1.1 飞书内容管理的三个痛点

第一个痛点是内容形态太割裂。飞书里的知识不是一个整体,而是散落在云文档、电子表格、多维表格、群聊消息、日程纪要里。文档里写的是逻辑,表格里存的是数字,群里聊的是过程和结论,它们互相引用却又互相孤立。真要把一个项目的完整上下文捞出来,你得同时打开五六个文件,脑内手动拼图。

第二个痛点是检索只能靠模糊记忆。飞书自带的搜索足够找文件名,但不够找“内容背后的含义”。如果你只记得“上个月讨论过一个关于权限设计的方案,但不知道放在哪个文档”,你只能在搜索框里反复试关键词。而且就算找到了,你拿到的是一堆原始材料,不是可以直接用的结论。

第三个痛点是跨项目复用几乎没有。同一个活动策划流程,这个项目做完下个项目又要重写一遍;同一个数据口径,市场部和运营部各有一套说法。知识沉淀在飞书里,但知识没有“长腿”,不会自己跑到新项目里去帮忙。

1.2 “蒸馏”在本文里的真实含义

“蒸馏”这个词最早让我想到的是酿酒和炼油,把混合物加热,让有用的成分蒸发再冷凝回收。放到AI领域,知识蒸馏是指用大模型教小模型,把能力压缩传递。但仓颉.Skill 2.5里的蒸馏,走的其实是另一条路:它不压缩模型,它提炼内容。

通俗地讲,蒸馏就是把飞书里的原始内容当成原料,经过“采集 - 清洗 - 结构化 - 封装”四步,输出一份可以直接交给AI工作台使用的Skill包。Skill包里通常包含三样东西:一是行为指令,告诉AI面对什么输入时应该怎么处理;二是参考语料,把飞书原始内容里最有价值的部分摘选出来;三是数据资产,比如多维表格里的结构化记录,转成JSON或CSV后随技能一起交付。

这样做的好处非常明显:以后你再遇到类似任务,不用去飞书里大海捞针,直接唤起对应的Skill,AI就会按照蒸馏时沉淀的规则和资料帮你处理。等于把飞书从“档案室”变成“生产线上的老师傅”。

1.3 为什么选WorkBuddy加仓颉.Skill这套组合

市面上能连飞书的AI工具不少,但大多数都绑定了云端服务、按调用次数收费,或者要求企业管理员开通付费权限。WorkBuddy的定位是本地化AI工作台,资料默认不出本地,跑起来成本极低。仓颉.Skill 2.5是适用于WorkBuddy平台的一个技能开发插件,它把“从飞书拉内容、清洗内容、生成Skill”这件事做成了向导式的流程,不需要你懂复杂的API编程。

我见过很多人卡在第一道门槛上:飞书开放平台的CLI权限是要单独申请的,而且通常只对企业版开放。仓颉.Skill 2.5的聪明之处是它不走CLI,只走飞书自建应用的云文档API和机器人API,这两类接口在免费额度内就能覆盖绝大多数“蒸馏内容”的需求。所以整套方案可以被“免费”两个字概括:工具免费、API免费、跑在本地不花token费用。

这套组合适合谁?适合每天被飞书绑架的运营、产品、项目经理、知识管理负责人,也适合想在本地搭一套个人AI知识库但不希望掏钱开会员的人。哪怕你完全不懂编程,只要会点鼠标、能看懂中文,就能照着下面的步骤把第一个Skill蒸馏出来。

2. 准备阶段:免费路径需要哪些组件

2.1 WorkBuddy的安装与基础配置

WorkBuddy官方提供了Windows、Linux、macOS三种安装包,我实测用的是Windows版,但原理都一样。下载安装包后一路下一步即可,唯一要注意的是安装路径不要带空格和中文,否则后面仓颉.Skill的Python环节容易出幺蛾子。

装完首次启动,它会问你工作目录放在哪。这里有个热词经常被搜到:“WorkBuddy系统缓存目录能改到D盘吗”。答案是可以,而且我强烈建议你改。以Windows为例,打开设置面板,找到“存储与缓存”,把缓存目录从C盘默认路径改到D盘某个专门目录。原因很简单:蒸馏过程中需要暂存飞书下载下来的原始文档和多维表格快照,这些内容动辄几百MB,如果一直堆在C盘,用不了几次就会把系统盘塞满。改完之后重启WorkBuddy,让配置生效。

接下来建议安装Python运行时。仓颉.Skill 2.5内部依赖Python执行清洗脚本,特别是处理表格和文本去重的时候。WorkBuddy自带了一个Python解释器,但我踩过坑:自带的版本可能偏老,导致某些依赖装不上。我后来直接用系统Python 3.10以上版本,然后在WorkBuddy里指定解释器路径,一路顺畅。

2.2 仓颉.Skill 2.5的获取和加载

仓颉.Skill 2.5本身是一个技能开发包,不是独立的软件。你可以从它的官方渠道下载zip包,解压之后会得到一个命名为cangjie_skill_2.5的文件夹。把整个文件夹放进WorkBuddy的skills目录,然后在WorkBuddy的技能管理界面点“扫描本地技能”,操作完成后,左侧技能列表里就会出现“仓颉.Skill 2.5”。

加载完成以后,建议先跑一下自带的“自检任务”来验证环境。自检会做三件事:检查能否访问common Gateway接口、检查Python清洗模块是否可用、检查本地磁盘写入权限。我遇到过一个情况:电脑上装了安全软件,把WorkBuddy对本地文件夹的写入给拦截了,导致自检一直报错。把WorkBuddy加入安全软件白名单,或者以管理员身份运行一次,问题就消失了。

在正式用之前,还要理解仓颉.Skill 2.5里的三个核心模块:内容采集器负责连接飞书并拉取数据;内容清洗器负责把文档里的噪声去掉,比如页眉页脚、重复段落、无意义的表情符号;技能装配器负责把清洗后的内容封装成Skill并生成一个小规模测试集。后面的蒸馏流程,实际上就是按顺序操作这三个模块。

2.3 飞书自建应用的免费接入:绕开CLI权限

很多人在折腾飞书API时,第一反应是去开通飞书开放平台的CLI权限。但CLI权限通常要企业管理员操作,还要审核、签协议,个人开发者很难拿到。仓颉.Skill 2.5通过飞书自建应用来绕过这个限制,而且全程免费。

操作路径:登录飞书开放平台后台,选择“企业自建应用”,创建一个应用。创建之后你就能拿到App ID和App Secret,这两个凭证是后面所有接口调用的敲门砖。然后进入“权限管理”,按需开通以下权限:读取云文档(包括文档内容和表格内容)、读取多维表格记录、读取群消息(仅限应用所在群的聊天记录)、发送消息(用于把蒸馏结果发回飞书)。这些都是基础权限,免费版就能开通,不需要额外付费。

开通权限之后,把应用发布到你的测试企业里。如果你的账号没有企业,可以创建一个人数少于100人的测试企业,飞书允许免费创建,审批也非常快。发布成功之后,在WorkBuddy的仓颉.Skill配置界面里填入App ID、App Secret,以及你的飞书User ID或部门ID,它会自动去换取访问令牌。

这里分享一个关键避坑经验:飞书的access_token分tenant_access_token和user_access_token,仓颉.Skill默认用的是tenant_access_token,也就是以应用身份读取,不需要用户扫码授权。这种方式覆盖了绝大多数文档读取场景。但如果你要读取“我收到的私聊消息”这类数据,必须走user_access_token,需要在飞书里完成一次用户授权。仓颉.Skill 2.5支持这个流程,在配置里切换认证方式为“用户身份”,然后它会弹出一个授权链接,用飞书扫码即可。免费额度足够你做日常蒸馏。

3. 核心实操:把飞书内容蒸馏成一个Skill的完整流程

3.1 在WorkBuddy中新建蒸馏任务

打开WorkBuddy,在仓颉.Skill 2.5面板里点击“新建蒸馏任务”。此时会出现一个任务向导,第一步是给任务起名字。我建议按“项目名+内容类型+用途”的格式来起,比如“官网改版需求文档蒸馏官网上线检查技能”,这样以后找起来一目了然。

第二步是配置数据源类型。仓颉.Skill 2.5支持四种数据源:云文档、电子表格、多维表格、消息记录。选错类型会导致后续解析失败,所以这里要特别留意。比如你目标是飞书“文档”里的正文内容,那就选云文档;如果是想要多维表格里的结构化数据,选多维表格;如果想分析群里大家讨论的过程和结论,选消息记录。

第三步是连接数据源。可以直接粘贴飞书链接,也可以在输入框里填入文档token。实际上飞书链接里通常就带着token,形如docs.feishu.cn/docx/xxxxxxxx,复制后面那段字符串即可。连接成功后,采集器会先拉取元数据,比如文档标题、目录、最近修改时间,先给你预览确认,避免拉错文件。

3.2 设置蒸馏参数:深度、格式、语言和去重

这一环节是整个蒸馏过程的核心,参数设置直接影响输出Skill的质量。仓颉.Skill 2.5提供四类关键参数。

深度分为浅层、中层、深层三档。浅层蒸馏只对原文做自动摘要,保留每个章节的关键句,适合会议纪要这类内容;中层蒸馏会提取关键概念、结论和行动项,并保留原文中的重要数字和引文,适合需求文档和方案类内容;深层蒸馏会把原文拆成知识条目,结合上下文重新组织语言,做到“读一份文档等于读十份整理后的笔记”,适合用来搭建知识库问答技能。参数选择逻辑很简单:内容越散、越需要逻辑重组,就选越深的档位;内容本身已经足够结构化,比如一份清单,浅层反而更保真。

格式选择决定蒸馏产物的存储结构。Markdown格式可读性最好,适合观感和后续人工编辑;JSON格式适合程序调用;CSV格式最适配表格型数据。如果你想做一个既能查数据又能解释规则的混合型Skill,我建议选Markdown加配套JSON双输出。

语言设置指的是“蒸馏时以什么语言输出”。如果你的飞书文档是中英混杂,可以选择“中文优先”,清洗器会把英文术语保留但用中文解释一遍,或者直接保留原始语言。一般场景下选“跟随原文”最省事。

去重开关默认开启,强烈建议保持开启。飞书同一个内容往往会在多个文档里重复出现,比如同一个会议结论被写了三次。去重会基于语义相似度剔除重复段落,但要注意:它会保留第一次出现的内容,如果最早的版本已经被后来修改,可能会造成信息滞后。所以我在做重复内容比较时需要人工确认一次,不过大部分场景下默认策略够用。

3.3 运行蒸馏并预览中间产物

确认参数后点击“开始蒸馏”。此时仓颉.Skill 2.5会先在本地把飞书内容拉取下来,然后进入清洗阶段。这个过程不需要联网调用云端大模型,所以不产生API费用。你可以在界面上看到实时日志,包括“解析文档结构”“移除页眉”“合并重复段落”“提取表格数据”等步骤。

清洗完成之后会进入“预览中间语料”页面。中间语料就是完成清洗但还没封装成Skill的半成品,你应该花几分钟扫一遍。重点检查:有没有重要段落被误删?表格里的数据有没有错位?原文档中的图片是否已经被替换成占位说明?仓颉.Skill对图片的处理默认是提取图片下方的标题和上下文文字,并不会保存图片本身,这会导致一些以图为主的解说文档变得残缺。我的经验是,在蒸馏前先对源文档做一次人工整理,把重要的图和表补充说明文字,这样蒸馏出的结果更完整。

如果发现清洗结果不理想,可以直接在预览页面对中间语料微调,比如手动拖回被删除的段落,或者重新划分章节。然后再进入下一步。

3.4 生成Skill包:schema、指令集、测试集

中间语料确认后,点击“生成技能包”。仓颉.Skill 2.5会自动完成三件事:第一,生成技能描述文件schema,给Skill起名、写简介、定义输入输出参数;第二,生成行为指令集prompt,告诉WorkBuddy当前技能应该在什么时机被调用、按什么规则回答;第三,生成一个微型测试集,包含5到10条典型问题和预期答案,用于验证技能效果。

生成之后,WorkBuddy会要求你选择技能保存位置。我建议统一放到D:\WorkBuddy\skills\my_skills下,和仓颉.Skill分开存,方便备份和分享。保存完成后,这个Skill会立即出现在WorkBuddy的技能列表里,你可以直接对话测试。

举个例子:刚才蒸馏官网改版需求文档时,生成的技能叫“官网改版上线检查”。我测试时输入“我需要一份上线前的检查清单”,技能立刻调出了蒸馏时沉淀的checklist和验收标准,而不是泛泛地给我百度式的回答。这种“回答有出处、有依据”的感觉,就是蒸馏带来的最大价值。

注:如果你后续希望把Skill分享给同事,直接把整个文件夹压缩发过去即可。对方只需要在WorkBuddy里导入,不需要重新连接飞书。这也意味着,授权账号一旦过期,蒸馏好的Skill仍可长期使用,这也是本地蒸馏的核心优势之一。

4. 三个真实场景的蒸馏实验

4.1 实验一:产品需求文档蒸馏为需求分析技能

第一个实验我用了一份20页的产品需求文档。这份文档包含背景、用户故事、功能清单、交互说明、埋点需求、排期计划。放在飞书里就是一篇很长的云文档,真要写一个新功能时,关联人员往往要重新翻一遍。

参数设置:数据源选云文档,蒸馏深度选“深层”,输出格式选“Markdown + JSON”,语言跟随原文,去重开启。整个蒸馏过程大约耗时40秒,中间清洗阶段把文档里大量重复的“用户点击后跳转”这类交互描述合并成了统一的规则表述,这个细节我很满意。

生成出的Skill被命名为“需求分析助手”。我试了几个问题:帮我把埋点需求按页面维度整理成表格;这个功能的核心用户流程是什么;和上一个版本相比有哪些改动点。Skill都能从蒸馏语料中定位到对应章节并给出带原文引用的回答。相比让大模型直接读整篇PDF,这个Skill的回答更快、更聚焦,因为它已经把指标定义、涉众边界、历史变更都提炼好了。

4.2 实验二:多维表格蒸馏为数据查询技能

飞书多维表格是一个很神奇的存在,既能存数据又能做视图,但数据分析能力有限。我有一个小组长期用多维表格维护客户信息,里面包含客户名称、行业、阶段、最近联系时间、备注,大约几百条记录。

我的蒸馏目标是做一个“客户数据问答”技能。数据源选“多维表格”,蒸馏深度选“浅层”,输出格式选“CSV + Markdown”。因为多维表格本身已经是结构化的,不需要深层重写,浅层蒸馏保留原始记录即可,怕的是把结构化数据搞乱。

执行后,仓颉.Skill 2.5把多维表格导出成CSV,同时根据字段名和样例记录自动生成了字段说明Markdown,比如“阶段字段包含A/B/C三类,分别代表初步接洽、方案确认、签约完成”。最终生成的Skill可以这样用:输入“帮我筛选出这个季度新增的A阶段客户”,它会先调用CSV数据资产做筛选,再用字段说明解释结果。整个过程不需要写SQL,也不需要把数据导出去其他地方。

这里有个需要注意的地方:多维表格的数据量如果超过几千行,免费API拉取会有分页限制,仓颉.Skill 2.5默认一次最多拉取1000行,超过部分需要开启“分批拉取”开关。这个开关在数据源配置页的最底部,默认关闭,我一开始没注意,导致只拿到第一页数据,后来打开开关才补齐。所以在蒸馏之前,先去多维表格右下角看看总行数,超过印象值就记得开启分批拉取。

4.3 实验三:项目群消息蒸馏为周报生成技能

第三个实验是很多人问到的:能不能把群聊记录蒸馏成周报生成工具。我把一个项目群最近一个月的消息作为数据源,深度选“中层”,格式选“Markdown”,目的不是逐句保留对话,而是把讨论中冒出来的决定、问题、下一步行动提取出来。

仓颉.Skill 2.5对消息记录的处理比较特殊:它不是按时间顺序输出全文,而是先做聚类,把同一主题的消息归到一起,再从每个主题里提取结论和待办。清洗阶段会把大量“收到”“+1”“表情回复”这类水消息自动过滤掉。最终生成的Skill内置了周报模板,会自动按项目进展、风险、资源协调、下周计划四个板块组织内容。

我测试的时候输入“帮我生成这周的周报”,它先读取本周新增的消息集,蒸馏之后按模板输出了一版草稿。草稿里居然能准确写出“周三确认了官网文案最终版”这种关键节点,因为消息聚类已经把散落在不同时间线的相关消息串起来了。这个效果是我预期之外的,也是我认为最有惊喜的一个场景。

5. 常见问题与排查技巧实录

以下问题都是我在实操中真实遇到过的,整理成速查表,遇到同样报错可以直接照着查。

现象原因解决办法
蒸馏时报“权限不足”飞书应用未开通对应权限或版本不支持回到飞书开放平台,在权限管理里逐项加上“读取云文档”“读取多维表格记录”,发布新版本应用后刷新重试
多维表格数据为空未开启分批拉取,或表格锁定了视图权限数据源配置里打开“分批拉取”;另外确认应用账号对该表格有至少“可阅读”权限
文档里的图片全部丢失仓颉.Skill默认不提取图片二进制在文档里给图片增加说明文字后重新蒸馏;或使用“保存原图”选项(需要额外磁盘空间)
蒸馏出的内容太碎、不成体系深层蒸馏参数被设置成了浅层调整蒸馏深度为“深层”,并开启“自动章节合并”,让清洗器按文档目录重组内容
生成的Skill回答不着边际测试集覆盖不足在技能包生成时增加5条以上与业务强相关的问题,能让后续调用更稳定
WorkBuddy缓存目录无法修改权限不足或没有重启用管理员身份运行WorkBuddy,在设置里改路径后必须重启进程
Linux下安装后Python模块找不到系统Python与WorkBuddy自带解释器冲突在WorkBuddy设置里手动指定Python解释器,并以绝对路径安装requirements依赖

这里再补充两个细节。第一个是飞书“没有CLI权限”并不可怕,因为仓颉.Skill自带的常用接口不需要CLI;但是如果报错信息明确提示“接口调用需要应用具备更高版本能力”,那大概率是权限枚举里有些选项只针对特定api版本,此时可以把读取方式从“以应用身份”切换成“以用户身份”,往往能绕过版本限制。第二个细节是关于token过期。tenant_access_token的有效期一般是两小时,WorkBuddy会在后台自动刷新,但如果你手工改过系统时间,会导致刷新触发失败,报出“token expired”。遇到这种情况,点一次“重新连接飞书”即可。

关于蒸馏任务重复运行的问题:如果源文档发生了小改动,你不需要重新创建任务,直接在技能列表里右键对应Skill,选择“增量更新”,仓颉.Skill会对比上次语料和当前内容的差异,只清洗新增部分。我通常每周对重要项目做一次增量更新,既保证技能不过时,又避免浪费时间处理同样的全文。

6. 蒸馏过程中必须守住的三条红线

6.1 只蒸馏你本人有权访问的内容

飞书开放平台应用一旦获得权限,理论上可以读取应用可见范围内的大量文档。但权限大不等于可以乱用。我给自己定下的规则是:只蒸馏本人创建、本人参与或应用所在团队明确授权的内容。特别是群消息,我只会去蒸馏自己作为成员或管理员的群,绝不尝试通过admin权限去拉取其他私密群的消息。这里不仅是合规问题,也是职业道德问题。

6.2 涉密和非公开数据不要进本地技能包

虽然WorkBuddy是本地运行,但蒸馏后的Skill文件夹如果被分享出去,里面的数据资产也会跟着走。我建议在分享Skill之前,用仓颉.Skill的“脱敏清洗”功能把手机号、身份证、银行卡、内部系统链接通通替换成占位符。这个功能在生成技能包之前有一个“敏感信息过滤”开关,默认是开启的,但默认规则比较简单,建议自己再加几条正则规则。尤其是飞书多维表格里的客户数据,脱敏清洗之后再生成CSV,不然一个不小心散出去就是事故。

6.3 不要完全依赖蒸馏结果做重大决策

蒸馏出的Skill本质上是对原始内容的提炼加工,加工过程可能出现信息损耗。我见过有人拿着蒸馏后的技能包直接去做报价决策,结果因为源文档中一个关键前提被清洗器误删,导致报价基准完全错误。所以我的习惯是:重大决策前,重要数据一定回源文档二次核对。蒸馏是为了加速信息获取,不是为了替代原始事实。

7. 最后一公里:WorkBuddy + 仓颉.Skill后续还能怎么玩

跑通基础蒸馏流程之后,我开始琢磨几个进阶玩法。第一个是“层级蒸馏”:先蒸馏出项目核心文档,生成一个“项目概述技能”,再蒸馏多个子文档,生成“技术方案技能”“排期管理技能”等,最后用一个汇总Skill把这些子技能全部挂载进去。这样WorkBuddy就能根据用户问题自动路由到对应子技能,而不是把所有语料都塞进一个大而全的Skill里。

第二个玩法是把蒸馏和飞书机器人打通。仓颉.Skill 2.5支持生成“机器人消息卡片”,你可以让蒸馏后的Skill在WorkBuddy里跑出一个结果,再通过飞书机器人发送到群里。比如每周五上午,我配置了一个定时任务:自动蒸馏本周新增群消息,生成周报草稿,然后通过飞书机器人把周报推送到项目群。群里同事看到的是一张结构清晰的卡片,完全不知道它背后走了一条“飞书 -> 本地蒸馏 -> 飞书”的循环链路。

第三个玩法是跨团队分发技能包。我们把“活动复盘模板”和“发布会准备清单”蒸馏成Skill包以后,直接用企业内网盘发给其他小组,他们导入WorkBuddy就能用,不需要再共享飞书文档权限。这样既减少了跨团队的沟通成本,也让那些经验真正沉淀成了可复制的资产。

说到这,我必须再夸一下免费这件事。整套流程里,我没有开通任何飞书付费项目,没有使用云端大模型计费接口,WorkBuddy和仓颉.Skill 2.5都是免费下载使用。唯一的硬性成本是一台能运行WorkBuddy的电脑,以及偶尔手动维护数据源的时间。当然,免费也意味着自定义能力有限,如果你想在蒸馏规则上做深度定制,还是得自己改一点Python代码,不过这是后话了。

最后分享一个我非常受用的小技巧:每次蒸馏完一个Skill,我都会在旁边放一个README.md,里面记录这次蒸馏的时间、源文档链接、蒸馏参数和我手动修正过的内容。这个习惯看起来有点“笨”,但当半年后回来看某个技能包时,你还能清楚地知道它的“原料”是谁、加工深度是多少、哪些地方被人工干预过。这种可追溯性,在知识越多越杂的时候越显得珍贵。希望这套免费蒸馏的玩法能帮你把飞书里的内容真正盘活。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询