openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
82 lines (81 loc) • 1.89 kB
JavaScript
//#region extensions/google/provider-catalog.ts
const GOOGLE_GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta";
const GOOGLE_VERTEX_BASE_URL = "https://{location}-aiplatform.googleapis.com";
const GOOGLE_GEMINI_COST = {
input: 0,
output: 0,
cacheRead: 0,
cacheWrite: 0
};
const GOOGLE_GEMINI_TEXT_MODELS = [
{
id: "gemini-2.5-pro",
name: "Gemini 2.5 Pro",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
},
{
id: "gemini-2.5-flash",
name: "Gemini 2.5 Flash",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
},
{
id: "gemini-2.5-flash-lite",
name: "Gemini 2.5 Flash-Lite",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
},
{
id: "gemini-3.1-pro-preview",
name: "Gemini 3.1 Pro Preview",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
},
{
id: "gemini-3.1-flash-lite",
name: "Gemini 3.1 Flash Lite",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
},
{
id: "gemini-3-flash-preview",
name: "Gemini 3 Flash Preview",
reasoning: true,
input: ["text", "image"],
cost: GOOGLE_GEMINI_COST,
contextWindow: 1048576,
maxTokens: 65536
}
];
function buildGoogleStaticCatalogProvider() {
return {
baseUrl: GOOGLE_GEMINI_BASE_URL,
api: "google-generative-ai",
models: GOOGLE_GEMINI_TEXT_MODELS
};
}
function buildGoogleVertexStaticCatalogProvider() {
return {
baseUrl: GOOGLE_VERTEX_BASE_URL,
api: "google-vertex",
models: GOOGLE_GEMINI_TEXT_MODELS
};
}
//#endregion
export { buildGoogleVertexStaticCatalogProvider as n, buildGoogleStaticCatalogProvider as t };