← Nieuwste papers
💬 NLP

Evaluating and Achieving Controllable Code Completion in Code LLM

Dit artikel introduceert de Controllable Code Completion Benchmark (C3-Bench) om het gebrek aan evaluatie van instructievolgend vermogen in code-LLM's aan te pakken, onthult significante prestatiekloven tussen open-source en propriëtaire modellen, en stelt een datapijplijn voor voor synthese die een gefinetuned model in staat stelt om state-of-the-art resultaten te behalen op de nieuwe benchmark.

Oorspronkelijke auteurs: Jiajun Zhang, Zeyu Cui, Lei Zhang, Jian Yang, Jiaxi Yang, Qiang Liu, Zilei Wang, Binyuan Hui, Liang Wang, Junyang Lin

Gepubliceerd 2026-01-23
📖 4 min leestijd☕ Koffiepauze-leesvoer

Oorspronkelijke auteurs: Jiajun Zhang, Zeyu Cui, Lei Zhang, Jian Yang, Jiaxi Yang, Qiang Liu, Zilei Wang, Binyuan Hui, Liang Wang, Junyang Lin

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat je een meesterkok bent (de AI) die werkt in een drukke keuken. Een lange tijd was de manier waarop we deze koks testten simpel: we gaven ze een half afgewerkt gerecht (de code vóór het ontbrekende deel) en een half afgewerkt gerecht erna (de code na het ontbrekende deel), en vroegen hen het midden in te vullen. Als het uiteindelijke gerecht goed smaakte (voldoet aan de unit tests), kreeg de kok een gouden ster.

Het Probleem: Het "Recept" Ontbrak
De auteurs van dit artikel beweren dat deze oude manier van testen gebrekkig is. In de echte wereld zegt een chef-kok niet alleen: "Vul het midden aan." Een chef-kok zegt: "Vul het midden aan, maar gebruik alleen vegetarische ingrediënten," of "Vul het midden aan, maar maak het precies drie regels lang," of "Vul het midden aan, maar gebruik een specifiek type mes."

Huidige AI-modellen zijn goed in het zorgen dat het gerecht lekker smaakt, maar ze negeren vaak de specifieke instructies over hoe het gemaakt moet worden. Ze gebruiken misschien vlees wanneer je om groenten vroeg, of schrijven een paragraaf wanneer je om één regel vroeg. De oude tests merkten dit niet op omdat ze alleen controleerden of het eten eetbaar was, niet of de kok de opdracht opvolgde.

De Oplossing: C3-Bench (De "Instructie-Opvolging" Test)
Om dit op te lossen, heeft het team een nieuwe test gemaakt genaamd C3-Bench (Controllable Code Completion Benchmark). Zie dit als een nieuwe, veel strengere kookwedstrijd.

In plaats van alleen te vragen om een ontbrekend stuk code, komt elke test in C3-Bench met een specifieke, fijnmazige instructie. Ze hebben deze instructies onderverdeeld in twee hoofdcategorieën:

  1. De "Hoe-te-doen" Instructies (Implementatie-controle):
    • Analogie: "Bouw een brug, maar je moet een hangbrugontwerp gebruiken, geen liggerontwerp."
    • De AI moet code schrijven die werkt en een specifieke stijl, algoritme of structuur volgt. Bijvoorbeeld: "Sorteer deze lijst met behulp van een specifieke sorteermethode" of "Behandel fouten op deze specifieke manier."
  2. De "Grootte" Instructies (Schaal-controle):
    • Analogie: "Schrijf een zin die precies 10 woorden lang is," of "Schrijf een paragraaf die precies 3 zinnen bevat."
    • De AI moet code genereren die binnen een strikte grootte limiet past, zoals precies 5 regels code of een specifiek blok logica, niet meer en niet minder.

Wat Ze Hebben Ontdekt
Het team heeft meer dan 40 verschillende AI-modellen (zowel gratis, open-source modellen als dure, gesloten modellen) getest op deze nieuwe test. Dit is wat zij ontdekten:

  • De "Overmoedige" Open-Source Modellen: Op de oude tests presteerden veel gratis, open-source AI-modellen net zo goed als de dure, topmodellen. Echter, op deze nieuwe C3-Bench hadden ze grote moeite. Het blijkt dat ze de oude tests hadden "uit het hoofd geleerd", maar niet echt wisten hoe ze complexe instructies moesten opvolgen. Ze waren als studenten die het antwoordmodel uit hun hoofd hadden geleerd, maar niet in staat waren een nieuw probleem met een draai te lossen.
  • De Kloof: Er is een enorme kloof tussen modellen die gewoon "code werkend kunnen krijgen" en modellen die "code precies zo werkend kunnen krijgen als je dat vraagt." Zelfs sommige van de slimste, duurste modellen hadden moeite met de "Grootte" instructies (zoals het schrijven van precies het juiste aantal regels).
  • De Fix: De auteurs hebben niet alleen naar het probleem gewezen; ze hebben een oplossing gebouwd. Ze hebben een pipeline ontwikkeld om automatisch duizenden nieuwe trainingsvoorbeelden te genereren waarbij een AI code schrijft en een specifieke instructie opvolgt. Ze hebben deze data gebruikt om een nieuwe versie van hun model te trainen, genaamd Qwen2.5-Coder-C3.
  • Het Resultaat: Dit nieuwe model werd de beste in het opvolgen van instructies bij code-completie, waarbij het bijna iedereen versloeg op de nieuwe test, terwijl het nog steeds goed was in de oude tests.

De Kernboodschap
Dit artikel introduceert een nieuwe manier om AI-coderingsvaardigheden te meten die er echt toe doet voor echt wereldgebruik: Kan de AI luisteren?

Ze ontdekten dat veel huidige AI-modellen als getalenteerde muzikanten zijn die de juiste noten spelen, maar de tempoveranderingen van de dirigent negeren. Door deze nieuwe benchmark en een methode te creëren om modellen beter te leren luisteren, helpen de auteurs ontwikkelaars bij het bouwen van AI-tools die niet alleen code schrijven, maar de juiste code schrijven volgens de specifieke, gedetailleerde behoeften van de gebruiker. Ze hebben al hun data en modellen beschikbaar gesteld zodat anderen ze kunnen gebruiken en verbeteren.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →