
我是那种会纠结最佳实践的人,即使是无关紧要的事,记得在巨硬实习的时候,需要用 win,我问 mentor “你们一把会把代码存在哪个目录” ,感觉 mentor 看我像傻子 hhh
因为 mac 选手一般是 /Users/<user_name>/Developer,mac 甚至会给这个文件夹自动改图标
而且我估计很多实习生会像我一样,很多傻傻的问题不好意思问,怕露怯 但有了 copilot 真的不一样了,你甚至可以问 “一般命名习惯” “帮我起个变量名” “一般放在哪个文件夹”,这种 约定俗成,但又不好查到文档和问前辈的问题


一个有趣的提取文章中 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 预先掌握的常识,来获得更好的效果。 如果这个想法是对的,我觉得是会有更好玩的落地场景出来



一点小感受,AI 取代人类工作的一个关键点在于,这个工作是否是容易 测试/评价/获得反馈的
例如,CRUD 的任务,就容易取代,因为任务清晰,容易测试,并且可以根据测试和的结果进行迭代,实现方法也比较套路化了。 类似 typeChat 也是类似的思路,把一些面向 AI 的任务用 AI 好理解的方式进行编码,且在 AI 出错的时候,也能提供 AI 容易理解的报错信息。
而交互、UI 这些不容易被 AI 取代。虽然我现在 UI 大部分也是 AI 写,但测试需要我自己去运行 + 调试一下,再手动反馈给 AI。
两者核心的区别在于,评价和测试 UI 的是人类,而评价和测试 API 可以是机器

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

读书做可视化相关研究时,主要的思路就是: 算法是不能做到 100% 正确率的,那就用算法做初筛,把值得关注的数据点用更高质量的可视化工具展示出来,然后由人类进行详细的分析,最终发现需要进一步处理的异常点。
以散点图寻找聚集区域为例,在巨大的数据量中由人类观察就是低效的。先有算法找到可疑的区域,再用可视化的密度图等方式叠加一个图层上去,让人类进一步分析和标记,就能在正确率和效率中取得平衡。
Github copilot/ any-copilot 都是类似的思路,工具化的 gpt 应该是未来。由 AI 给出 一个/多个 可能的解决方案,然后由人类选择并继续优化,也能作为数据反馈给训练数据