UniCoder: 通过通用编码扩展代码大规模语言模型
提出了一种名为 UniCode 的新方法,通过学习统一的码书,能够在多模态的大型语言模型中有效地对视觉、文本和其他类型的信号进行标记化,通过使用语言驱动的迭代训练方法和图像解压缩预训练任务,我们的模型能够解释压缩的视觉数据并生成高质量图像。UniCode 可适应各种堆叠的量化方法,将视觉信号压缩为更紧凑的标记表示。尽管在训练过程中使用的参数和数据少得多,但 UniCode 在视觉重建和生成方面展示出有希望的能力,并在各种 VQA 基准测试中实现了与领先的 MLLM 相当的性能。
Mar, 2024
本文提出了一种统一的跨模态预训练模型 UniXcoder,使用前缀适配器控制模型行为并使用语法树和代码注释等交叉模态内容来增强代码表示。同时,利用多模态内容进行对比学习以学习代码片段代表,并使用跨模态生成任务在编程语言之间进行表示的对齐。该模型在五个代码相关任务上取得了最先进的结果,而注释和 AST 可以增强该模型。
Mar, 2022
通过利用编译器中间表示来改进代码语言模型的多语言能力,并促进跨语言转换,该研究探讨了在代码语言模型中利用编译器中间表示的可行性和优势,构建了一个并行数据集 SLTrans,并通过对不同规模的代码语言模型进行连续因果语言建模训练,从而在各种代码生成任务和度量标准中实现了显著和一致的提升。
Mar, 2024
Unicoder 是一种机器学习算法,可对自然语言进行编码,进而实现输出不同语言的任务。该方法提出了三种新的跨语言预训练任务,包括跨语言词汇恢复、跨语言近义词分类和跨语言掩码语言模型。作者还发现在多种语言上进行微调可以进一步提高性能。作者在两个任务上进行了实验,包括跨语言自然语言推断和跨语言问答,并且在新的跨语言问答数据集上实现了 5.5%的精确度提高。
Sep, 2019
LLMs 和基于学习的转译器在自动代码转换任务中取得了显著的性能提升,但当前仍存在一些准确性问题和资源限制。本研究发现,大部分失败源于对源程序的理解不足、在转换中缺少清晰的 I/O 类型指令以及源程序与目标程序之间的差异被忽略。鉴于以上研究结果,我们提出了 UniTrans,一个适用于多种 LLMs 的统一代码转换框架,通过生成测试用例、自动增强转换并验证正确性的执行过程,进一步修复转换错误。在 Python、Java 和 C++ 之间的六个转换数据集上进行了大量实验,三个最近的 LLMs 通过 UniTrans 实现了大幅度的改进。
Apr, 2024
通过代码生成,我们提出了 KnowCoder,一个大型语言模型(LLM),用于进行通用信息抽取(UIE)。KnowCoder 旨在开发一种统一的模式表示方法,使 LLMs 能够轻松理解,并提供一种有效的学习框架,鼓励 LLMs 遵循模式并准确提取结构化知识。
Mar, 2024
我们提出了 Chain of Code (CoT) 这一简单但非常有效的扩展方法,通过鼓励语言模型将语言子任务格式化为编程中的伪代码,以期改进语言模型驱动的推理,并通过 “思考代码” 的方式扩大语言模型能够正确回答的推理问题范围。
Dec, 2023
提出了一种名为 CodeT5 + 的编译器 - 解码器语言模型,具有灵活的组件模块和多样化的预训练任务,能够在不同的代码相关基准测试中取得最先进的结果,特别是在针对人类评估的代码生成任务中。
May, 2023
该论文提出了一种新的策略,通过连接静态代码文本和动态执行状态,训练具有全面语义的 Code LLMs,从而填补 Code LLMs 在诸如调试和程序修复等复杂任务中对深层语义的依赖的差距。该方法通过收集 PyX,一个具有可执行样本、功能描述和执行跟踪的干净代码语料库,训练 Code LLMs 使用自然语言编写代码、表示和推理执行行为,从而开发出了仅有 67 亿参数的 SemCoder,该模型在代码生成和执行推理任务上与 GPT-3.5-turbo 表现相当。
Jun, 2024
使用大语言模型(LLMs),将代码更改从一种编程语言翻译成另一种编程语言,通过设计和实现名为 Codeditor 的第一个 LLM,我们发现它在所有常用的自动指标上都大幅超越了现有的方法,并且与现有的生成模型配合使用可以获得更好的性能。
Jul, 2023