import OpenAI from "openai";
// Using OpenAI's API key directly
const openaiWithDirectKey = new OpenAI({
baseURL: "http://localhost:8080/openai",
apiKey: "sk-your-openai-key", // OpenAI's API key works
});
const openaiResponse = await openaiWithDirectKey.chat.completions.create({
model: "openai/gpt-4o-mini",
messages: [{ role: "user", content: "Hello from GPT!" }],
});
// Or pass different provider keys per request
const openai = new OpenAI({
baseURL: "http://localhost:8080/openai",
apiKey: "dummy-key",
});
// Use OpenAI key for GPT models
const openaiResponse = await openai.chat.completions.create({
model: "gpt-4o-mini",
messages: [{ role: "user", content: "Hello GPT!" }],
headers: {
"Authorization": "Bearer sk-your-openai-key",
},
});
// Use Anthropic key for Claude models
const anthropicResponseWithHeader = await openai.chat.completions.create({
model: "anthropic/claude-3-sonnet-20240229",
messages: [{ role: "user", content: "Hello Claude!" }],
headers: {
"x-api-key": "sk-ant-your-anthropic-key",
},
});
// Use Gemini key for Gemini models
const geminiResponseWithHeader = await openai.chat.completions.create({
model: "gemini/gemini-2.5-flash",
messages: [{ role: "user", content: "Hello Gemini!" }],
headers: {
"x-goog-api-key": "sk-gemini-your-gemini-key",
},
});