※この記事はアフィリエイト広告を含みます
[AI小型新闻快报] 利用LLM复原N64经典!《滑雪少年2》的反编译进展达到75%的背后故事
📰 新闻概述
- 反编译进展提升: 利用LLM(Claude)对N64游戏《滑雪少年2》的代码复原率,从最初的25%最终达到了约75%。
- 相似函数指导: 不仅仅是顺次解决“简单函数”,而是优先处理与已知(已反编译)函数相似的未解决函数,从而大幅提升了AI的推理精度。
- 专用工具集成: 通过为Claude提供图形指令解读工具(F3Dex2)及微调代码匹配的工具(decomp-permuter)等“技能”来执行。
💡 重要要点
- 向量的应用: 判断函数相似性的方法包括使用汇编指令的文本嵌入(Embedding)和计算指令序列的编辑距离(Levenshtein距离)等技术,如“Coddog”。
- LLM的局限性: 在动态生成显示列表或复杂位运算等编译器优化严重的区域,依然需要手动干预,进展往往会遇到瓶颈。
🦈 鲨鱼的眼光(策展人的观点)
将“过往正确案例”作为上下文给予LLM的RAG方法在逆向工程中被证明极为有效!特别是将函数相似度数值化并重新排列成“Claude易于解决的顺序”的实现,非常具体且有趣。过去人类花费多年手动进行的“代码模式识别”,如今通过嵌入向量搜索正逐步被替代,这在复古游戏保存的历史中是一个突破性的进展!
🚀 接下来会怎样?
虽然此次方法已达到75%的进展,但剩余的“长尾(复杂部分)”预计仍需更专用的工具和更高级的推理模型。然而,随着相似搜索的自动化,其他N64标题的反编译进程将比以往更快!鲨鱼期待着这一切的到来!
💬 鲨鱼的一句话
在代码的海洋中寻找相似鱼(函数)喂给Claude,真是鲨鱼式的捕猎方式!距离完成只差一步,支持你们哦!🦈🔥
📚 术语解释
-
反编译: 将机器语言(二进制)转换为人类可读的编程语言(如C语言)的技术。
-
嵌入向量: 将文本或代码表示为多维数值列表,使其内容的“语义接近度”可计算的技术。
-
显示列表: 发送给N64图像处理芯片的图形指令列表。由于其动态生成,解析起来非常困难。