微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 上海AI实验室让AI学会"自己造工具":PyVision框架让机器视觉推理变得像人类一样灵活

上海AI实验室让AI学会"自己造工具":PyVision框架让机器视觉推理变得像人类一样灵活

2025-07-18 16:06
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2025-07-18 16:06 科技行者

这项由上海AI实验室的赵诗田、张浩泉、林绍亨、李明等研究人员领导的研究发表于2025年1月,论文标题为"PyVision: Agentic Vision with Dynamic Tooling"。有兴趣深入了解的读者可以通过arXiv:2507.07998v1访问完整论文。

当我们面对一幅复杂的图像时,比如一张包含视觉错觉的图片,人类会怎么做?我们可能会眯起眼睛仔细观察,用手遮住一部分图像,或者换个角度来看。我们会根据具体问题灵活调整自己的观察方法。但现在的AI系统在处理视觉问题时,就像被困在一个固定的观察模式中——它们只能用预先设定好的方法来分析图像,无法根据问题的特殊性创造新的解决方案。

上海AI实验室的研究团队意识到了这个问题,他们开发了一个名为PyVision的框架,让AI系统能够像人类一样,根据遇到的视觉问题动态地"发明"和使用工具。这就像给AI配备了一个无限的工具箱,而且AI还能根据需要现场制造新工具。

这个研究的核心创新在于,PyVision不是简单地给AI提供一堆预制的工具,而是让AI学会用Python编程语言来动态创造解决问题的工具。当AI遇到一个新的视觉问题时,它会思考:"我需要什么样的工具来解决这个问题?"然后现场编写代码,创造出专门针对这个问题的工具。

一、让AI学会"临时抱佛脚":动态工具生成的魔力

传统的AI视觉系统就像一个只会按照固定菜谱做菜的厨师。无论面对什么食材,它都只能用同样的方法处理。而PyVision就像培养了一个真正的大厨,能够根据手头的食材和客人的需求,临时创造出新的烹饪方法。

研究团队通过一个经典的视觉错觉例子展示了这种能力的强大之处。在著名的艾宾浩斯错觉中,两个大小相同的圆形在不同背景下看起来大小不同。但研究人员设计了一个"反向"版本——实际上两个圆形大小不同,但人类的直觉会认为它们大小相同。

当面对这个问题时,传统的AI系统会依赖它存储的关于艾宾浩斯错觉的知识,错误地回答"两个圆形大小相同"。但PyVision的反应完全不同。它首先分析了问题的本质,然后决定:"我需要实际测量这两个圆形的大小,而不是依赖视觉印象。"

接下来,PyVision开始了它的"工具制造"过程。它首先编写代码来获取图像中橙色圆形的RGB值,然后创建一个遮罩来分离这些圆形区域,最后计算每个圆形的实际像素面积。通过这种方法,它发现左边的圆形面积是124,805个像素,而右边的圆形面积是12,824个像素——右边的圆形明显更大。

这个过程就像一个侦探在破案时根据具体线索制造专门的调查工具。PyVision没有被预设的"知识"束缚,而是根据问题的具体需求,动态创造出最合适的分析工具。

二、工具分类学:AI的"瑞士军刀"有多少种功能

研究团队发现,PyVision在处理不同类型的视觉问题时,会自发地创造出不同类别的工具。他们将这些工具分为几个主要类别,就像给一个万能工具箱分类整理一样。

基础图像处理工具就像是AI的"基本生活技能"。当面对一张模糊或歪斜的图像时,PyVision会创造裁剪工具来聚焦关键区域,旋转工具来纠正图像方向,或者增强对比度工具来让细节更加清晰。这就像我们在看一本书时会调整灯光、换个角度或者戴上眼镜一样自然。

在一个真实案例中,PyVision需要从一张复杂的街景照片中识别一个小小的广告牌上的文字。它先是尝试在整张图片中寻找广告牌,但发现目标太小了。于是它创造了一个精确的裁剪工具,经过三次迭代调整,最终准确地定位到了广告牌的位置,并成功读取了上面的"YOGA"字样,正确识别出这是一家瑜伽工作室。

高级图像处理工具则像是AI的"专业技能"。当需要分析医学图像时,PyVision会创造分割工具来分离不同的解剖结构,或者目标检测工具来定位特定的病变区域。甚至,它还能创造OCR(光学字符识别)工具,在不依赖外部服务的情况下,自己读取图像中的文字内容。

视觉提示和绘图工具体现了AI的"创造性思维"。当需要计算图像中物体的数量时,PyVision会像人类一样,在每个物体上画上标记来避免重复计算。在解决几何问题时,它会画出辅助线来帮助自己理解空间关系。这就像我们在解数学题时会在草稿纸上画图一样。

数值和统计分析工具则是AI的"理性分析能力"。当需要比较颜色深浅或者分析图像的整体特征时,PyVision会创造专门的统计工具,绘制像素强度直方图,或者计算特定区域的平均颜色值。

三、多轮对话:AI与工具的"深度交流"

PyVision的另一个创新之处在于它的多轮交互能力。这就像是AI和它的工具之间进行了一场深度对话,每一轮对话都让AI对问题有了更深入的理解。

这个过程可以用修理工解决复杂机械问题来类比。一个经验丰富的修理工不会一开始就知道确切的问题所在,而是会逐步诊断:先听声音,再看外观,然后拆开检查,根据每一步的发现来决定下一步的行动。

在PyVision的系统中,这种交互被精心设计。每当AI生成一段代码并执行后,执行结果会反馈给AI,让它能够基于这些新信息调整下一步的策略。整个过程是完全自主的,AI会自己决定何时停止这个循环,给出最终答案。

为了保证这种交互的稳定性,研究团队设计了几个关键机制。首先是进程隔离,确保每次代码执行都在独立的环境中进行,即使出现错误也不会影响整个系统。其次是跨轮次持久化,让AI能够在多个回合中累积和使用之前的分析结果。最后是安全的输入输出机制,确保AI和Python执行环境之间的交流是可控和安全的。

四、实战表现:从数学到医学的全面突破

研究团队在多个不同领域的基准测试中验证了PyVision的能力,结果令人印象深刻。在数学视觉推理任务中,PyVision让GPT-4.1的表现提升了7.8%,让Claude-4.0-Sonnet的表现提升了高达31.1%。

更有趣的是,研究团队发现PyVision似乎能够"放大"不同AI模型的固有优势。当与擅长感知任务的模型结合时,PyVision在视觉搜索任务上表现更出色;当与擅长抽象推理的模型结合时,它在逻辑推理任务上提升更明显。这就像是给不同类型的运动员配备了最适合他们的训练工具。

在医学图像分析任务中,PyVision展现了令人惊讶的适应能力。面对一张视网膜眼底图像,它需要判断是否存在异常。PyVision首先创造了一个对比度增强工具,使用直方图均衡化技术来突出图像中的细微特征。然后它创造了一个灰度强度直方图分析工具,检查是否存在异常的亮度分布。通过这种多层次的分析,它正确地判断出图像显示的是一个健康的视网膜。

在遥感图像分析中,PyVision展现了另一种适应策略。当需要计算卫星图像中的建筑物数量时,它创造了一个完整的图像分割工具链:先将图像转换为灰度,然后使用大津阈值法进行二值化,接着应用形态学操作来清理噪声,最后通过连通组件分析来计算建筑物的数量。

五、工具使用模式:不同任务的"专属配方"

通过分析PyVision在不同类型任务中的表现,研究团队发现了一些有趣的模式。在数学和逻辑相关的任务中,PyVision更倾向于创造数值分析工具和视觉绘图工具。这就像数学家在解题时会画图表和进行计算一样。

在符号视觉任务中,比如那些需要解析抽象图形的问题,PyVision主要依赖高级图像处理工具。在精细的视觉搜索任务中,裁剪工具占据了绝对主导地位,超过83%的工具使用都是为了将注意力集中在图像的特定区域。

在医学图像分析中,对比度增强工具被频繁使用,这反映了医学图像分析对细微视觉特征的高度敏感性。而在遥感图像分析中,分割工具更为常见,这是因为遥感图像通常需要分离大规模场景中的不同对象。

这种适应性使得PyVision能够像变色龙一样,根据不同环境调整自己的策略。它不是一个万能但平庸的工具,而是一个能够在每个特定领域都表现出色的专家系统。

六、技术架构:构建AI的"创造力引擎"

PyVision的技术架构看起来简单,但实际上包含了许多精妙的设计。整个系统的核心是一个精心设计的系统提示,它就像是给AI制定的"行为准则"。这个提示告诉AI如何访问输入图像,如何构造代码,如何返回结果,以及如何判断任务完成。

系统的多轮交互机制确保了AI能够进行"深度思考"。每一轮交互都包含代码生成、执行、结果反馈和策略调整四个步骤。这个过程会持续进行,直到AI认为问题已经得到充分解决。

为了保证系统的稳定性,研究团队实现了三个关键的技术保障。进程隔离确保每次代码执行都在独立的子进程中进行,避免了系统崩溃的风险。跨轮次持久化让AI能够在多个回合中累积知识和结果。安全的输入输出机制通过结构化的变量传递来避免文件系统依赖。

七、深度案例分析:AI如何"现场发挥"

为了更好地理解PyVision的工作原理,让我们详细分析几个典型案例。

在一个"找不同"的任务中,PyVision需要识别两张相似图片之间的所有差异。它的第一步是将输入图像分割成左右两半,然后计算两半之间的绝对像素差异。这个过程就像用放大镜逐像素比较两张照片。

接下来,PyVision生成了一个差异可视化图,将所有不同的区域高亮显示出来。基于这个差异图,它系统地分析了每个高亮区域,最终识别出了诸如"右图中有蝴蝶而左图没有"、"左图中有蘑菇而右图没有"等具体差异。

在一个视频理解任务中,PyVision需要计算房间中桌子的数量。面对一个包含多个视频帧的输入,它没有试图分析每一帧,而是聪明地选择了几个关键帧,每个帧都展示了不同类型的桌子。通过分析这些关键帧,它识别出了圆形餐桌、玻璃茶几、电视柜和沙发边几等四种不同的桌子。

八、性能深度解析:数字背后的故事

PyVision的性能提升不仅仅是简单的数字增长,而是反映了AI系统能力的质的飞跃。在V*基准测试中,PyVision-GPT-4.1相比基础模型提升了7.8%,这个提升主要来自于动态裁剪工具的使用。通过精确定位图像中的关键区域,AI能够避免被无关信息干扰,专注于解决问题的核心部分。

在VLMsAreBlind-mini测试中,PyVision-Claude-4.0-Sonnet的表现提升了31.1%,这是一个相当显著的改进。这个测试主要评估AI对符号视觉的理解能力,而PyVision通过创造专门的图像分析工具,大大提高了对抽象视觉模式的识别准确率。

研究团队还发现了一个有趣的现象:PyVision似乎能够"放大"不同AI模型的固有优势。当与感知能力强的模型结合时,它在视觉任务上的提升更明显;当与推理能力强的模型结合时,它在逻辑任务上的改进更显著。这就像是给每个运动员配备了最适合他们的专业装备。

九、工具使用频率分析:AI的"偏好模式"

通过分析PyVision在不同任务中的代码生成行为,研究团队发现了一些有趣的模式。Claude-4.0-Sonnet比GPT-4.1更倾向于生成代码,在许多任务中达到了100%的代码覆盖率。这反映了不同AI模型在处理复杂任务时的不同策略偏好。

在数学相关任务中,PyVision平均每个查询生成2-3个代码块,这些代码块通常用于数值计算、几何分析和结果验证。在视觉搜索任务中,代码块数量相对较少,但每个代码块都专注于精确的区域定位和特征提取。

在医学图像分析任务中,PyVision展现了更复杂的多轮交互模式,平均每个查询需要3-4轮交互才能完成。这反映了医学图像分析的复杂性,需要多层次的特征提取和分析。

十、与传统方法的根本区别:静态vs动态的革命

传统的AI视觉系统就像是一个装满了各种预制工具的工具箱。当遇到新问题时,系统只能从现有的工具中选择一个最接近的来使用。这种方法的局限性在于,预制工具的数量和类型是有限的,而现实世界的问题却是无穷无尽的。

PyVision的革命性在于它完全改变了这种模式。它不是提供预制工具,而是提供了制造工具的能力。这就像是给AI配备了一个完整的工厂,而不仅仅是一个工具箱。当遇到新问题时,AI可以根据问题的具体需求,现场设计和制造最适合的工具。

这种差异带来了几个重要的优势。首先是灵活性,AI不再受限于预定义的工具集,可以处理各种各样的新问题。其次是精确性,每个工具都是为特定问题量身定制的,因此效果更好。最后是可扩展性,随着AI编程能力的提升,它能够创造的工具类型也会不断增加。

十一、实际应用前景:从实验室到现实世界

PyVision的技术不仅在学术研究中表现出色,更重要的是它为实际应用开辟了新的可能性。在医疗诊断领域,PyVision可以根据不同类型的医学图像动态创造分析工具,帮助医生更准确地识别病变。在自动驾驶领域,它可以根据不同的交通场景创造适合的视觉分析工具,提高道路安全性。

在工业质检中,PyVision可以为不同产品的质量控制创造专门的检测工具,无需为每种产品单独开发系统。在安防监控中,它可以根据不同的监控场景动态调整分析策略,提高异常检测的准确性。

在教育领域,PyVision可以为不同学科的视觉内容创造专门的分析工具,帮助开发更智能的教学辅助系统。在娱乐产业中,它可以为游戏和影视制作提供更智能的内容分析和处理能力。

十二、技术挑战与解决方案:克服"成长中的烦恼"

尽管PyVision展现了强大的能力,但研究团队也坦诚地讨论了当前面临的挑战。首先是代码生成的稳定性问题。虽然现代AI模型的编程能力已经相当强大,但生成的代码偶尔仍可能出现错误。研究团队通过进程隔离和错误恢复机制来解决这个问题。

其次是计算效率问题。动态工具生成需要更多的计算资源,特别是在多轮交互的情况下。研究团队正在探索更高效的代码生成和执行策略,以降低计算成本。

第三是安全性问题。由于系统会执行动态生成的代码,必须确保这些代码不会对系统造成损害。研究团队通过沙箱执行环境和代码审查机制来保障系统安全。

最后是可解释性问题。虽然PyVision的推理过程相对透明,但复杂的代码生成过程可能仍然难以理解。研究团队正在开发更好的可视化工具,帮助用户理解AI的决策过程。

PyVision代表了AI视觉推理领域的一个重要转折点。它不仅提高了AI系统的性能,更重要的是改变了我们对AI能力的认知。传统的AI系统只能使用工具,而PyVision让AI学会了制造工具。这种从"使用者"到"创造者"的转变,可能会引发整个AI领域的深刻变革。

正如研究团队所说,这项工作的真正价值不仅在于性能的提升,更在于它指向了一个更广阔的未来:AI系统不再是被动的工具执行者,而是能够主动适应和创造的智能体。当AI学会了根据问题的需要动态创造解决方案时,我们就真正迈向了通用人工智能的大门。

这项研究也提醒我们,AI的发展不应该仅仅追求更大的模型或更多的数据,而应该关注如何让AI更好地适应和解决现实世界的复杂问题。PyVision的成功证明,通过巧妙的系统设计和创新的交互机制,我们可以让AI系统展现出前所未有的灵活性和创造力。

随着这项技术的不断发展和完善,我们有理由相信,未来的AI系统将能够处理更加复杂和多样化的视觉任务,为人类社会带来更大的价值。从医疗诊断到自动驾驶,从工业控制到娱乐创作,PyVision开启的这扇"动态工具生成"的大门,将为AI应用的广阔前景铺平道路。

Q&A

Q1:PyVision是什么?它和普通的AI视觉系统有什么区别? A:PyVision是上海AI实验室开发的一个AI视觉推理框架,最大的特点是能够动态创造工具。普通AI系统只能使用预设的工具,就像只会按固定菜谱做菜的厨师;而PyVision可以根据具体问题现场编写Python代码,创造专门的分析工具,就像经验丰富的大厨能根据食材临时发明新菜谱一样。

Q2:PyVision的性能提升有多大?在哪些任务上表现最好? A:在不同任务上,PyVision的性能提升从几个百分点到30%以上不等。在视觉搜索任务V*上,它让GPT-4.1提升了7.8%;在符号视觉任务VLMsAreBlind上,它让Claude-4.0-Sonnet提升了31.1%。它在需要精确分析和多步推理的任务上表现最为突出,比如医学图像分析、数学视觉推理等。

Q3:PyVision会不会取代现有的AI视觉系统?普通人能用到吗? A:PyVision不是完全取代现有系统,而是提供了一种新的解决思路。它目前主要用于研究和高端应用,但其核心思想——让AI根据问题动态创造工具——可能会逐步融入到各种AI产品中。未来普通人可能会在医疗诊断、教育辅助、图像处理等应用中间接受益于这项技术。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-