//#region ../lib/src/provider-constants.ts
/** Default base URLs per provider. */
var PROVIDER_DEFAULT_URLS = {
	openai: "https://api.openai.com",
	groq: "https://api.groq.com/openai",
	mistral: "https://api.mistral.ai",
	together: "https://api.together.xyz",
	deepseek: "https://api.deepseek.com",
	xai: "https://api.x.ai",
	lmstudio: "http://host.docker.internal:1234",
	ollama: "http://host.docker.internal:11434",
	"model-runner": "http://model-runner.docker.internal/engines",
	google: "https://generativelanguage.googleapis.com",
	huggingface: "https://router.huggingface.co/v1"
};
/** Map provider name → env var for the API key. */
var PROVIDER_KEY_MAP = {
	openai: "OPENAI_API_KEY",
	groq: "GROQ_API_KEY",
	mistral: "MISTRAL_API_KEY",
	google: "GOOGLE_API_KEY",
	deepseek: "DEEPSEEK_API_KEY",
	together: "TOGETHER_API_KEY",
	xai: "XAI_API_KEY",
	huggingface: "HF_TOKEN"
};
/** Known embedding model dimensions. Keyed by `provider/model`. */
var EMBEDDING_DIMS = {
	"openai/text-embedding-3-small": 1536,
	"openai/text-embedding-3-large": 3072,
	"openai/text-embedding-ada-002": 1536,
	"ollama/nomic-embed-text": 768,
	"ollama/mxbai-embed-large": 1024,
	"ollama/mxbai-embed-large-v1": 1024,
	"ollama/all-minilm": 384,
	"ollama/snowflake-arctic-embed": 1024,
	"model-runner/ai/mxbai-embed-large-v1": 1024,
	"mistral/mistral-embed": 1024,
	"google/text-embedding-004": 768,
	"huggingface/sentence-transformers/all-MiniLM-L6-v2": 384,
	"huggingface/intfloat/multilingual-e5-large": 1024
};
/** Bare model-name lookup used by the browser wizard helpers. */
Object.fromEntries(Object.entries(EMBEDDING_DIMS).map(([key, dims]) => [key.slice(key.indexOf("/") + 1), dims]));
/**
* Look up embedding model dimensions. Tries the full key first, then strips
* any trailing `:tag` from the model name (Ollama-style versions).
* Returns 0 when no match is found.
*/
function lookupEmbeddingDims(provider, model) {
	if (!provider || !model) return 0;
	const key = `${provider}/${model}`;
	if (EMBEDDING_DIMS[key]) return EMBEDDING_DIMS[key];
	const colon = model.lastIndexOf(":");
	if (colon > 0) {
		const bare = `${provider}/${model.slice(0, colon)}`;
		if (EMBEDDING_DIMS[bare]) return EMBEDDING_DIMS[bare];
	}
	return 0;
}

export { PROVIDER_DEFAULT_URLS as P, PROVIDER_KEY_MAP as a, lookupEmbeddingDims as l };
//# sourceMappingURL=provider-constants-DPrj3yBX.js.map
