Add settings field documentation to recipe guides (#3809)
This commit is contained in:
@@ -79,6 +79,7 @@ Goose automatically adds metadata fields to recipes saved from the Desktop app.
|
|||||||
| `prompt` | String | A template prompt that can include parameter substitutions; required in headless (non-interactive) mode |
|
| `prompt` | String | A template prompt that can include parameter substitutions; required in headless (non-interactive) mode |
|
||||||
| `parameters` | Array | List of parameter definitions |
|
| `parameters` | Array | List of parameter definitions |
|
||||||
| `extensions` | Array | List of extension configurations |
|
| `extensions` | Array | List of extension configurations |
|
||||||
|
| `settings` | Object | Configuration for model provider, model name, and other settings |
|
||||||
| `sub_recipes` | Array | List of sub-recipes |
|
| `sub_recipes` | Array | List of sub-recipes |
|
||||||
| `response` | Object | Configuration for structured output validation |
|
| `response` | Object | Configuration for structured output validation |
|
||||||
| `retry` | Object | Configuration for automated retry logic with success validation |
|
| `retry` | Object | Configuration for automated retry logic with success validation |
|
||||||
@@ -165,6 +166,38 @@ extensions:
|
|||||||
description: "For searching logs using Presidio"
|
description: "For searching logs using Presidio"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Settings
|
||||||
|
|
||||||
|
The `settings` field allows you to configure the AI model and provider settings for the recipe. This overrides the default configuration when the recipe is executed.
|
||||||
|
|
||||||
|
### Settings Fields
|
||||||
|
|
||||||
|
| Field | Type | Description |
|
||||||
|
|-------|------|-------------|
|
||||||
|
| `goose_provider` | String | (Optional) The AI provider to use (e.g., "anthropic", "openai") |
|
||||||
|
| `goose_model` | String | (Optional) The specific model name to use |
|
||||||
|
| `temperature` | Number | (Optional) The temperature setting for the model (typically 0.0-1.0) |
|
||||||
|
|
||||||
|
### Example Settings Configuration
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
settings:
|
||||||
|
goose_provider: "anthropic"
|
||||||
|
goose_model: "claude-3-5-sonnet-latest"
|
||||||
|
temperature: 0.7
|
||||||
|
```
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
settings:
|
||||||
|
goose_provider: "openai"
|
||||||
|
goose_model: "gpt-4o"
|
||||||
|
temperature: 0.3
|
||||||
|
```
|
||||||
|
|
||||||
|
:::note
|
||||||
|
Settings specified in a recipe will override your default Goose configuration when that recipe is executed. If no settings are specified, Goose will use your configured defaults.
|
||||||
|
:::
|
||||||
|
|
||||||
## Sub-Recipes
|
## Sub-Recipes
|
||||||
|
|
||||||
The `sub_recipes` field specifies the [sub-recipes](/docs/guides/recipes/sub-recipes) that the main recipe calls to perform specific tasks. Each sub-recipe in the array has the following structure:
|
The `sub_recipes` field specifies the [sub-recipes](/docs/guides/recipes/sub-recipes) that the main recipe calls to perform specific tasks. Each sub-recipe in the array has the following structure:
|
||||||
@@ -379,6 +412,11 @@ extensions:
|
|||||||
bundled: true
|
bundled: true
|
||||||
description: "Query codesearch directly from goose"
|
description: "Query codesearch directly from goose"
|
||||||
|
|
||||||
|
settings:
|
||||||
|
goose_provider: "anthropic"
|
||||||
|
goose_model: "claude-3-5-sonnet-latest"
|
||||||
|
temperature: 0.7
|
||||||
|
|
||||||
retry:
|
retry:
|
||||||
max_retries: 3
|
max_retries: 3
|
||||||
timeout_seconds: 30
|
timeout_seconds: 30
|
||||||
|
|||||||
@@ -82,11 +82,22 @@ goose run --recipe trip.yaml --params destination=Africa --params duration=14
|
|||||||
|
|
||||||
By default, Goose uses the `temperature` and `model` you've already chosen, which usually works just fine. But sometimes you might want more control. For example, when performing a subjective task like planning a trip, it can help to turn up the `temperature` setting. Think of temperature like a creativity dial - the higher it is, the more varied and unexpected the results. If the first suggestion isn't quite right, the user can just run the recipe again to get a new one.
|
By default, Goose uses the `temperature` and `model` you've already chosen, which usually works just fine. But sometimes you might want more control. For example, when performing a subjective task like planning a trip, it can help to turn up the `temperature` setting. Think of temperature like a creativity dial - the higher it is, the more varied and unexpected the results. If the first suggestion isn't quite right, the user can just run the recipe again to get a new one.
|
||||||
|
|
||||||
|
You can also specify which AI provider and model to use for a specific recipe:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
settings:
|
settings:
|
||||||
temperature: 0.8
|
goose_provider: "anthropic"
|
||||||
|
goose_model: "claude-3-5-sonnet-latest"
|
||||||
|
temperature: 0.8
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The available settings are:
|
||||||
|
- `goose_provider`: The AI provider (e.g., "anthropic", "openai")
|
||||||
|
- `goose_model`: The specific model name
|
||||||
|
- `temperature`: Controls creativity/randomness (0.0-1.0, higher = more creative)
|
||||||
|
|
||||||
|
These settings will override your default Goose configuration when this recipe runs.
|
||||||
|
|
||||||
## External Files
|
## External Files
|
||||||
|
|
||||||
Sometimes, you'll want to give the agent access to extra information without cramming all that data into the prompt. Instead of pasting everything in, you can keep the data in a separate file and point the recipe to it.
|
Sometimes, you'll want to give the agent access to extra information without cramming all that data into the prompt. Instead of pasting everything in, you can keep the data in a separate file and point the recipe to it.
|
||||||
|
|||||||
Reference in New Issue
Block a user