Spaces:
Running
Running
| import OpenAI from "openai"; | |
| let openaiInstance: OpenAI | null = null; | |
| export function getOpenAI(): OpenAI { | |
| if (!openaiInstance) { | |
| openaiInstance = new OpenAI({ | |
| apiKey: process.env.OPENAI_API_KEY || "", | |
| baseURL: process.env.OPENAI_BASE_URL || undefined, | |
| defaultHeaders: process.env.OPENAI_EXTRA_HEADERS | |
| ? JSON.parse(process.env.OPENAI_EXTRA_HEADERS) | |
| : undefined, | |
| }); | |
| } | |
| return openaiInstance; | |
| } | |
| // Export a getter that matches the original export name | |
| export const openai = new Proxy({} as OpenAI, { | |
| get(_target, prop, _receiver) { | |
| const client = getOpenAI(); | |
| return Reflect.get(client, prop, client); | |
| } | |
| }); | |