Olympus
Olympus: A Universal Task Router for Computer Vision Tasks[1]
作者是来自牛津和微软的Yuanze Lin等人,论文引用[1]:Lin, Yuanze et al. “Olympus: A Universal Task Router for Computer Vision Tasks.” ArXiv abs/2412.09612 (2024): n. pag.
Time
- 2025.Apr
Key Words
- universal task router
- 一句话总结:用MLLMs内在的能力来处理vision-language tasks,用task-specific routing tokens将user instructions分配给其它的的专家models
总结
- 作者介绍了Olympus,是一个将MLLMs变成一个统一的框架,能够处理广泛的CV tasks,利用一个controller MLLM,Olympus将超过20种专门针对图像、视频和3D对象的任务分配给专用模块。这个instruction-based的routing能够通过chained actions实现复杂的workflows,不需要训练heavy generative models,Olympus简单地和现有的MLLMs集成,扩展了他们的能力。实验表明,它是一个有效的**universal task router,能够解决多种CV tasks。
MLLMs在多个领域的理解、生成和推理上取得了显著的进展。例如:MLLMs中的LLaVA,在VQA中表现卓越。在生成中,diffusion models在text-to-image、text-to-video、text-to-3D generation中实现了卓越的性能。基于上述的进展,最近的研究目标是开发一个统一的架构,能够执行多个domains的任务,Emu3和Omni-Gen引入了all-in-one models,来处理生成和理解的任务。然而,在single model中,distinct domains的集成提出了很大的挑战。特别地,domains中的多样性,由于task objectives之间的conflicts,导致在individual tasks中性能的妥协。例如text和image generation tasks。这些conflicts阻碍了model的有效性,限制了在真实世界应用中的utility。
另外一个all-in-one models的key limitation是:由于输入输出的格式不同,处理跨不同domains的广泛的 vision-language tasks能力受限。这一限制对scalability构成了显著的瓶颈,特别是随着任务范围在图像、视频以及新兴的3D领域中持续扩大。另外,扩展这些models来适应新的任务是具有挑战的,训练这样的comprehensive models,随着model sizes的增加,需要大量的计算资源和复杂的训练方法。例如, Omni-Gen需要 \(104 \times A800\) GPUs和5个不同的训练阶段。这些问题凸显了对模块化或任务自适应框架的迫切需求,以增强在应对视觉任务日益多样化的需求时的可扩展性和效率。另外,all-in-one models通常难以有效地整合精心设计的任务特定组件,从而降低了其在专业化应用中的整体效率和性能。
这促使我们来探索另外的alternative的方法,来无缝地在single framwork中统一vision tasks。受HuggingGPT的启发和MLLMs的先进的上下文的理解。作者提出:利用MLLMs来处理vision-language comprehension internally,同时delegating other tasks externally。尽管技术上简单,它代表了对于CV tasks的,迈向advancing unified frameworks的foundational 和重要的一步。特别地,MLLM能够作为一个**task router,和其它的专门的external models进行协调,来解决多种tasks,克服individual model的局限。然而,它仍然面临着重要的挑战,主要是由于多种任务中的user prompt的多样性和对于有效训练和评估重要的综合的、task-specific instruction datasets的datasets。
在本文中,作者引入了Olympus,是一个统一的framework,利用MLLMs来处理多种CV tasks,作者的Olympus不同于现有的方法,现有的方法聚焦于提出all-in-one models来解决diverse tasks。为了完成这个,作者搜集了 \(446.3K\) 高质量的training instructions和 \(49.6K\)来自GPT-4o的 evaluation instructions,称之为OlympusInstruct and OlympusBench。另外,作者设计了一个专门的routing tokens,用于分配individual tasks。最后,利用这些routing tokens和OlympusInstruct,作者model能够在single user instruction下,执行a chain of tasks。
作者的贡献如下:
- 提出了Olympus,一个新的framework,利用MLLMs通过内在的能力,来执行contextual understanding task,同时通过分配external models,来解决其它的tasks。
- 作者开发了一个task-specific routing tokens,增强了MLLMsd的chain-of-action的能力,作者model实现了comparable的性能。
- 作者构建了curated high-quality instruction datasets。
最近LLMs上的进展促进了MLLMs的发展,先进的MLLMs,例如MiniGPT-4,在处理和集成多模态上展示出了良好的能力。像Kosmos-2、LLaVA、LLaVA-OneVision进一步增强了MLLM的visual cognitive abilities。另外,包括LLaVA-Phi的方法,MobileVLM和Mipha,聚焦于修正训练方法和架构,来开发出高效和轻量的MLLMs,尽管这些Models在visual perception和多模态理解上很擅长,他们主要限制于生成text-based outputs,限制了他们在涉及images, videos, 3D content generation等广泛视觉任务上的有效性。在这个工作中,作者跟着Mipha,采用了多模态的模型结构。
统一的Vision-Language Foundation Model:大量的研究聚焦于开发统一的多模态的、在理解和生成content上都擅长的models。有些方法将连续的embeddings和用于image generation的自回归框架内的textual tokens进行集成, Chameleon采用了一个transformer在多个模态中进行自回归建模。Show-o和TransFusion在单个transformer中,引入了自回归和diffusion modeling。Omni-Gen采用了一个VAE的encoder-decoder以及一个transformer来处理free-form prompts。最近,Emu3用next-token prediction的方法,在video、image和text datasets上训练了一个统一的transformer,在多模态的benchmarks和generation tasks上实现了卓越的性能。然而,**最近的unified 多模态foundation models主要support一些很小范围的generative tasks,例如image、video creation或者editing,对于更广泛的AI应用,面临着严重的scalability的挑战。为了克服这些局限,作者进一步通过无缝地继承用于diverse applications的domain-specialized models,来增强MLLMs。
LLM-based tools: LLMs,在大规模数据上训练,在zero-shot和few-shot settings上展示出了卓越的能力,在一些复杂的任务上,例如数学问题求解和常识推理。为了拓展它们超出text generation的能力,最近的研究聚焦于将external tools和models集成到LLM架构中。Toolformer通过在textual sequences上嵌入API calls,成为了开拓者,使得LLMs能够有效地利用external tools。建立在这个foundation之上,后续的研究也引入了visual modalities:Visual ChatGPT将LLMs和visual models,例如BLIP集成,Visual Programming和ViperGPT将visual queries变成可执行的Python code。促进了LLMs的视觉数据的处理。另外,HuggingGPT通过将LLMs用作controllers,将user的requests给到特定的expert models,来增强LLMs。因此将domain-specific expertise和language comprehension结合到一起。 尽管HunggingGPT将specific AI models来执行多种任务。它主要依赖于prompt engineering,将ChatGPT作为一个interface,用于连接多中external models,而不需要训练,相比之下,作者的方法涉及从零开始训练MLLMs from the ground up,使得它们能够在internally 处理vision-language tasks,同时指定专门的models来解决广泛的AI tasks。
Olympus 利用MLLMs作为foundation,用于多种CV tasks。对于vision-language tasks,像VQA,MLLMs利用它们内在的能管理。对于其它的vision tasks,例如生成任务和经典的vision tasks,MLLMs作为intermediaries,将user的instructions路由到专门的模型,如图所示,收到一个request,MLLM能够自动地阻止workflow,协调expert models来完成objective。
- 为了精确地将user instruction分配到合适的model,作者用GPT-4o构建了一个high-quality和user instruciton-response pairs的多样的dataset。对于每个task,一个specialized prompt用于和task的特定的上下文对齐。这包括指定详细的指令,让GPT-4o生成连贯和上下文相关的user requests和responses。
- 为了确保user instructions的diversity,作者引入了多种prefixes和phrases,引入了不同的language styles,tones和structures。另外,作者将instruction 复杂度分为了3个levels:short、moderate和extended。这个分层使得GPT-4o产生长度和复杂度不同的instructions。另外,作者prompt GPT-4o,来产生practical和direct的responses,增强interactions的applicability和clarity。作者也做了数据清洗,通过去掉了重复的entries和利用GPT-4o去掉了上下文或者语法不合适。这个净化的过程确保了数据集的完整性和质量。覆盖的20 tasks分为3个groups:(1):Image domains:image generation/editing、deblurring、deraining、super-resolution、denoising、pose/normal/canny/depth estimation、controllable image generation across six conditions; (2) Video domains:video generation/editing、controllable video generation、referring video object segmentation; (3) 3D domains: image-to-3D和text-to-3D generation.
Task-Specific Routing Tokens:Olympus 直接将user requests通过task-specific routing tokens给到dedicated moels*,为了促进MLLMs预测与用户目标一致的适当模型,作者涉及了一组针对individual tasks的routing tokens。例如:在image和video generation domain中,作者用routing tokens **
... 和...。特别地,给定一个user instruction,例如“ Please craft an image displaying a chihuahua dog dressed in a vibrant, costume", 对应的response是 a chihuahua dog dressed in a vibrant, costume 。有效地解决了user的request,因此,user instructions和responses构成了input-answer pairs,用于训练。- Chain-of-Action。通过引入domain-specific routing
tokens,Olympus具有了chain-of-action的能力,使得在single
instruction下处理多个tasks。例如,考虑结合了pose-based image
generation和image editing的user prompt:"in homage to the pose imagery
and the prompt's 'a majestic castleL',generate an image,In the
following step, please refine the image by adding green trees".
用routing tokens的predicted response就是:
a majestic castle adding green trees 。因此,Olympus能够循序地将user instructions 路由到合适的modules,用于pose-conditioned image generation和image editing,和task-oriented routing tokens对齐。另外,Olympus在**单个prompt中,最多支持5个连续的tasks,能够扩展到适应更大数量的tasks,因此展示了它的灵活性和可扩展性。
- Chain-of-Action。通过引入domain-specific routing
tokens,Olympus具有了chain-of-action的能力,使得在single
instruction下处理多个tasks。例如,考虑结合了pose-based image
generation和image editing的user prompt:"in homage to the pose imagery
and the prompt's 'a majestic castleL',generate an image,In the
following step, please refine the image by adding green trees".
用routing tokens的predicted response就是:
Training: 目标是在user instructions的条件下,生成task-specific responses和routing tokens。作者用cross-entropy loss,用next-token prediction范式来训练MLLMs。
\[P(Y_a | \mathcal{F}_v, \mathcal{F}_t) = \prod_{i=1}^{L} P_\theta(y_i | \mathcal{F}_v, \mathcal{F}_{t,a,<i})\]
这里\(L\) 表示response \(Y_a\)的长度,\(F_v\) 表示visual embedding,用于多模态的instructions,\(\theta\) 是MLLMs的训练参数。notation \(Y_{a,< i}\) 表示当前 \(y_i\) token之前的所有tokens,\(F_t\) 表示input instruction embeddings。
Inference:在收一个prompt之后,Olympus生成一个带有task-customized routing tokens的responses, 这个tokens唤醒了合适的AI models,来处理多个tasks,它们的predictions汇聚到最后的response,对于MLLMs单独处理的tasks,responses直接生成,绕过了routing tokens。Olympus引入了一个基于training的范式,MLLMs是作为一个controllers,用internally capabilities和external expert models来处理多种任务,这个框架无缝地将MLLMs和domain-specific models结合起来,一起处理universal tasks
\(Fig.1^{[1]}\) 给定user
prompts,一个trainable
MLLM能够在多个专门的models上执行routing。MLLMs能够用自身内在的能力解决多模态的理解任务,将专门的models进行分配,来解决多模态生成和classic
vision tasks。然后汇总结果,给到user一个response.
\(Fig.2^{[1]}\)
framework of
Olympus.通过MLLM的内在的能力,能够直接处理VQA这样的任务。对于其它的tasks,例如image
editing,Olympus能够生成response,包含task-specific routing
tokens和refined prompts,它们用来安排专家models来处理多种user
requests。