CodeMMR: Bridging Natural Language, Code, and Image for Unified Retrieval

📄 arXiv: 2604.15663v1 📥 PDF

作者: Jiahui Geng, Qing Li, Fengyu Cai, Fakhri Karray

分类: cs.SE, cs.AI

发布日期: 2026-04-17

期刊: CVPR 2026


💡 一句话要点

提出CodeMMR,用于统一检索自然语言、代码和图像的多模态代码信息检索。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 多模态检索 代码搜索 信息检索 跨模态学习 指令学习

📋 核心要点

  1. 现有代码信息检索模型主要关注文本,忽略了代码中重要的视觉和结构信息。
  2. CodeMMR通过指令学习将自然语言、代码和图像嵌入到统一的语义空间中,实现跨模态检索。
  3. 实验表明,CodeMMR在多模态代码检索任务中显著优于现有模型,并提升了RAG的代码生成能力。

📝 摘要(中文)

代码搜索作为一种信息检索(IR)方法,是现代软件工程的基础,并日益驱动检索增强生成(RAG),从而改进代码发现、重用以及基于LLM的编码的可靠性。然而,现有的代码IR模型主要以文本为中心,常常忽略编程工件中固有的视觉和结构方面,例如Web界面、数据可视化、SVG、示意图和UML。为了弥合这一差距,我们引入了MMCoIR,这是第一个全面的基准,用于评估跨五个视觉领域、八种编程语言和十一种库的多模态代码IR,并通过广泛的评估展示了这项任务的挑战性。因此,我们提出了一种统一的检索模型CodeMMR,该模型通过基于指令的多模态对齐,将自然语言、代码和图像联合嵌入到共享语义空间中。CodeMMR在模态和语言之间实现了强大的泛化,优于竞争基线(例如,UniIR、GME、VLM2Vec),在nDCG@10上平均提高了10个点。此外,将CodeMMR集成到RAG中增强了代码生成保真度和对未见过的代码生成任务的视觉基础,突出了多模态检索作为下一代智能编程系统核心推动者的潜力。数据集可在HuggingFace上获取。

🔬 方法详解

问题定义:论文旨在解决现有代码信息检索模型主要以文本为中心,忽略了代码相关的视觉信息(如界面截图、UML图等)的问题。现有方法无法有效利用这些视觉信息进行代码检索,限制了代码检索的准确性和适用性。

核心思路:论文的核心思路是将自然语言、代码和图像三种模态的信息嵌入到同一个语义空间中,从而实现跨模态的代码检索。通过学习不同模态之间的对齐关系,使得模型能够根据用户输入的自然语言查询,检索出相关的代码片段和视觉信息,或者根据输入的图像检索出相关的代码。

技术框架:CodeMMR的整体框架包含一个多模态编码器和一个检索模块。多模态编码器负责将自然语言、代码和图像编码成向量表示。检索模块则根据查询向量,在代码库中检索出最相关的代码片段。具体流程是:首先,使用多模态编码器将查询(自然语言、代码或图像)和代码库中的代码片段编码成向量表示;然后,计算查询向量和代码片段向量之间的相似度;最后,根据相似度对代码片段进行排序,返回最相关的代码片段。

关键创新:CodeMMR的关键创新在于它能够将自然语言、代码和图像三种模态的信息统一到一个语义空间中。这使得模型能够利用不同模态的信息进行代码检索,从而提高了检索的准确性和适用性。此外,CodeMMR还采用了指令学习的方法,通过学习不同模态之间的对齐关系,进一步提高了模型的性能。

关键设计:CodeMMR使用了Transformer作为多模态编码器的基础架构。对于自然语言和代码,使用预训练的语言模型进行初始化。对于图像,使用预训练的视觉模型进行初始化。在训练过程中,使用对比学习损失函数来学习不同模态之间的对齐关系。具体的损失函数包括InfoNCE损失和Triplet损失。此外,还使用了数据增强技术来提高模型的泛化能力。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

CodeMMR在MMCoIR基准测试中取得了显著的性能提升,在nDCG@10指标上平均超过现有基线模型10个百分点。与UniIR、GME、VLM2Vec等模型相比,CodeMMR在跨模态代码检索任务中表现出更强的泛化能力和准确性。此外,将CodeMMR集成到RAG框架中,显著提升了代码生成保真度和视觉基础能力。

🎯 应用场景

CodeMMR可应用于智能编程助手、代码搜索引擎、软件开发工具等领域。它可以帮助开发者更快速、准确地找到所需的代码片段,提高开发效率。此外,CodeMMR还可以用于代码生成,例如根据用户输入的自然语言描述生成相应的代码。

📄 摘要(原文)

Code search, framed as information retrieval (IR), underpins modern software engineering and increasingly powers retrieval-augmented generation (RAG), improving code discovery, reuse, and the reliability of LLM-based coding. Yet existing code IR models remain largely text-centric and often overlook the visual and structural aspects inherent in programming artifacts such as web interfaces, data visualizations, SVGs, schematic diagrams, and UML. To bridge this gap, we introduce MMCoIR, the first comprehensive benchmark for evaluating multimodal code IR across five visual domains, eight programming languages, eleven libraries, and show the challenge of the task through extensive evaluation. Therefore, we then propose CodeMMR, a unified retrieval model that jointly embeds natural language, code, and images into a shared semantic space through instruction-based multimodal alignment. CodeMMR achieves strong generalization across modalities and languages, outperforming competitive baselines (e.g., UniIR, GME, VLM2Vec) by an average of 10 points on nDCG@10. Moreover, integrating CodeMMR into RAG enhances code generation fidelity and visual grounding on unseen code generation tasks, underscoring the potential of multimodal retrieval as a core enabler for next-generation intelligent programming systems. Datasets are available at HuggingFace.