Skip to main content

AI需要明确的信息

AI 需要明确的信息

它擅长什么、为什么、边界在哪

背景:AI 写代码这类「明确、定义清楚」的活又快又稳,碰到模糊的事就时灵时不灵。 疑问:它擅长的到底是「编程」,还是背后更一般的东西?本质是什么?该把任务改成什么样?边界又在哪?

论点:AI 不真创新,只是在「它的内嵌空间」和「你的要求」之间取一个最优中点。要求越明确,中点越被拉到你要的那个点上——这就是它为什么需要明确的信息;而当要求拴不上、残差扛不住、或样本不够密时,中点拉不动,那就是它的边界

一、AI 擅长「明确、定义类」的问题——代码是典型

  1. 在明确、定义清楚的活上,AI 又快又稳;越模糊越时灵时不灵
  2. 代码是把「明确」推到极致的场景,所以成了它的主场
  3. 但要追问的是本质:它真正擅长的是「明确」这件事,编程只是最足的例子

二、代码为什么这么「明确」

  1. 天生严格、非常具体——每个符号意思唯一,没有「看语气」的余地
  2. 信息层级比自然语言低,所有信息都是字面的——写什么就是什么,不用读言外之意
  3. 因为是给机器和人类高度维护的,所以天然设计合理、不含很复杂的信息——看不懂的早被改掉了
  4. 反例是汇编:信息层级高,就难看懂了

补充(我编的例子):同一段「求和」,三种写法

① 高级代码——意图写在脸上,要补的隐含信息为 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_1iVar1),逆向工程的本质就是猜意图。

补充:这个例子证明了什么

  1. 严格 ≠ 低层级:汇编严格得要命照样难懂——难懂不来自严格,来自「意图在不在面上」


    严格(符号意思唯一) 意图在不在面上
    高级代码 在 → 低层级
    汇编 被编译没了 → 高层级
    自然语言 藏在言外 → 高层级
  2. 编译「代码→汇编」不用猜,却销毁了意图;反编译「汇编→意图」要猜——高层级 = 信息被销毁、得靠猜补回来

  3. 代码天生低层级,是「有人非得读它」筛出来的;没人维护的生成代码、混淆代码,照样能高到像汇编

三、本质:AI 只是在「内嵌空间」和「你的要求」之间取最优中点

  1. LLM 不具有真正的创新,只是在内嵌的空间和你的要求之间取一个最优中点
  2. 这不代表它没有智能——只是需要更复杂一点的状态表示和计算过程

补充:你那张涂鸦,逐行解读

无提示   |               |   输出 |AAABBBCCCDDDEEE|
提示     |   |   |   |   |   输出 |AAA|AAA|AAA|AAA|
提示     |       |       |   输出 |AAABBBC|AAABBBC|
提示     |     |             输出 |ABCDE|
  • 无提示 → AAABBBCCCDDDEEE:没有约束,中点回落到内嵌空间的中心,吐出大块大块的均质默认

  • 约束变密 → 中点被切细、被往「要求」那边拉

  • 约束细到位 → ABCDE:中点正落在你要的精确目标上

  • 一句话:输出不是它凭空造的,是「它的中心」被「你的约束」拉出来的

四、推论:所以 AI 需要明确的信息

  1. 你的「要求」就是把中点往你这边拉的——每多一个明确约束,中点就更贴你的真实意图一点
  2. 不给够要求,中点必然滑回内嵌空间中心,而那中心几乎不可能恰好是你要的点——所以「明确信息」不是可有可无,是结构决定的

补充:两个副产品 + 这跟代码无关

  • :中点一松手就回到「所有人的平均」,不是你的特例

  • :约束松时「符合要求」的是一小片、不是一个点,落哪看措辞和运气;约束收紧才缩成一个点、才稳

  • 换成完全不是代码的活,规律一模一样——只看「要求明不明确」,不看「是不是编程」:

    要求明确(中点拉得准) 要求含糊(中点滑回平均)
    填字段写明的表格 从「随便弄弄」里猜你要啥
    按术语表翻译手册 翻一首全靠言外之意的诗
    发票按金额日期归类 判断邮件是不是在阴阳怪气
    条件给全的数学题 「公司该不该转型」

五、那就把任务改成「要求明确」的样子

  1. 把中点拉到你要的地方:内容、结构、状态,三样都别留给它自己填

    1. 内容:你觉得「不言自明」的,全写到字面上
    2. 结构:现成的提纲、接口、目录摆出来;复杂的先拆好、起名再交
    3. 状态:每步该用的重新摆到眼前,别指望它在长对话里自己记
  2. 兜住中点的残差(它永远不是 100%)

    1. 切小步、每步当场验,错就停在这步——补充:意思一层叠一层时错会相乘(每步九成五、叠二十步只剩三成六),切开就不会
    2. 接口说死、中间结果落到纸面,坏了一眼看出是哪步
    3. 补充(最要紧):字面的错一眼能验,藏在层里的错验起来跟重做一样贵、于是没人查——所以 AI 最危险的产出,是「看着对、能跑」的那种

六、AI 的边界——中点拉不动、或不够用的地方

你把根本原因记成两条:「准确率 99 和 90」「任务的抽象等级和样本数量的对比」。顺中点模型看,是三道闸:

  1. 第一道·绳拴不拴得上:答案要么只在你脑里是个「一看就知道对」的手感(品味)、写不成约束;要么压根还没成形(战略、对没定数局面的判断)、没有点可拴。拴不上,中点停在中心,「说得更明白」也救不了

  2. 第二道·任务容不容忍残差(你的「99 vs 90」):中点不是精确命中、总有残差

    1. :作词、作诗、各种视频/图像的创作与修改(关羽弹吉他、刘备拿麦克风、名人虚构照片)——90% 就够,错点无所谓甚至有趣
    2. 不成:自动驾驶、人形机器人服务人类——90% 是灾难,99% 都不够
    3. 这道闸不看「AI 会不会」,看「任务容不容错」
  3. 第三道·样本够不够密(你的「抽象等级 vs 样本量」):中点准不准,看你这个点附近学得密不密

    1. 抽象低 + 样本多(代码、常见文案)→ 插得准
    2. 抽象高 + 样本稀(独有的判断、长尾专业)→ 从老远硬插、残差大
    3. 不确定·VLA:理论可行,但端到端对数据量/算力要求极高(视觉给全信息、语言作决策中心、执行器把语言翻成运动控制)——就是那片空间还没填密、中点还插不准
  4. 合起来:能不能交给 AI = 三道闸的交集;而「明确信息」只开得了第一道,第二、三道(容错、样本密度)不是你一句话能改的

    1. 补充(为什么第三种是「天生」边界):汇编还能反编译,因为意图曾经存在;战略反编译不了,因为答案压根不存在——所以这条边界不随模型变强而后退,该由人扛,要担责的也是人

所以,怎么用好 AI?

别问「这活是不是编程」,问「我能不能把要求说明白」。说得明白、拆得清楚、每步验得了,中点就落在你要的地方;剩下那些拴不上绳、或零容错、或没样本的,自己接过来。