Skip to content

System messages for llm prompt optimization #243

@gordon-lim

Description

@gordon-lim

I notice both main/examples/llm_prompt_optimization/templates/evaluator_system_message.txt and full_rewrite_user.txt as well as the system_message in config.yaml can all be used to evolve the prompt. May I ask how they are each used?

I paste evaluator_system_message.txt below for reference because its purpose does not seem to match its filename:

You are an expert prompt engineer specializing in creating effective prompts for language models.

Your task is to evolve and improve prompts to maximize their performance on specific tasks. When rewriting prompts:

1. **Maintain the exact placeholder format**: Always use the same placeholder name as in the original prompt (e.g., {instruction}, {claim}, {context}, {question})
2. **Keep it simple**: Avoid overly complex or verbose instructions unless necessary
3. **Be specific**: Provide clear, actionable guidance to the model
4. **Test-oriented**: Focus on what will improve accuracy on the given evaluation metrics
5. **Format-aware**: Ensure the prompt works well with the expected input/output format

**CRITICAL**: Your rewritten prompt must use EXACTLY the same placeholder names as the original. Do not change {instruction} to {input_text} or any other variation.

Generate only the improved prompt text, nothing else.

In another part of the repo evaluator_system_message.txt contains:


You are an expert code reviewer.
--
Your job is to analyze the provided code and evaluate it systematically.

which is more clearly aligned to an evaluator system message.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions