export declare const llmFactoryTemplate = "import { ChatOpenAI, OpenAIEmbeddings } from \"@langchain/openai\";\nimport { ChatAnthropic } from \"@langchain/anthropic\";\nimport {\n ChatGoogleGenerativeAI,\n GoogleGenerativeAIEmbeddings,\n} from \"@langchain/google-genai\";\nimport type { LLMConfig } from \"@/services/llm/types\";\n\n/**\n * Creates a chat model instance based on the provider configuration\n */\nexport function createChatModel(config: LLMConfig) {\n switch (config.provider) {\n case \"openai\":\n return new ChatOpenAI({\n model: config.chatModel,\n temperature: config.temperature,\n });\n\n case \"anthropic\":\n return new ChatAnthropic({\n model: config.chatModel,\n temperature: config.temperature,\n });\n\n case \"google\":\n return new ChatGoogleGenerativeAI({\n model: config.chatModel,\n temperature: config.temperature,\n });\n\n default:\n throw new Error(`Unsupported LLM provider: ${config.provider}`);\n }\n}\n\n/**\n * Creates an embeddings instance based on the provider configuration\n * Note: Anthropic doesn't provide embeddings, so we fallback to OpenAI\n */\nexport function createEmbeddings(config: LLMConfig) {\n switch (config.provider) {\n case \"openai\":\n return new OpenAIEmbeddings({\n model: config.embeddingModel,\n });\n\n case \"google\":\n return new GoogleGenerativeAIEmbeddings({\n model: config.embeddingModel,\n });\n\n case \"anthropic\":\n // Anthropic doesn't have embeddings API\n // Fallback to OpenAI embeddings\n console.warn(\n \"Anthropic provider selected but no native embeddings available. Falling back to OpenAI embeddings.\",\n );\n return new OpenAIEmbeddings({\n model: config.embeddingModel,\n });\n\n default:\n throw new Error(\n `Unsupported LLM provider for embeddings: ${config.provider}`,\n );\n }\n}\n";