INDICT:基于安全性与有用性双重批判对话的代码生成
软件工程
2024-10-30 v2 人工智能
计算与语言
密码学与安全
多智能体系统
编程语言
摘要
针对代码的大语言模型(LLM)通常被训练以自然语言指令为导向,紧密遵循其意图和要求。然而,在许多实际场景中,这些模型越来越难以在有用性和安全性之间把握细致的边界,尤其是当针对高度复杂且可能恶意的指令时。本文介绍INDICT:一种新框架,赋予LLM“双重批判对话”能力,以同时指导安全性和有用性。内部对话是一种由安全驱动的批判者与由有用性驱动的批判者组成的双合作系统。每个批判者都针对给定任务及其生成响应提供分析,配合通过相关代码片段查询的外部知识,以及如Web搜索和代码解释器等工具。我们在代码生成阶段和代码执行阶段均引入双批判系统,分别提供预防性和事后指导。我们在8个涵盖8种编程语言的多样化任务上对INDICT进行评估,涉及5个基准测试,模型参数规模从7B到70B不等。我们观察到该方法能够提供双重安全性和有用性分析的高级水平,显著提升输出代码质量(所有模型均实现约10%的绝对提升)。
引用
@article{arxiv.2407.02518,
title = {INDICT: Code Generation with Internal Dialogues of Critiques for Both Security and Helpfulness},
author = {Hung Le and Yingbo Zhou and Caiming Xiong and Silvio Savarese and Doyen Sahoo},
journal= {arXiv preprint arXiv:2407.02518},
year = {2024}
}
备注
Accepted to The Thirty-Eighth Annual Conference on Neural Information Processing Systems (NeurIPS 2024)