Sparks ✲
real_kai42
Kai
@real_kai42

一个有趣的提取文章中 tags 的流程

首先,将文章切割成 1000 字每块,200 字 overlap 的块,然后从中均匀采样 5 块

对每块使用 llm 去分析出 5 个可能的标签,且对每个标签与原文的相关度进行打分。prompt 中 强调 “这是一篇文章中的切片,你需要根据你的经验去推测适合整篇文章的标签”

然后,五块采样,一共会获得 25 个标签及打分。进行合并操作,如果两个标签完全相同,则得分取平均值。合并完后,取得分最高的前五个标签。

对原文进行均匀采样,且可以根据需求动态调整采样数,来节约 token 数 让 llm 打分,来量化的找到最合适的 tag 所有请求都是并发的,跟单次请求耗时一致

当然这个效果到底能比其他方式好多少,会之后通过实验来测试,并进行定量分析。 prompt 是有 “玄学” 部分,但我们可以量化的 LLM ops 来验证我们这些 “灵光一闪” 的 prompt tricks 是否有效

这个操作基于我之前的一个想法

我们正常的压缩是站在计算机和信息论的角度,也就是从数据角度来讨论 无损和有损压缩,整个过程中只处理数据,不存在类人的 认知和理解

但,随着模型的知识和理解能力的提高,我们是否可以从 认知角度去理解压缩这件事。例如跟模型说 “美国 全名” 就会获得 “美利坚合众国”,在这个过程中,是有模型的认识和理解参与进来,而不是单纯从数据角度

那进一步,人类语言中的冗余部分是很多的,信息密度并不高,我们可以假设其中 40% 的字符量输入给 AI,AI 就能理解原文 95% 的含义,这个理解过程是掺杂了 AI 对 “人类常识” 的预先了解。

在这个理解的基础上,用抽样提取标签只是非常小的一个 demo,是想尝试让 AI 去 “从文章切片去推测整篇文章可能的标签”,让 AI 去进行合理脑补,来用小的信息输入 + AI 预先掌握的常识,来获得更好的效果。 如果这个想法是对的,我觉得是会有更好玩的落地场景出来

Image 1Image 2
real_kai42
Kai
@real_kai42

一点小感受,AI 取代人类工作的一个关键点在于,这个工作是否是容易 测试/评价/获得反馈的

例如,CRUD 的任务,就容易取代,因为任务清晰,容易测试,并且可以根据测试和的结果进行迭代,实现方法也比较套路化了。 类似 typeChat 也是类似的思路,把一些面向 AI 的任务用 AI 好理解的方式进行编码,且在 AI 出错的时候,也能提供 AI 容易理解的报错信息。

而交互、UI 这些不容易被 AI 取代。虽然我现在 UI 大部分也是 AI 写,但测试需要我自己去运行 + 调试一下,再手动反馈给 AI。

两者核心的区别在于,评价和测试 UI 的是人类,而评价和测试 API 可以是机器

real_kai42
Kai
@real_kai42

之前还在做可视化的时候,工业界有两个 team 一个 team 做面向数据分析师的工具 另一个 team 说,国内没有数据分析师的群体和土壤,他们认为核心的使用场景,就是你心里已经有了关于数据的 insights,只是希望用工具更好的把这个 insights 展示出来

所以他们的产品就是把数据,用非常炫酷的可视化展示出来,面向的就是汇报的场景,越炫酷越好

real_kai42
Kai
@real_kai42

读书做可视化相关研究时,主要的思路就是: 算法是不能做到 100% 正确率的,那就用算法做初筛,把值得关注的数据点用更高质量的可视化工具展示出来,然后由人类进行详细的分析,最终发现需要进一步处理的异常点。

以散点图寻找聚集区域为例,在巨大的数据量中由人类观察就是低效的。先有算法找到可疑的区域,再用可视化的密度图等方式叠加一个图层上去,让人类进一步分析和标记,就能在正确率和效率中取得平衡。

Github copilot/ any-copilot 都是类似的思路,工具化的 gpt 应该是未来。由 AI 给出 一个/多个 可能的解决方案,然后由人类选择并继续优化,也能作为数据反馈给训练数据

real_kai42
Kai
@real_kai42

有个 idea,能否把 prompt 结构化 例如,分成 角色-信息-任务-提示-其他,四个模块

角色:你是一个 xxx 信息:下面是关于 xxx 的信息 任务:你的任务是提取 xxx 提示:如果遇到 xx,可以返回 NAN 其他:无

结构内部可以用 LLM 合成 例如拖动 ‘严谨’ 和 ‘增强能力’ tag 到 角色 结构区,就可以给现有的角色增加 “你是一个严谨的 xx,你每次输出前会认真思考”。 不是单纯用字符串拼接进行合成,而是用 LLM 进行语义化合成

也可以拖动一些 tricks 进 其他 区,例如:“这对我很重要” “快到 ddl 了” “如果你做的好,我会给我 10 刀 tips”,依旧是 LLM 语义化合成

感觉交互和动画可以做的很有意思