Prompt Engineering Guide
Mastering Debug code
on Gemini 2.0 Flash
Stop guessing. See how professional prompt engineering transforms Gemini 2.0 Flash's output for specific technical tasks.
The "Vibe" Prompt
"Hey Gemini, can you debug this code for me? It's not working, and I'm stuck. Here's the code:
```python
def calculate_average(numbers):
total = 0
for num in numbers:
total += num
return total / len(numbers)
my_list = [1, 2, '3', 4, 5]
print(calculate_average(my_list))
```
What's wrong with it?"
Low specificity, inconsistent output
Optimized Version
```json
{
"task": "DEBUG_CODE",
"context": "Python function `calculate_average` is intended to compute the average of a list of numbers. Input `my_list` contains mixed data types.",
"code_to_debug": """def calculate_average(numbers):
total = 0
for num in numbers:
total += num
return total / len(numbers)
my_list = [1, 2, '3', 4, 5]
print(calculate_average(my_list))""",
"error_observed": "TypeError: unsupported operand type(s) for +: 'int' and 'str'",
"debug_steps": [
"ANALYZE_ERROR_MESSAGE",
"IDENTIFY_CAUSE",
"PROPOSE_SOLUTION",
"PROVIDE_FIXED_CODE",
"EXPLAIN_FIX"
]
}
```
Structured, task-focused, reduced hallucinations
Engineering Rationale
The optimized prompt uses a JSON structure to clearly define the task, provide detailed context, explicitly state the code and observed error (if known), and guide the model through a chain of thought using 'debug_steps'. This structured approach forces the model to methodically analyze, identify, propose, and explain, leading to a more accurate and comprehensive debug. It also reduces ambiguity and allows the model to focus its processing on predefined steps rather than inferring the user's intent.
0%
Token Efficiency Gain
The optimized prompt explicitly asks for a step-by-step debugging process.
The optimized prompt provides the exact error message, which is crucial for debugging.
The optimized prompt clearly separates context, code, and desired output steps.
Ready to stop burning tokens?
Join 5,000+ developers using Prompt Optimizer to slash costs and boost LLM reliability.
Optimize My Prompts