fix: inconsistent usage of base URL and API key (#507)

A recent commit introduced the ability to use third-party model
providers. (Really appreciate it!)

However, the usage is inconsistent: some pieces of code use the custom
providers, whereas others still have the old behavior. Additionally,
`OPENAI_BASE_URL` is now being disregarded when it shouldn't be.

This PR normalizes the usage to `getApiKey` and `getBaseUrl`, and
enables the use of `OPENAI_BASE_URL` if present.

---------

Co-authored-by: Gabriel Bianconi <GabrielBianconi@users.noreply.github.com>
This commit is contained in:
Gabriel Bianconi
2025-04-22 10:51:26 -04:00
committed by GitHub
parent d78f77edb7
commit 98a22273d9
5 changed files with 39 additions and 19 deletions

View File

@@ -20,9 +20,11 @@ async function fetchModels(provider: string): Promise<Array<string>> {
throw new Error("No API key configured for provider: " + provider);
}
const baseURL = getBaseUrl(provider);
try {
const openai = new OpenAI({ apiKey: getApiKey(provider), baseURL });
const openai = new OpenAI({
apiKey: getApiKey(provider),
baseURL: getBaseUrl(provider),
});
const list = await openai.models.list();
const models: Array<string> = [];
for await (const model of list as AsyncIterable<{ id?: string }>) {