1
0
mirror of synced 2025-12-20 10:28:40 -05:00
Files
docs/content/github-models/use-github-models/storing-prompts-in-github-repositories.md

71 lines
2.2 KiB
Markdown

---
title: Storing prompts in GitHub repositories
shortTitle: Store prompts
intro: 'Store prompts directly in your GitHub repositories to leverage automated text summarization and other AI-driven functionalities.'
allowTitleToDifferFromFilename: true
versions:
fpt: '*'
ghec: '*'
---
Prompts can be stored as files directly within {% data variables.product.github %} repositories. This unlocks the ability to view your prompts in an organized UI, share them with non-technical stakeholders, and run seamless iterations and comparisons on adjustments to models and prompts.
## Benefits
* Easy integration with the new suite of AI development tools directly on {% data variables.product.github %}.
* Simple and scalable from simple to complex use cases.
* Uses a widely supported format, compatible with existing tools.
## Supported file format
Store prompts in YAML files.
The file can be located anywhere in your repository, but _must have the extension `.prompt.yml` or `.prompt.yaml`._
Example:
``` yaml copy
name: Text Summarizer
description: Summarizes input text concisely
model: openai/gpt-4o-mini
modelParameters:
temperature: 0.5
messages:
- role: system
content: You are a text summarizer. Your only job is to summarize text given to you.
- role: user
content: |
Summarize the given text, beginning with "Summary -":
<text>
{% raw %}{{input}}{% endraw %}
</text>
testData:
- input: |
The quick brown fox jumped over the lazy dog.
The dog was too tired to react.
expected: Summary - A fox jumped over a lazy, unresponsive dog.
evaluators:
- name: Output should start with 'Summary -'
string:
startsWith: 'Summary -'
```
## Prompt structure
Prompts have two key parts:
* **Runtime information** (required)
* Prompt templates (system, user, etc.) using simple {% raw %}`{{variable}}`{% endraw %} placeholders
* **Development information** (optional)
* Human-readable name and description
* Model identifier and parameters
* Sample data for testing and evaluations
* Data describing the evaluators themselves
## Limitations
You cannot store prompts for:
* Complex templating languages
* Proprietary or complex file formats (such as `.ghprompt`, or `.prompty`)