tbckr/sgpt

Support api_key and base_url in config.yaml

johnd0e opened this issue · 2 comments

Is your feature request related to a problem? Please describe.

I'm aware of set OPENAI_API_KEY and OPENAI_API_BASE env vars, but I'd rather set those in config.

Describe the solution you'd like

Describe alternatives you've considered

No response

Search

  • I did search for other open and closed issues before opening this

Project

  • I have verified that I am using the Go implementation of SGPT (this project) and that it is not another project

Code of Conduct

  • I agree to follow this project's Code of Conduct

Additional context

No response

I'd be nice if it also supports custom OPENAI_API_KEY and OPENAI_API_BASE (or OPENAI_BASE_URL/Host) in User environment variables in Windows. Standard OpenAI APIs work fine though.
I was more thinking of these base on the request title.
https://litellm.vercel.app/docs/providers/openai
https://litellm.vercel.app/docs/providers/custom_openai_proxy
Anyway, tinkering a bit might make sgpt work.

Here is a workaround to avoid using an environment variable.

Add the directory with the following content into your PATH:

./
├── config.json
└── sgpt.sh
$ cat config.json
{"openai_api_key": "<value>"}

$ cat sgpt.sh
OPENAI_API_KEY=$(cat $(dirname ${BASH_SOURCE[0]})/config.json | jq -r .openai_api_key) sgpt "$@"

Now you can use sgpt.sh instead of sgpt to run your scripts/commands without exposing the API key.