ChatCoder: Chat-basierte Anforderungsverfeinerung verbessert die Code-Generierung von LLMs
ChatCoder: Chat-based Refine Requirement Improves LLMs' Code Generation
November 1, 2023
Autoren: Zejun Wang, Jia Li, Ge Li, Zhi Jin
cs.AI
Zusammenfassung
Große Sprachmodelle haben gute Leistungen bei der Generierung von Code gezeigt, um menschliche Anforderungen zu erfüllen. Allerdings können menschliche Anforderungen, die in natürlicher Sprache ausgedrückt werden, vage, unvollständig und mehrdeutig sein, was dazu führt, dass große Sprachmodelle menschliche Anforderungen missverstehen und Fehler machen. Schlimmer noch, es ist für einen menschlichen Benutzer schwierig, die Anforderung zu verfeinern. Um menschlichen Benutzern zu helfen, ihre Anforderungen zu verfeinern und die Code-Generierungsleistungen großer Sprachmodelle zu verbessern, schlagen wir ChatCoder vor: eine Methode zur Verfeinerung der Anforderungen durch das Chatten mit großen Sprachmodellen. Wir entwerfen ein Chat-Schema, in dem die großen Sprachmodelle die menschlichen Benutzer dazu anleiten, ihre Ausdrucksweise der Anforderungen präziser, eindeutiger und vollständiger zu gestalten als zuvor. Experimente zeigen, dass ChatCoder die Leistung bestehender großer Sprachmodelle erheblich verbessert hat. Darüber hinaus hat ChatCoder Vorteile gegenüber verfeinerungsbasierten Methoden und Sprachmodellen, die über menschliche Antworten feinabgestimmt wurden.
English
Large language models have shown good performances in generating code to meet
human requirements. However, human requirements expressed in natural languages
can be vague, incomplete, and ambiguous, leading large language models to
misunderstand human requirements and make mistakes. Worse, it is difficult for
a human user to refine the requirement. To help human users refine their
requirements and improve large language models' code generation performances,
we propose ChatCoder: a method to refine the requirements via chatting with
large language models. We design a chat scheme in which the large language
models will guide the human users to refine their expression of requirements to
be more precise, unambiguous, and complete than before. Experiments show that
ChatCoder has improved existing large language models' performance by a large
margin. Besides, ChatCoder has the advantage over refine-based methods and LLMs
fine-tuned via human response.