మొత్తం ప్రోగ్రామ్‌ను మళ్లీ ఉత్పాదించకుండా AI కోడ్‌ను ఎలా సవరించగలదు?

ఉత్పాదక నమూనాలతో స్థానికీకృత కోడ్ మార్పుకు ఆచరణాత్మక పరిశోధన మార్గదర్శిని: ఏది స్థిరంగా ఉండాలి, ఏది మారవచ్చు, ఒక పరివర్తనను నిర్మాణ-పరిరక్షకమని పిలిచే ముందు ఏ ఆధారం అవసరం.

ఈ మార్గదర్శకాన్ని పంచుకోండిపంచుకోండి

అసలు సమస్య ఏమిటి

కోడ్ సవరణ అనేది చిన్న ప్రాంప్ట్‌తో చేసే కోడ్ ఉత్పాదన మాత్రమే కాదు. ఎడిటర్‌కు ఇప్పటికే ఉన్న కళాఖండం, ఉద్దేశించిన మార్పు, అంతర్నిహిత పరిరక్షణ ఒప్పందం అందుతాయి. అందువల్ల కేంద్ర ప్రశ్నకు రెండు పార్శ్వాలున్నాయి: ఏ ప్రాంతం మారవచ్చు, మిగతా భాగంలోని ఏ లక్షణాలు స్థిరంగా ఉండాలి?

ఈ మార్గదర్శకం AI-సహాయక సాఫ్ట్‌వేర్ సవరణలోకి ప్రవేశిస్తున్న సాంకేతిక పరిజ్ఞానం గల పాఠకుల కోసం. స్థానిక సవరణ అనే సహజ భావనను వాక్యనిర్మాణ, నిర్మాణ, అర్థ, క్రియాత్మక పరిరక్షణల బలమైన వాదనల నుంచి ఇది వేరు చేస్తుంది.

కేంద్ర భావన

పరిమిత పరిధిగల ఎడిటర్‌కు ఉత్పాదన లక్ష్యం మాత్రమే కాకుండా స్పష్టమైన పరిరక్షణ సరిహద్దు అవసరం.

ఏది స్థిరంగా ఉండాలి

ఇది పాఠ్య విస్తృతి, వ్యాకరణం, API సంతకం, AST ప్రాంతం, పరీక్ష ప్రవర్తన, ఆధారితత్వ ఒప్పందం లేదా అభ్యసిత స్థూల ప్రతినిధ్యం కావచ్చు. ప్రతి ఎంపిక స్థిరత్వానికి సంబంధించిన వేరొక భావనను కాపాడుతుంది.

ఏది మారవచ్చు

అభ్యర్థించిన కార్యాన్ని పరిష్కరించేందుకు సవరించదగిన ప్రాంతానికి తగినంత స్వేచ్ఛ అవసరం. అన్నింటినీ నకలు చేసే నియంత్రణ పద్ధతి స్థిరంగా ఉన్నా నిరుపయోగం; అన్నింటినీ తిరిగి రాసే పద్ధతి స్థానికత లేని స్వేచ్ఛను మాత్రమే ఇస్తుంది.

సహజంగా అర్థమయ్యే నమూనా: ఒక గదిని నవీకరించండి, భవనాన్ని పరిరక్షించండి

భారాన్ని మోసే నిర్మాణం, నీటి గొట్టాల అనుసంధానాలు, పక్క గదులు చెక్కుచెదరకుండా ఒక గదిని పునరుద్ధరిస్తున్నట్లు ఊహించండి. సంపూర్ణ పునరుత్పాదన అంటే మాటల వివరణ ఆధారంగా ఇంటినంతటినీ తిరిగి నిర్మించడం వంటిది. స్థానికీకృత సవరణలో బదులుగా రక్షిత నిర్మాణాన్ని గుర్తించి, పరిమిత కార్యప్రాంతాన్ని తెరిచి, మార్పు చేసి, అంగీకరించే ముందు ఫలితాన్ని పరిశీలిస్తారు.

ఉపమానం వర్తించని స్థానం. అభ్యసించిన గుప్త కోడ్ ధ్రువీకృత నిర్మాణ ప్రణాళిక కాదు. స్థూల కోడ్‌ను స్థిరపరచడం కొలిచిన నిర్మాణ స్థిరత్వాన్ని పెంచవచ్చు; అయితే నిర్దిష్ట AST నోడ్, ప్రవర్తన లేదా ఇంటర్‌ఫేస్ మారకుండా ఉంటుందని అది హామీ ఇవ్వదు.

పాక్షిక పునరుత్పాదనపై మరింత కచ్చితమైన దృక్కోణం

ఒక ఎన్‌కోడర్ ప్రోగ్రామ్‌ను మ్యాప్ చేయనివ్వండి x నిర్మాణబద్ధ గుప్త ప్రతినిధ్యానికి z. పరిరక్షణ మాస్క్ స్థానాలను ఎంచుకుంటుంది L స్థిరంగా ఉంచడానికి. ఉత్పాదకం పరిపూరక స్థానాల నుంచే నమూనాలను తీసుకుంటూ అమలు చేస్తుంది z'ₗ = zₗ లాక్ చేసిన ప్రతి స్థానానికి. అనంతరం డీకోడర్ పూర్తయిన ప్రాతినిధ్యాన్ని మ్యాప్ చేస్తుంది z' తిరిగి మూల కోడ్‌కు.

ఈ యంత్రాంగం టోకెన్‌లకు ఎగువన పరిశీలనీయ నియంత్రణ ఉపరితలాన్ని సృష్టిస్తుంది. దాని అర్థాన్ని ఇంకా అనుభవాధారంగా స్థాపించాలి: డీకోడింగ్ అనంతరం లాక్ చేసిన స్థానాలు దేనిని పరిరక్షిస్తాయో, సవరించగల స్థానాలు తగినంత స్వేచ్ఛను నిలుపుకుంటాయో పరిశోధకులు పరీక్షించాలి.

నాలుగు దశల సవరణ కార్యప్రవాహం

  1. సరిహద్దును నిర్దేశించండి

    రక్షిత ప్రాంతాలు లేదా లక్షణాలను గుర్తించి, ఉద్దేశించిన మార్పును నిర్వచించండి.

  2. ఆర్టిఫాక్ట్‌కు ప్రాతినిధ్యం కల్పించండి

    పాఠ్యం, వాక్యనిర్మాణం, పునరుద్ధరణ సందర్భం లేదా స్థూల, సూక్ష్మ అభ్యసిత కోడ్‌లను ఉపయోగించండి.

  3. ఎంపికాత్మకంగా పునర్జననం చేయండి

    ఎంచుకున్న నిర్బంధాలను కొనసాగిస్తూ, సవరించదగిన స్థానాలను మాత్రమే శాంపిల్ చేయండి.

  4. ఆమోదించే ముందు ధ్రువీకరించండి

    స్థానికత, వాక్యనిర్మాణం, నిర్మాణం, ప్రవర్తన, అనుద్దేశిత దుష్ప్రభావాలను కొలవండి.

కోడ్ సవరణ, ప్రోగ్రామ్ మరమ్మతు, నిర్బంధిత ఉత్పాదన ఒకే కార్యం కావు

విధానంప్రధాన లక్ష్యంసాధారణ పరిరక్షణ యంత్రాంగంఇంకా దేనిని ధ్రువీకరించాలి
సంపూర్ణ కోడ్ ఉత్పాదనసంపూర్ణ ఆర్టిఫాక్ట్‌ను రూపొందించండిప్రాంప్ట్ మరియు సందర్భంఅభ్యర్థించిన మార్పు పరిధికి వెలుపల ఉన్న ప్రతిదీ
స్వయంచాలిత ప్రోగ్రామ్ మరమ్మత్తునిర్ధారించిన లోపాన్ని తొలగించండిదోష స్థాన నిర్ధారణ, పరీక్షలు, మూసలు లేదా ప్యాచ్‌లుఅందుబాటులోని పరీక్షలకు అతీతమైన సరిదనం, ప్యాచ్ కనిష్ఠత
ఖాళీ-పూరణ లేదా సవరణ నమూనాలుఎంచుకున్న పాఠ్య ప్రాంతాలను సవరించండికనిపించే ఉపసర్గ, ప్రత్యయం, diff లేదా సవరణ సందర్భంఉద్దేశించని నిర్మాణాత్మక, ప్రవర్తనా మార్పులు
వ్యాకరణ-నిర్బంధిత డీకోడింగ్అవుట్‌పుట్‌లను ఔపచారిక భాష పరిధిలో ఉంచండివ్యాకరణబద్ధమైన డీకోడింగ్ స్థితులుప్రోగ్రామ్ అర్థం, కార్య శుద్ధత, స్థానికత్వం
శ్రేణీకృత గుప్త నియంత్రణఎంచుకున్న అభ్యసిత స్థానాలను పునర్జననం చేయండిస్థిరపరచిన స్థూల లేదా సూక్ష్మ గుప్త కోడ్‌లుడీకోడింగ్ అనంతరం ఆ కోడ్‌లు పరిరక్షించేది ఏమిటి

స్థానికతను, నిర్మాణ పరిరక్షణను ఎలా కొలవాలి

ప్రాంతం వెలుపలి మార్పు
కోరిన సవరణకు వెలుపలి diff‌ను కొలవండి. తక్కువ విలువ స్థానికతకు మద్దతిస్తుంది; అయితే కేవలం నకలు చేయడం విజయంగా పరిగణించబడదు.
సవరించగల ప్రాంత స్వేచ్ఛ
అన్‌లాక్ చేసిన ప్రాంతం నిజంగా మారుతుందా, అలాగే అనేక చెల్లుబాటు అయ్యే అభ్యర్థులు ఇంకా సాధ్యంగా ఉంటారా అనేది కొలవండి.
వాక్యనిర్మాణం, వ్యాకరణం
పార్స్ రేటు లేదా వ్యాకరణ చెల్లుబాటు వికృత అవుట్‌పుట్‌ను గుర్తిస్తుంది; కానీ అది ఒక్కటే ప్రవర్తన గురించి ఏమీ తెలపదు.
నిర్మాణ స్థిరాంకాలు
కార్యం స్థిరంగా ఉండాలని నిర్దేశించిన సిగ్నేచర్‌లు, AST విస్తృతులు, నియంత్రణ ప్రవాహం, దత్తాంశ ప్రవాహం, ఇంపోర్ట్‌లు లేదా APIలను పోల్చండి.
క్రియాత్మక సాక్ష్యం
ఆ ఆర్టిఫాక్ట్‌లు అందుబాటులో ఉన్నప్పుడల్లా పరీక్షలు, స్టాటిక్ తనిఖీలు, కంపైలేషన్, కార్య-నిర్దిష్ట ప్రవర్తనా మూల్యాంకనాన్ని అమలు చేయండి.
వైవిధ్యం మరియు అనిశ్చితి
స్థిరత్వాన్ని మోడ్ కొలాప్స్‌గా పొరబడకుండా, అభ్యర్థుల విశిష్టతను మరియు పునరావృత రన్‌ల వ్యత్యాసాన్ని నివేదించండి.

సవరణ కార్యానికి ఏ నియంత్రణ ఉపరితలం సరిపోతుంది?

“మొత్తం ఫంక్షన్‌ను తిరిగి రాయవద్దు” అనేది ఒక ఆవశ్యకత మాత్రమే, సంపూర్ణ పద్ధతి కాదు. ముందుగా ఊహించగలగాల్సిన ఫలితాన్ని నిర్ణయించి, ఆపై తగిన నియంత్రణ ఉపరితలాన్నీ దానికి సరిపోయే ఆధారాన్నీ ఎంచుకోండి.

అవసరమైన హామీమెరుగ్గా సరిపోలిన నియంత్రణ ఉపరితలంకోరవలసిన సాక్ష్యం
AI-సహాయక ప్రవర్తన-పరిరక్షక రీఫ్యాక్టరింగ్ఒక LLM పరివర్తనను గుర్తించనివ్వండి లేదా ప్రతిపాదించనివ్వండి; సాధ్యమైన చోట విశ్వసనీయ రీఫ్యాక్టరింగ్ ఇంజిన్‌తో దాన్ని అమలు చేయండి. చూడండి: RefactoringMirror.కంపైలేషన్, పరీక్షలు, స్థిర విశ్లేషణ తనిఖీలు, రీఫ్యాక్టరింగ్ గుర్తింపు. SWE-Refactor ఈ తనిఖీలను రిపాజిటరీ స్థాయిలో స్పష్టంగా నిర్దేశిస్తుంది.
మొత్తం ఫంక్షన్‌ను తిరిగి రాయకుండా స్థానికీకృత కోడ్ మార్పుమార్పులేని సోర్స్ భాగాలను పునర్వినియోగించి, అభ్యర్థి సవరణ ప్రాంతాలను మాత్రమే జననం చేయండి; ఉదాహరణకు EfficientEdit.ప్రాంతం వెలుపలి diff, కార్యసాఫల్యం, ఆమోదించిన టోకెన్‌ల పునర్వినియోగం, అలాగే వదిలివేసిన సందర్భం వల్ల ఫైళ్ల మధ్య మార్పులు గుర్తించబడకుండా పోతున్నాయా అనేవి.
సాఫ్ట్‌వేర్ ఇంజినీరింగ్ కోసం నిర్బంధిత కోడ్ ఉత్పాదనడీకోడింగ్ సమయంలో, కింది సందర్భంలో వలె, ఒక సాంప్రదాయిక లక్షణాన్ని తప్పనిసరి చేయండి వ్యాకరణ-నిర్బంధిత డిఫ్యూషన్, లేదా చెల్లుబాటయ్యే ఉపసర్గలను చెక్‌పాయింట్ చేసి, బాధ్యత వహించే ప్రాంతానికే వెనక్కి మళ్లించవచ్చు; ఉదాహరణకు Hydra.వ్యాకరణం, కంపైలర్ లేదా టైప్-చెకర్ విజయంతో పాటు క్రియాత్మక పరీక్షలు, స్థానికత, మరమ్మతు ఆలస్యం, పునరుత్పాదించిన చెల్లుబాటు అయ్యే కోడ్ పరిమాణం.
స్థానికత–వైవిధ్య సమతుల్యతతో ఎంపికాత్మక Python-ఫంక్షన్ పునరుత్పాదనఎంచుకున్న స్థూల లేదా సూక్ష్మ గుప్త స్థానాలను స్థిరపరచి, మిగిలిన వాటినుంచే నమూనాలు సేకరించండి.డీకోడ్ చేసిన స్థానికత, వాక్యనిర్మాణం, నిర్మాణ స్థిరాంకాలు, సవరణ స్వేచ్ఛ, వైవిధ్యం, అనిశ్చితి. గుప్త స్థానాల లాకింగ్ ఒక్కటే రీఫ్యాక్టరింగ్‌కు హామీ కాదు.
స్పష్టమైన పరిరక్షణ ఒప్పందం కింద అంచనా వేయదగిన కోడ్ ఉత్పత్తిఉత్పాదనకు ముందే పరిశీలనీయ పరిరక్షిత లక్షణాలను, ఉత్తీర్ణ/విఫల తనిఖీలను నిర్వచించి, వాటిని నిర్బంధించగల లేదా వెల్లడించగల అత్యంత పరిమిత యంత్రాంగాన్ని ఎంచుకోండి.డీకోడింగ్ అనంతరం అవే నిర్దిష్ట లక్షణాలను కొలిచి, పునరావృత అమలులలో ఆమోద, తిరస్కరణ, వైఫల్య రేట్లను నివేదించండి. నిర్ణీత నమూనీకరణ ఒక్కటే పరిరక్షణకు హామీ కాదు.

ఈ మార్గదర్శకం సమాధానమిచ్చే పరిశోధనా ప్రశ్నలు

ఈ సంక్షిప్త సమాధానాలు ఈ మార్గదర్శకం అంతటా అనుసరించిన వాదనల, సాక్ష్యాల సరిహద్దులను నిర్వచిస్తాయి.

  1. మొత్తం ఫంక్షన్‌ను తిరిగి రాయకుండానే ఉత్పాదక నమూనా కోడ్‌ను ఎలా మార్చగలదు?

    ఉత్పాదనకు ముందే సవరణ పరిమితిని నిర్వచించి, దాని వెలుపలి మూలాన్ని పరిరక్షించండి లేదా పునర్వినియోగించండి; అభ్యర్థి మార్పులను మాత్రమే ఉత్పత్తి చేసి, కార్యంలో విఫలమయ్యే లేదా పరిరక్షిత ప్రాంతాలను మార్చే అవుట్‌పుట్‌లను తిరస్కరించండి. క్రమానుగత గుప్త లాకింగ్ ఒక ప్రయోగాత్మక నియంత్రణ అంతర్ముఖమే గానీ, ఒకే మూల విస్తృతులకు హామీ ఇవ్వదు. స్థానికీకృత సవరణ నియంత్రణ అంతర్ముఖాలను పోల్చండి.

  2. కోడ్ సవరణ కేవలం వాక్యనిర్మాణపరంగా చెల్లుబాటు కావడమే కాక స్థానికమైనదని ఏ సాక్ష్యం చూపుతుంది?

    కోరిన ప్రాంతానికి వెలుపలి diff‌ను కార్యసాఫల్యం, సవరించదగిన ప్రాంతంలోని మార్పు, నిర్మాణాత్మక అవికారాలు, పరీక్షలు లేదా స్థిర తనిఖీలు, పునరావృత అమలుల వ్యత్యాసంతో కలిపి కొలవండి. పార్స్ రేటు ఒక్కటే వాక్యనిర్మాణ సుస్వరూపతను మాత్రమే నిర్ధారిస్తుంది. స్థానికత్వ సాక్ష్య తనిఖీ జాబితాను సమీక్షించండి.

  3. కోడ్-సవరణ స్థానికతను ఉత్పాదన వైవిధ్యంతో ఎలా సమతుల్యం చేయాలి?

    సవరించదగిన ప్రాంతంలోని స్వేచ్ఛ, అభ్యర్థుల విశిష్టతతోపాటు సంరక్షిత-ప్రాంత స్థిరత్వాన్ని నివేదించండి. ఇన్‌పుట్‌ను నకలు చేయడం కార్యంలో ఏ పురోగతీ లేకుండానే స్థిరత్వాన్ని గరిష్ఠం చేయవచ్చు; అనియంత్రిత పునర్లేఖనం స్థానికత్వాన్ని నాశనం చేస్తూ మార్పును గరిష్ఠం చేయవచ్చు. పరిమిత స్థిరత్వం–స్వేచ్ఛ ఆధారాలను చూడండి.

  4. స్థానికీకృత కోడ్ సవరణ, నియంత్రిత ఉత్పాదన, ప్రోగ్రామ్ మరమ్మత్తు—వీటి మధ్య తేడాలు ఏమిటి?

    స్థానికీకృత సవరణ మారకుండా ఉండవలసిన అంశాలను ప్రధానంగా పరిగణిస్తుంది; నియంత్రిత ఉత్పాదన వ్యాకరణ సభ్యత్వం వంటి ఔపచారిక అవుట్‌పుట్ లక్షణాన్ని అమలు చేస్తుంది; ప్రోగ్రామ్ మరమ్మత్తు మాత్రం మార్పు లోప లేదా కార్య నిర్దేశాన్ని సంతృప్తిపరచాలని కోరుతుంది. వాక్యనిర్మాణం ఒక్కటే అర్థసమానత్వాన్ని, క్రియాత్మక శుద్ధతను, కార్య విజయాన్ని లేదా స్థానికతను నిరూపించదు. మూడు లక్ష్యాలను పోల్చండి.

  5. Python ఫంక్షన్‌లో ఎంచుకున్న భాగాలను మాత్రమే మళ్లీ ఉత్పాదిస్తూ, మిగిలిన భాగాలను స్థిరంగా ఎలా ఉంచవచ్చు?

    ఉత్పాదనకు ముందే పరిరక్షిత, సవరించదగిన ప్రాంతాలను నిర్వచించి, సవరించదగిన నిరూపణను మాత్రమే మార్చి డీకోడ్ చేయండి; పరిరక్షిత కోడ్‌ను మార్చే లేదా వాక్యనిర్మాణం, పరీక్షలు, స్థిర విశ్లేషణ తనిఖీలు, కార్య-నిర్దిష్ట స్థిరాంకాల్లో విఫలమయ్యే అభ్యర్థులను తిరస్కరించండి. నివేదించిన క్రమానుగత-గుప్త ప్రయోగం 64-టోకెన్ ఫంక్షన్‌లపై సంభావ్యతాత్మక స్థిరత్వాన్ని కొలుస్తుంది; మారని విస్తృతులు లేదా ప్రవర్తనకు హామీ ఇవ్వదు. ఎంపికాత్మక పునరుత్పాదన కార్యప్రవాహాన్ని పరిశీలించండి.

  6. AI-సహాయక ప్రవర్తన-పరిరక్షక రీఫ్యాక్టరింగ్‌కు ఏ నియంత్రణ వ్యూహం సరిపోతుంది?

    రూపాంతరాన్ని గుర్తించడానికి లేదా ప్రతిపాదించడానికి నమూనాను ఉపయోగించి, సాధ్యమైన చోట విశ్వసనీయ రీఫ్యాక్టరింగ్ ఇంజిన్‌తో దాన్ని అమలు చేయండి; కంపైలేషన్, పరీక్షలు, స్థిర తనిఖీలు, ఉద్దేశిత రీఫ్యాక్టరింగ్‌ను ధ్రువీకరించండి. నమ్మదగినట్లు కనిపించే ఉత్పాదిత ప్యాచ్ మాత్రమే తగిన సాక్ష్యం కాదు. రీఫ్యాక్టరింగ్ నిర్ణయ వరుసను తెరవండి.

  7. కోడ్ ఉత్పాదనను కేవలం నియంత్రించగలదిగా కాక ముందుగా అంచనా వేయగలదిగా చేసేది ఏమిటి?

    ఉత్పాదకాన్ని ఎంచుకునే ముందే పరిశీలించదగిన పరిరక్షణ ఒప్పందాన్ని, ఆమోద తనిఖీలను పేర్కొనండి. ఊహించదగినత అనేది ప్రాంప్ట్, మాస్క్, వ్యాకరణం లేదా గుప్త కోడ్‌ను స్థిరపరిచారా అనే దానిపైనే కాక, డీకోడింగ్ మరియు ధ్రువీకరణ తరువాత ఏది స్థిరంగా నిలిచిందనే దానిపై ఆధారపడుతుంది. పరిరక్షణ ఒప్పందాన్ని నిర్వచించండి.

ప్రస్తుత ప్రయోగం చూపేది—చూపనిది

లో నిర్మాణ-పరిరక్షక సాఫ్ట్‌వేర్ పునరుత్పాదనకు పరిశీలనయోగ్య నియంత్రణ, శ్రేణీకృత VQ-VAE 64-టోకెన్ Python ఫంక్షన్‌లను 16 ఉన్నత-స్థాయి, 32 దిగువ-స్థాయి విచ్ఛిన్న స్థానాలకు మ్యాప్ చేస్తుంది. నాలుగు ఉన్నత-స్థాయి కోడ్‌లను లాక్ చేయడం వల్ల పార్స్ రేటు ఇక్కడి నుంచి పెరుగుతుంది 0.453 నుంచి 0.591 వరకు, అయితే లాక్ చేయని స్థానాలు ఇప్పటికీ ఈ రేటుతో మారుతాయి: 0.936 మరియు షరతులతో కూడిన నమూనాలు ఇలా కొనసాగుతాయి 0.998 విశిష్టం.

ఇది ఒక చిన్న సందర్భంలో కొలిచిన స్థిరత్వం–స్వేచ్ఛ సమన్వయానికి సాక్ష్యం. ఖచ్చితమైన AST పరిరక్షణ, అర్థ సమానత్వం, క్రియాత్మక సరిదిద్దత, విజయవంతమైన మరమ్మతు లేదా రిపాజిటరీ-స్థాయి ప్రవర్తనకు హామీ కాదు.

అనుబంధ అధ్యయనం సంపీడిత స్వల్ప-పాఠ్య ఉత్పాదనలో నాణ్యత ఎక్కడ క్షీణిస్తుంది ఒక ముఖ్యమైన మూల్యాంకన పాఠాన్ని జోడిస్తుంది: మెరుగైన గుప్త-స్థల ప్రత్యామ్నాయ ప్రమాణాలు తప్పనిసరిగా డీకోడ్ అవుట్‌పుట్‌లను మెరుగుపరచవు. ప్రాతినిధ్యం, ఉత్పాదన, డీకోడ్ ప్రవర్తనలను వేర్వేరు దశలుగా తనిఖీ చేయాలి.

పునర్వినియోగించగల నిర్ణయ విధానం కోసం, దీనిపై ఉన్న అనుబంధ మార్గదర్శిని చూడండి కోడెక్ నష్టాన్ని ఉత్పాదక నష్టం నుంచి వేరు చేయడం.

సాధారణ అపార్థాలు

“ఇది పార్స్ అవుతోంది, కాబట్టి సరైనదే.”

పార్సింగ్ వాక్యనిర్మాణ సుస్వరూపతను మాత్రమే నిరూపిస్తుంది. అయినప్పటికీ ప్రోగ్రామ్ పరీక్షలు, ఒప్పందాలు లేదా ఉద్దేశాన్ని ఉల్లంఘించవచ్చు.

“స్థూల కోడ్ అంటే AST నోడ్.”

స్పష్టమైన సమన్వయం నిరూపించబడితే తప్ప కాదు. అభ్యసించిన కోడ్‌లు అనేక ఉపరితల, నిర్మాణాత్మక కారకాలను కలగలపవచ్చు.

“లాక్ చేసిన గుప్త చరరాశులంటే మారని మూల పాఠ్యం.”

డీకోడింగ్ సమగ్రంగా జరిగే అభ్యసిత ప్రక్రియ. స్థిరపరిచిన గుప్త స్థానాలు ఒకే పాఠ్య విస్తృతికి హామీ ఇవ్వకుండానే స్థిరత్వాన్ని పెంచగలవు.

“తక్కువ మార్పు ఎల్లప్పుడూ మెరుగైనదే.”

ఇన్‌పుట్‌ను నకలు చేసే ఎడిటర్ సంపూర్ణ స్థిరత్వాన్ని సాధించినా, కార్య పురోగతి శూన్యం. స్థానికతనూ సవరణ విజయాన్నీ కలిపి కొలవాలి.

తదుపరి చదవాల్సినవి

సమీప సంబంధిత పరిశోధనలు భిన్న నియంత్రణ ఉపరితలాలను ఉపయోగిస్తాయి; కార్య సమన్వయం లేకుండా వాటిలో దేనినీ పరస్పరం మార్చుకోదగిన ప్రామాణిక ఆధారంగా పరిగణించరాదు.

  1. Self-Edit: Fault-Aware Code Editor for Code Generation

    ఉత్పాదనను సవరించగల ప్రక్రియగా పరిగణించి, గుర్తించిన లోపాలతో దిద్దుబాటును నిర్దేశిస్తుంది.

  2. Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing

    ప్రతి సవరణ దశలో మొదటి నుంచి పునరుత్పత్తి చేయకుండా, దశల మధ్య సందర్భానుసార కోడ్ మార్పులను నమూనీకరిస్తుంది.

  3. PAFT: Preservation Aware Fine-Tuning for Minimal-Edit Program Repair

    ప్రోగ్రామ్-మరమ్మత్తు శిక్షణలో పరిరక్షణను, కనిష్ఠ మార్పును స్పష్టంగా నిర్దేశిస్తుంది.

  4. Constrained Decoding of Diffusion LLMs with Context-Free Grammars

    వ్యాప్తి డీకోడింగ్ సమయంలో లాంఛనప్రాయ నిర్బంధాలు వాక్యనిర్మాణ హామీలను ఎలా అందించగలవో చూపుతుంది.

  5. Neural Discrete Representation Learning

    అభ్యసిత విచ్ఛిన్న గుప్త ప్రాతినిధ్యాలకు పునాది యంత్రాంగమైన VQ-VAEను పరిచయం చేస్తుంది.

  6. Simple and Effective Masked Diffusion Language Models

    అనుబంధ నిర్ధారణాత్మక అధ్యయనంలో గుప్త జనకంగా ఉపయోగించిన మాస్క్‌డ్ వివిక్త డిఫ్యూషన్ చట్రాన్ని అందిస్తుంది.

  7. స్వయంచాలిత సాఫ్ట్‌వేర్ రీఫ్యాక్టరింగ్‌లో LLMల సామర్థ్యంపై అనుభవాధార అధ్యయనం

    LLM ప్రతిపాదించిన అసురక్షిత రీఫ్యాక్టరింగ్‌లను గుర్తించి, విశ్వసనీయ రీఫ్యాక్టరింగ్ ఇంజిన్‌ల ద్వారా గుర్తించిన పరివర్తనలను మళ్లీ వర్తింపజేయడాన్ని మూల్యాంకనం చేస్తుంది.

  8. SWE-Refactor: A Repository-Level Benchmark for Real-World LLM-Based Code Refactoring

    కంపైలేషన్, పరీక్షలు, రీఫ్యాక్టరింగ్ గుర్తింపు ఆధారంగా ప్రవర్తనను పరిరక్షించే రిపాజిటరీ-స్థాయి రీఫ్యాక్టరింగ్‌ను మూల్యాంకనం చేస్తుంది.

  9. EfficientEdit: సవరణ-కేంద్రీకృత ఊహాత్మక డీకోడింగ్ ద్వారా కోడ్ సవరణను వేగవంతం చేయడం

    సవరణను సంపూర్ణ ఆటోరిగ్రెసివ్ పునర్జననంగా పరిగణించకుండా, మార్పులేని సోర్స్ భాగాలను పునర్వినియోగించి సవరణ స్థానాలను అంచనా వేస్తుంది.

  10. Hydra: Efficient, Correct Code Generation via Checkpoint-and-Rollback Support

    లోపం అనంతరం ఇప్పటికే చెల్లుబాటయ్యే ఉపసర్గలను మళ్లీ ఉత్పత్తి చేయకుండా స్థిర తనిఖీ, చెక్‌పాయింట్లు, లక్ష్యిత రోల్‌బ్యాక్‌ను ఉపయోగిస్తుంది.

సంక్షిప్త పునశ్చరణ

స్థానికీకృత కోడ్ పునరుత్పాదన అనేది వీటి మధ్య ఒప్పందం: మార్పు మరియు పరిరక్షణ. ఆ ఒప్పందాన్ని వ్యక్తీకరించేందుకు శ్రేణీకృత విచ్ఛిన్న గుప్త చరరాశులు ఒక పరిశీలనయోగ్య మార్గాన్ని అందిస్తాయి; అయితే డీకోడ్ చేసిన ప్రోగ్రామ్‌లను స్థానికత, వాక్యనిర్మాణం, నిర్మాణం, ప్రవర్తన, వైవిధ్యం, అనిశ్చితి పరంగా మూల్యాంకనం చేసినప్పుడే ఆ ప్రాతినిధ్యం ఉపయోగకరం.

ఈ పరిశోధనా దిశలోని ప్రచురణలు