在本文中,将探讨CogVLM多模态模型,并介绍其在工业领域的几个应用案例。CogVLM是一种能够回答关于文本和图像的问题的模型。与许多其他多模态模型不同,CogVLM是开源的,并且可以在自己的基础设施上运行。在测试中,CogVLM在视觉任务上表现良好,从视觉问题回答到文档OCR。
通过Roboflow Inference,可以以最小的手动设置部署CogVLM。Inference是一个计算机视觉推理服务器,可以部署一系列最先进的模型架构,从YOLOv8到CLIP再到CogVLM。推理使能够使用量化来运行CogVLM。量化压缩了模型,使能够在较少的内存需求下运行模型(尽管会有一定的准确性折衷)。使用4位量化,可以在NVIDIA T4 GPU上运行CogVLM。在测试中,这种配置的请求大约需要10秒来处理。
可以在组织内部署一个或多个服务器来使用CogVLM。CogVLM非常适合于视觉问题回答,当有一张图像并希望询问有关该图像的问题时。当提出的问题比较复杂时,例如“有工人靠近传送带吗?”或“停机坪上有行李吗?”在第一种情况下,可以利用模型理解对象关系的能力。在后一种情况下,可以利用模型对不同变体的对象(行李)进行泛化的能力,这对于目标检测模型来说是一个挑战,因为需要自定义逻辑。
当机场工作人员将行李搬上飞机时,确保没有行李遗留在跑道上至关重要。这是一个安全隐患。传统上,需要训练一个行李检测模型。鉴于行李样式和颜色的多样性以及相机角度或框架中物体距离的变化,这将需要时间。可以询问CogVLM“停机坪上有行李吗”以识别停机坪上是否有行李。这样的解决方案可以在构建适用于用例的准确、微调模型的同时部署。
考虑一个场景,需要确保制造设施中产品的质量。应该标记已经损坏的包裹——例如,凹陷的。凹陷包裹的更高发生率可能表明包装或其他分销管道的上游存在问题,需要解决。可以拍摄包裹的照片,并询问CogVLM“这个包裹凹陷了吗?”或“这个包裹有缺陷吗?”这将允许标记任何潜在问题。还可以使用CogVLM的输出来收集可以使用的元数据,以更好地记录模型识别的问题。例如,如果模型识别出一个盒子的凹陷,可以记录下模型返回的响应中提到的凹陷。
还可以使用CogVLM进行光学字符识别(OCR)。虽然传统的OCR模型可能有所帮助,但这些模型的性能取决于用例。如果在从传统OCR模型中检索准确结果方面遇到困难,建议尝试使用CogVLM。例如,考虑一个场景,需要读取汽车轮胎上的序列号。可以使用CogVLM来检索轮胎上的角色。为了获得最佳准确性,建议在不使用量化的情况下运行模型。
CogVLM是一个可以回答有关图像和文本的问题的多模态模型。在本指南中,介绍了CogVLM在工业中的三个应用案例:识别安全风险、监测产品缺陷和OCR。与OpenAI的GPT-4 with Vision和Google的Gemini等其他多模态模型不同,可以在自己的基础设施上部署CogVLM。可以使用量化来运行CogVLM,以使用较少的RAM。存在准确性的折衷,但应该评估这种折衷是否足够显著,以在测试中使用更大的模型来测试用例。