最近lmarena也全面下线了opus 4.x high的模型使用。感谢claude对三方的封禁,让我开始正视没有它强的模型。虽然还是可以用,但是opus已经不是以前一个loop可以跑50M token而且才用quota的约0.2%的opus了,我估计一次20M token的使用就能用完quota。
先总结一下,claude的模型在coding上确实已经形成了代差,已经很领先了,看上去elo什么测评分数差不多,那些都是考试分数,实际上在复杂问题的解决上,claude有更好的表现。从直觉上讲,它的训练在对齐上感觉特别讲究,数据涉及了更多的任务分解。
我们再来看看arena上排老二的gemini。这几天的尝试,发现gemini一直特别"懒",一大串小作文下来,它就给你做个简单的事情,然后剩下的一堆就开始给你todo,pass了。这开始让人很恼火,claude瞬间就猜出你的用意然后吭哧吭哧做起来了,怎么这玩意在那里打转?
但是冷静下来思考,人家毕竟是arena上考试第二的模型,到底是模型的问题还是我用的问题?模型的代差一定是有的,这个不可否认。但是如何在这种情况下发挥它的实力?之前用gemini看bug的时候,感觉它还是不错的,至少在给出bug的描述,并且让它给出command我去运行再给结果,在十几轮的聊天中它的context相当稳定,比国内的所有模型都稳定(至少免费使用的情况下是),大量文字处理加上cause chain然后到log file,log line,timeline最后都能准确找到。所以那个时候能看出gemini其实有自己的专长。
突然灵光一现,难道说gemini的训练中是按照conversation来的?就是你一言我一语,所以它要处理问题就是要不停和它交互?看bug就是它不停列出command,我不停运行然后给结果,有时候它列得比较乱的时候让它总结一下timeline就立刻能继续,并检查哪里有问题,再推进debug的进程,所以代差估计在这里了。于是我尝试了一下这种方法。因为如果我要用小模型的情况,我需要很细致列出任务细节,如果要产生代码,可能需要细到if for里写什么。根据这个原则,gemini只要告诉它任务的大致细节,不清楚的和它交互一下,它其实也就没有那么难用了。
因为每次gemini都是一点一点挤牙膏式干活,于是就专门让它写了个server,每次做完了,让它执行 curl http://127.0.0.1:9090/api/v1/item/<id>/next 让它拿取下一个部分,并且如果这个部分是处于需要plan的状态,还需要继续生成子任务,然后curl next就会拿到plan好的子任务。这样的效果还是不错的。这让我对小模型能胜任复杂任务更有信心了。
其实LLM说穿了就是,知识在不在模型参数里,如果不在,如果能力足够了,那么如何用外部知识,去执行复杂任务。claude其实已经做过了,就是它想把所有任务都封装在一个模型里,其实这个最终结果是电力够不够算力够不够的问题,如果不够,问题复杂度无上限,它的解决问题能力就有上届,这很明显,其实claude问题也很多,在处理更复杂的问题它也是会打转,只能说如果给一个工人使用,那是UX刚刚的,但是对于探索世界来说完全不够。之前用claude写的workflow,actor其实都没有达到很好的效果,对于小模型claude并不理解限制在哪里,如何解决这个问题。
所以我的路径现在也清晰了,先用gemini,然后把一个复杂任务分解清楚,让它做好做到claude的程度;再用gemini分解一个全新的不在它的参数知识的问题分解清楚,之后慢慢降级,使用claude haiku,qwen3.5-35B,gemma4-31B,qwen3.5-9B,qwen3.5-0.6B, qwen3-embbeding only(找到需要的最小能力下限,我盲估是35B/31B这个level)。这样也能逐渐通过symbolic的伴随系统消除LLM幻觉,更robust。context engineering或者说prompt engineering其实还有很多东西需要细究的,用模型能力掩盖context的真正实力大可不必。
继续学习。