docs: Update docs for better installation and provider setups (#408)

Co-authored-by: Angie Jones <jones.angie@gmail.com>
This commit is contained in:
Adewale Abati
2024-12-05 13:39:51 +01:00
committed by GitHub
parent 2c9ad73281
commit 8531777aa0
4 changed files with 161 additions and 92 deletions

View File

@@ -1,15 +1,99 @@
# Providers
Providers in Goose mean "LLM providers" that Goose can interact with. Providers are defined in the [Exchange library][exchange-providers] for the most part, but you can define your own.
Providers in Goose mean "LLM providers" that Goose can interact with. Providers are defined in the [Exchange library][exchange-providers] for the most part, but you can define your own.
**Currently available providers:**
As you configure your chosen provider, you add the models you want to use to the `~/.config/goose/profiles.yaml` file and you can set any necessary environment variables or API keys in your terminal. For example:
```sh
export PROVIDER_API_KEY="your_api_key_here"
```
* Anthropic
* Azure
* Bedrock
* Databricks
* Google
* Ollama
* OpenAI
## Currently Available Providers
[exchange-providers]: https://github.com/block/goose/tree/main/packages/exchange/src/exchange/providers
### Anthropic
To use Anthropic, you need an API key, which you can obtain by signing up or logging into [Anthropic's platform](https://www.anthropic.com/). Once you have your API key and your `profiles.yaml` file updated to the provider, you can set the `ANTHROPIC_API_KEY` environment variable in your shell using:
```sh
export ANTHROPIC_API_KEY="your_api_key_here"`.
```
```yaml title="profiles.yaml"
default:
provider: anthropic
processor: claude-3-5-sonnet-20241022
accelerator: claude-3-5-sonnet-20241022
```
### Azure
Azure AI services provide API keys through the Azure Portal. Visit the [Azure Portal](https://portal.azure.com/) to create a resource and obtain your key. You will need to configure Goose by updating your profile and setting appropriate environment variables.
```yaml title="profiles.yaml"
default:
provider: azure
processor: azure-gpt-4
accelerator: azure-gpt-3
```
### Bedrock
More information can be found at [AWS Bedrock](https://aws.amazon.com/bedrock/). You need to set up your AWS credentials and configure Bedrock access accordingly in your Goose profile.
```yaml title="profiles.yaml"
default:
provider: bedrock
processor: titan-llm
accelerator: titan-llm-lite
```
### Databricks
To use Databricks, sign up or log into [Databricks](https://www.databricks.com/) and generate a personal access token via the user settings. Configure Goose by setting the `DATABRICKS_HOST` and `DATABRICKS_TOKEN` environment variables.
```yaml title="profiles.yaml"
default:
provider: databricks
processor: databricks-meta-llama-3-1-70b-instruct
accelerator: databricks-meta-llama-3-1-70b-instruct
```
### Google
Google Cloud AI services require you to set up a project in the [Google Cloud Console](https://console.cloud.google.com/). After enabling the relevant APIs, you should generate an API key or set up a service account. Ensure your application can access these credentials.
```yaml title="profiles.yaml"
default:
provider: google
processor: gemini-1.5-flash
accelerator: gemini-1.5-flash
```
### Ollama
For Ollama, refer to the setup process on [Ollama's site](https://ollama.com/) for obtaining necessary credentials. Make sure your environment has all the required tokens set up.
```yaml title="profiles.yaml"
default:
provider: ollama
processor: ollama-pro
accelerator: ollama-lite
```
### OpenAI
Register at [OpenAI's platform](https://platform.openai.com/api-keys) to obtain an API key. Configure Goose by updating your `profiles.yaml` file and setting the `OPENAI_API_KEY` in your terminal:
```sh
export OPENAI_API_KEY="your_api_key_here"
```
```yaml title="profiles.yaml"
default:
provider: openai
processor: gpt-4
accelerator: gpt-3.5-turbo
```
[exchange-providers]: https://github.com/block/goose/tree/main/packages/exchange/src/exchange/providers