AI需要明确的信息
AI 需要明确的信息
它擅长什么、为什么、边界在哪
背景:AI 写代码这类「明确、定义清楚」的活又快又稳,碰到模糊的事就时灵时不灵。 疑问:它擅长的到底是「编程」,还是背后更一般的东西?本质是什么?该把任务改成什么样?边界又在哪?
论点:AI 不真创新,只是在「它的内嵌空间」和「你的要求」之间取一个最优中点。要求越明确,中点越被拉到你要的那个点上——这就是它为什么需要明确的信息;而当要求拴不上、残差扛不住、或样本不够密时,中点拉不动,那就是它的边界
一、AI 擅长「明确、定义类」的问题——代码是典型
- 在明确、定义清楚的活上,AI 又快又稳;越模糊越时灵时不灵
- 代码是把「明确」推到极致的场景,所以成了它的主场
- 但要追问的是本质:它真正擅长的是「明确」这件事,编程只是最足的例子
二、代码为什么这么「明确」
- 天生严格、非常具体——每个符号意思唯一,没有「看语气」的余地
- 信息层级比自然语言低,所有信息都是字面的——写什么就是什么,不用读言外之意
- 因为是给机器和人类高度维护的,所以天然设计合理、不含很复杂的信息——看不懂的早被改掉了
- 反例是汇编:信息层级高,就难看懂了
补充(我编的例子):同一段「求和」,三种写法
① 高级代码——意图写在脸上,要补的隐含信息为 0:
int sum(int *a, int n) {
int total = 0;
for (int i = 0; i < n; i++) total += a[i];
return total;
}
② 汇编——一样严格、一样字面,但「在求和」被编译没了:
sub_4011a0:
xor eax, eax
xor ecx, ecx
test esi, esi
jle loc_4011b8
loc_4011ac:
add eax, [rdi + rcx*4]
inc ecx
cmp ecx, esi
jl loc_4011ac
loc_4011b8:
ret
rdi 是数组、eax 是累加器、*4 说明是 int、整段是个求和循环——全得从寄存器和调用约定里倒推。
③ 反编译器吐出来的——名字是它编的(param_1、iVar1),逆向工程的本质就是猜意图。
补充:这个例子证明了什么
-
严格 ≠ 低层级:汇编严格得要命照样难懂——难懂不来自严格,来自「意图在不在面上」
严格(符号意思唯一) 意图在不在面上 高级代码 是 在 → 低层级 汇编 是 被编译没了 → 高层级 自然语言 否 藏在言外 → 高层级 -
编译「代码→汇编」不用猜,却销毁了意图;反编译「汇编→意图」要猜——高层级 = 信息被销毁、得靠猜补回来
-
代码天生低层级,是「有人非得读它」筛出来的;没人维护的生成代码、混淆代码,照样能高到像汇编
三、本质:AI 只是在「内嵌空间」和「你的要求」之间取最优中点
- LLM 不具有真正的创新,只是在内嵌的空间和你的要求之间取一个最优中点
- 这不代表它没有智能——只是需要更复杂一点的状态表示和计算过程
补充:你那张涂鸦,逐行解读
无提示 | | 输出 |AAABBBCCCDDDEEE|
提示 | | | | | 输出 |AAA|AAA|AAA|AAA|
提示 | | | 输出 |AAABBBC|AAABBBC|
提示 | | 输出 |ABCDE|
-
无提示 →
AAABBBCCCDDDEEE:没有约束,中点回落到内嵌空间的中心,吐出大块大块的均质默认 -
约束变密 → 中点被切细、被往「要求」那边拉
-
约束细到位 →
ABCDE:中点正落在你要的精确目标上 -
一句话:输出不是它凭空造的,是「它的中心」被「你的约束」拉出来的
四、推论:所以 AI 需要明确的信息
- 你的「要求」就是把中点往你这边拉的绳——每多一个明确约束,中点就更贴你的真实意图一点
- 不给够要求,中点必然滑回内嵌空间中心,而那中心几乎不可能恰好是你要的点——所以「明确信息」不是可有可无,是结构决定的
补充:两个副产品 + 这跟代码无关
-
偏:中点一松手就回到「所有人的平均」,不是你的特例
-
飘:约束松时「符合要求」的是一小片、不是一个点,落哪看措辞和运气;约束收紧才缩成一个点、才稳
-
换成完全不是代码的活,规律一模一样——只看「要求明不明确」,不看「是不是编程」:
要求明确(中点拉得准) 要求含糊(中点滑回平均) 填字段写明的表格 从「随便弄弄」里猜你要啥 按术语表翻译手册 翻一首全靠言外之意的诗 发票按金额日期归类 判断邮件是不是在阴阳怪气 条件给全的数学题 「公司该不该转型」
五、那就把任务改成「要求明确」的样子
-
把中点拉到你要的地方:内容、结构、状态,三样都别留给它自己填
- 内容:你觉得「不言自明」的,全写到字面上
- 结构:现成的提纲、接口、目录摆出来;复杂的先拆好、起名再交
- 状态:每步该用的重新摆到眼前,别指望它在长对话里自己记
-
兜住中点的残差(它永远不是 100%)
- 切小步、每步当场验,错就停在这步——补充:意思一层叠一层时错会相乘(每步九成五、叠二十步只剩三成六),切开就不会
- 接口说死、中间结果落到纸面,坏了一眼看出是哪步
- 补充(最要紧):字面的错一眼能验,藏在层里的错验起来跟重做一样贵、于是没人查——所以 AI 最危险的产出,是「看着对、能跑」的那种
六、AI 的边界——中点拉不动、或不够用的地方
你把根本原因记成两条:「准确率 99 和 90」「任务的抽象等级和样本数量的对比」。顺中点模型看,是三道闸:
-
第一道·绳拴不拴得上:答案要么只在你脑里是个「一看就知道对」的手感(品味)、写不成约束;要么压根还没成形(战略、对没定数局面的判断)、没有点可拴。拴不上,中点停在中心,「说得更明白」也救不了
-
第二道·任务容不容忍残差(你的「99 vs 90」):中点不是精确命中、总有残差
- 成:作词、作诗、各种视频/图像的创作与修改(关羽弹吉他、刘备拿麦克风、名人虚构照片)——90% 就够,错点无所谓甚至有趣
- 不成:自动驾驶、人形机器人服务人类——90% 是灾难,99% 都不够
- 这道闸不看「AI 会不会」,看「任务容不容错」
-
第三道·样本够不够密(你的「抽象等级 vs 样本量」):中点准不准,看你这个点附近学得密不密
- 抽象低 + 样本多(代码、常见文案)→ 插得准
- 抽象高 + 样本稀(独有的判断、长尾专业)→ 从老远硬插、残差大
- 不确定·VLA:理论可行,但端到端对数据量/算力要求极高(视觉给全信息、语言作决策中心、执行器把语言翻成运动控制)——就是那片空间还没填密、中点还插不准
-
合起来:能不能交给 AI = 三道闸的交集;而「明确信息」只开得了第一道,第二、三道(容错、样本密度)不是你一句话能改的
- 补充(为什么第三种是「天生」边界):汇编还能反编译,因为意图曾经存在;战略反编译不了,因为答案压根不存在——所以这条边界不随模型变强而后退,该由人扛,要担责的也是人
所以,怎么用好 AI?
别问「这活是不是编程」,问「我能不能把要求说明白」。说得明白、拆得清楚、每步验得了,中点就落在你要的地方;剩下那些拴不上绳、或零容错、或没样本的,自己接过来。
No comments to display
No comments to display