Overview
Prompts define the behavior you want to bake into your model. In bgit, prompts are configured in thePROMPT section of your input.yml file.
Configuration Fields
Teacher Prompt
The teacher prompt defines the expert behavior you want to bake into the model.Array of message objects defining the teacher prompt. Each message has:
role(string):"system","user", or"assistant"content(string): The message content
Student Prompt
The student prompt is what the model receives at inference time. It’s typically simpler than the teacher prompt, or can be empty for always-on behavior.Array of message objects defining the student prompt. Can be empty or contain simple messages.After baking, providing the student prompt (or empty string) makes the model respond as if it received the teacher prompt. Empty student prompts result in zero-token, always-on expert behavior.
Conversation History
You can include conversation history in your prompts by adding multiple messages with different roles. This is particularly useful for encoding behavior at specific workflow steps.Message role. Must be one of:
"system": System-level instructions"user": User input/questions"assistant": Assistant responses/examples
The message content text
- Encode behavior at specific workflow steps: Conversation history allows you to bake in behavior that occurs at a particular point in a multi-step workflow. For example, if your workflow involves gathering user requirements, then generating code, then reviewing it, you can encode how the model should respond at the “review” stage by including the conversation history leading up to that point.
- Provide examples of desired behavior: Include example conversations showing how you want the model to respond in similar situations.
- Show conversation patterns: Demonstrate multi-turn interaction patterns, such as how to handle follow-up questions or clarifications.
- Include context or background information: Add previous messages that provide necessary context for the model’s response.
Tools
Configure tools (function calling) for your prompts. Tools allow the model to call external functions during generation.Optional array of tool definitions. Each tool follows the OpenAI function calling format:
type(string, required): Must be"function"function(object, required): Function definition containing:name(string, required): Function namedescription(string, required): Function descriptionparameters(object, required): JSON Schema object defining function parameters:type(string, required): Must be"object"properties(object, required): Object mapping parameter names to their schemasrequired(array, optional): List of required parameter names
Complete Examples
The following examples show common prompt configuration patterns:Simple Always-On Behavior
With Conversation History
With Tools
With Student Prompt Trigger
When you provide a non-empty student prompt, the teacher behavior is only triggered when the student prompt is passed as a system prompt to the model at inference time:"Activate Python expert mode" as the system prompt. Without this trigger, the model behaves normally.
Field Reference Table
| Field | Type | Required | Description |
|---|---|---|---|
PROMPT.teacher.messages | Array | Yes | Teacher prompt messages |
PROMPT.teacher.tools | Array | No | Tool definitions for function calling |
PROMPT.student.messages | Array | No | Student prompt messages (can be empty) |
messages[].role | String | Yes | "system", "user", or "assistant" |
messages[].content | String | Yes | Message content text |
Best Practices
Use Empty Student for Always-On Behavior
Use Empty Student for Always-On Behavior
Set student content to
"" to bake behavior permanently into the model without needing any prompt at inference time.Keep Teacher Prompts Detailed
Keep Teacher Prompts Detailed
Teacher prompts should contain comprehensive instructions. The model learns to exhibit this behavior.
Use Conversation History for Workflow Steps
Use Conversation History for Workflow Steps
Include conversation history in teacher prompts to encode behavior at specific workflow steps or show desired interaction patterns.
Test Before Baking
Test Before Baking
Test your prompts with the base model first to ensure they produce the desired behavior before baking.