with one click
llm-code-generation-survey
Skill for AI agent capabilities
Menu
Skill for AI agent capabilities
| name | llm-code-generation-survey |
| description | Skill for AI agent capabilities |
A comprehensive survey on Large Language Models for Code Generation, covering challenges, fine-tuning techniques, evaluation metrics, and applications. Enables users regardless of technical background to generate executable code from natural language descriptions.
Key Topics:
Source: arXiv:2503.01245v2 Utility: 0.92 Scope: Comprehensive survey of challenges, techniques, evaluation, and applications
| Challenge | Description | Solutions |
|---|---|---|
| Syntax Errors | Invalid code generation | AST-based validation |
| Semantic Errors | Logic bugs | Test-driven generation |
| Security | Vulnerable code | Security fine-tuning |
| Performance | Inefficient code | Performance benchmarks |
| Context | Missing dependencies | Context retrieval |
| Benchmark | Description | Languages |
|---|---|---|
| HumanEval | Function completion | Python |
| MBPP | Basic programming | Python |
| BigCodeBench | Large-scale evaluation | Multi-language |
| APPS | Competition problems | Python |
| CodeContests | Programming contests | Multi-language |
class CodeInstructionTuner:
def __init__(self, base_model, code_instructions):
self.model = base_model
self.instructions = code_instructions
def finetune(self, epochs=3):
for epoch in range(epochs):
for instruction, code in self.instructions:
prompt = f"""
# Task: {instruction}
# Generate code:
"""
loss = self.train_step(prompt, code)
class CodeRLHF:
def __init__(self, model, reward_model):
self.model = model
self.reward_model = reward_model
def train(self, prompts):
for prompt in prompts:
# Generate multiple code samples
codes = self.model.generate(prompt, n=4)
# Get human preferences
rewards = self.reward_model.score(codes)
# Update policy
self.update_policy(codes, rewards)
class CodePretrainer:
def __init__(self, model, code_corpus):
self.model = model
self.corpus = code_corpus
def pretrain(self):
for code_file in self.corpus:
# Next token prediction
loss = self.model.next_token(code_file)
# Fill-in-the-middle
masked = self.mask_code(code_file)
loss += self.model.fill_middle(masked)
def pass_at_k(predictions, test_cases, k=1):
"""
Calculate pass@k metric
k: number of attempts allowed
"""
for i in range(k):
code = predictions[i]
if all(execute(code, test) for test in test_cases):
return 1
return 0
| Metric | Description | Measurement |
|---|---|---|
| Correctness | Functional accuracy | pass@k |
| Readability | Code clarity | Style linters |
| Efficiency | Runtime performance | Benchmark execution |
| Security | Vulnerability count | Static analysis |
class CodeT5(nn.Module):
def __init__(self, encoder, decoder):
self.encoder = encoder
self.decoder = decoder
def forward(self, nl_description):
# Encode natural language
encoded = self.encoder(nl_description)
# Decode to code
code = self.decoder(encoded)
return code
class CodeLlama(nn.Module):
def __init__(self, transformer):
self.transformer = transformer
def generate(self, prompt, max_tokens=512):
tokens = self.tokenize(prompt)
for _ in range(max_tokens):
logits = self.transformer(tokens)
next_token = self.sample(logits)
tokens.append(next_token)
if next_token == EOS:
break
return self.detokenize(tokens)
| Model | Size | Training Data | Speciality |
|---|---|---|---|
| CodeLlama | 7B-34B | 500B tokens | Multi-language |
| StarCoder | 15B | 1T tokens | Permissive license |
| CodeGen | 2B-16B | CODEGEN-NL | Conversation |
| DeepSeek-Coder | 1.3B-33B | 2T tokens | Code completion |
| CodeT5+ | 220M-16B | CodeSearchNet | Understanding + Generation |
def complete_code(model, prefix, max_new_tokens=100):
prompt = f"# Context:\n{prefix}\n# Complete:\n"
completion = model.generate(prompt, max_new_tokens)
return completion
def translate_code(model, source_code, source_lang, target_lang):
prompt = f"""
# Translate from {source_lang} to {target_lang}:
```{source_lang}
{source_code}
```
"""
translated = model.generate(prompt)
return translated
def summarize_code(model, code):
prompt = f"""
# Generate a brief summary:
```
{code}
```
Summary:
"""
summary = model.generate(prompt, max_tokens=100)
return summary
def fix_bug(model, buggy_code, error_message):
prompt = f"""
# Buggy code:
```
{buggy_code}
```
# Error: {error_message}
# Fixed code:
"""
fixed = model.generate(prompt)
return fixed
| Tool | Integration | Use Case |
|---|---|---|
| GitHub Copilot | IDE plugin | Real-time completion |
| Codeium | Multi-IDE | Free alternative |
| Amazon CodeWhisperer | AWS integration | Cloud development |
| Tabnine | Enterprise | On-premise deployment |
User: I need to apply LLM Code Generation Survey to my analysis.
Agent: I'll help you apply llm-code-generation-survey. First, let me understand your specific use case...
Context: Code Completion
User: Complex analysis scenario
Agent: Based on the methodology, I'll guide you through the advanced application...
User: What are the key considerations for llm-code-generation-survey?
Agent: Let me search for the latest research and best practices...
Created: 2026-03-28 Source: arXiv:2503.01245v2 - "LLMs for Code Generation: A Comprehensive Survey"
Breakeven demonstration of quantum low-density parity-check (qLDPC) codes — first experimental evidence that qLDPC codes can achieve fault-tolerance breakeven on trapped-ion quantum hardware. Critical milestone for scalable quantum error correction. Activation: qLDPC, quantum error correction, breakeven, trapped-ion, fault tolerance, quantum coding, logical qubit, error suppression.
Arrovian impossibility theorem for Automated Market Maker (AMM) design. Proves no aggregation rule for weighted-product AMMs can be simultaneously fair and strategy-proof when n>2 liquidity providers. Key result: fairness forces mean-type aggregation (weighted Aitchison centroid) while strategy-proofness forces median-type; only single-provider dictatorship satisfies both. Obstruction vanishes at n=2. Applies to DeFi protocol design, mechanism design, and prediction markets. (arXiv: 2606.04959)
Architecture-aware quantum state preparation using Bucket Brigade QRAM (BBQRAM) with segment tree for polylogarithmic query time. Covers complex-valued matrix encoding, classical precomputation of rotation angles, and magnitude-then-phase procedures. Enables efficient data loading for quantum finance applications. Based on arXiv:2604.25644. Use when: designing QRAM-based quantum data loaders, optimizing state preparation for quantum finance, loading complex-valued financial data into quantum circuits, implementing efficient amplitude encoding with BBQRAM.
Distributional Portfolio Optimization (DPO) unified framework — organizing Bayesian, robust, chance-constrained, stochastic-allocation, and distributional RL portfolio methods through joint coupling Gamma_theta(dw,dr). Includes Wasserstein-CVaR duality, credible-radius calibration, and distributional Bellman contraction. Activation: distributional portfolio optimization, DPO, Wasserstein DRO, Bayesian portfolio, CVaR, credible radius, distributional reinforcement learning.
Critical analysis methodology for quantum data encoding — identifies how naive amplitude encoding (psi=sqrt(P)) abelianizes the Hilbert space and fails to achieve genuine quantum advantage in QML/finance. Advocates for Dynamical Hamiltonian Encoding (DHE) where data generates non-commutative evolution.
Portfolio Optimization with Mean-Variance-Spectrum Preferences