Open Source Deep Research Alternative to Reason and Search on Private Data. Written in Python.
Open Source Deep Research Alternative to Reason and Search on Private Data. Written in Python.
config.set_provider_config("llm", "(LLMName)", "(Arguments dict)")
The "LLMName" can be one of the following: ["DeepSeek", "OpenAI", "XAI", "SiliconFlow", "Aliyun", "PPIO", "TogetherAI", "Gemini", "Ollama", "Novita", "Jiekou.AI"]
The "Arguments dict" is a dictionary that contains the necessary arguments for the LLM class.
Example (OpenAI) Make sure you have prepared your OPENAI API KEY as an env variable OPENAI_API_KEY.
config.set_provider_config("llm", "OpenAI", {"model": "o1-mini"})
More details about OpenAI models: https://platform.openai.com/docs/models
Example (Qwen3 from Aliyun Bailian) Make sure you have prepared your Bailian API KEY as an env variable DASHSCOPE_API_KEY.
config.set_provider_config("llm", "Aliyun", {"model": "qwen-plus-latest"})
More details about Aliyun Bailian models: https://bailian.console.aliyun.com
Example (Qwen3 from OpenRouter)config.set_provider_config("llm", "OpenAI", {"model": "qwen/qwen3-235b-a22b:free", "base_url": "https://openrouter.ai/api/v1", "api_key": "OPENROUTER_API_KEY"})
More details about OpenRouter models: https://openrouter.ai/qwen/qwen3-235b-a22b:free
Example (DeepSeek from official) Make sure you have prepared your DEEPSEEK API KEY as an env variable DEEPSEEK_API_KEY.
config.set_provider_config("llm", "DeepSeek", {"model": "deepseek-reasoner"})
More details about DeepSeek: https://api-docs.deepseek.com/
Example (DeepSeek from SiliconFlow) Make sure you have prepared your SILICONFLOW API KEY as an env variable SILICONFLOW_API_KEY.
config.set_provider_config("llm", "SiliconFlow", {"model": "deepseek-ai/DeepSeek-R1"})
More details about SiliconFlow: https://docs.siliconflow.cn/quickstart
Example (DeepSeek from TogetherAI) Make sure you have prepared your TOGETHER API KEY as an env variable TOGETHER_API_KEY.
config.set_provider_config("llm", "TogetherAI", {"model": "deepseek-ai/DeepSeek-R1"})
For Llama 4:
config.set_provider_config("llm", "TogetherAI", {"model": "meta-llama/Llama-4-Scout-17B-16E-Instruct"})
You need to install together before running, execute: pip install together. More details about TogetherAI: https://www.together.ai/
Make sure you have prepared your XAI API KEY as an env variable XAI_API_KEY.
config.set_provider_config("llm", "XAI", {"model": "grok-4-0709"})
More details about XAI Grok: https://docs.x.ai/docs/overview#featured-models
Example (Claude) Make sure you have prepared your ANTHROPIC API KEY as an env variable ANTHROPIC_API_KEY.
config.set_provider_config("llm", "Anthropic", {"model": "claude-sonnet-4-0"})
More details about Anthropic Claude: https://docs.anthropic.com/en/home
Example (Google Gemini) Make sure you have prepared your GEMINI API KEY as an env variable GEMINI_API_KEY.
config.set_provider_config('llm', 'Gemini', { 'model': 'gemini-2.0-flash' })
You need to install gemini before running, execute: pip install google-genai. More details about Gemini: https://ai.google.dev/gemini-api/docs
Make sure you have prepared your PPIO API KEY as an env variable PPIO_API_KEY. You can create an API Key here.
config.set_provider_config("llm", "PPIO", {"model": "deepseek/deepseek-r1-turbo"})
More details about PPIO: https://ppinfra.com/docs/get-started/quickstart.html?utm_source=github_deep-searcher
Example (Claude Sonnet 4.5 from Jiekou.AI) Make sure you have prepared your Jiekou.AI API KEY as an env variable JIEKOU_API_KEY. You can create an API Key here.
config.set_provider_config("llm", "JiekouAI", {"model": "claude-sonnet-4-5-20250929"})
More details about Jiekou.AI: https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_deep-searcher
Example (Ollama)Follow these instructions to set up and run a local Ollama instance:
Download and install Ollama onto the available supported platforms (including Windows Subsystem for Linux).
View a list of available models via the model library.
Fetch available LLM models via ollama pull <name-of-model>
Example: ollama pull qwen3
To chat directly with a model from the command line, use ollama run <name-of-model>.
By default, Ollama has a REST API for running and managing models on http://localhost:11434.
config.set_provider_config("llm", "Ollama", {"model": "qwen3"})
Example (Volcengine)
Make sure you have prepared your Volcengine API KEY as an env variable VOLCENGINE_API_KEY. You can create an API Key here.
config.set_provider_config("llm", "Volcengine", {"model": "deepseek-r1-250120"})
More details about Volcengine: https://www.volcengine.com/docs/82379/1099455?utm_source=github_deep-searcher
Example (GLM) Make sure you have prepared your GLM API KEY as an env variable GLM_API_KEY.
config.set_provider_config("llm", "GLM", {"model": "glm-4-plus"})
You need to install zhipuai before running, execute: pip install zhipuai. More details about GLM: https://bigmodel.cn/dev/welcome
Make sure you have prepared your Amazon Bedrock API KEY as an env variable AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY.
config.set_provider_config("llm", "Bedrock", {"model": "us.deepseek.r1-v1:0"})
You need to install boto3 before running, execute: pip install boto3. More details about Amazon Bedrock: https://docs.aws.amazon.com/bedrock/
Make sure you have prepared your watsonx.ai credentials as env variables WATSONX_APIKEY, WATSONX_URL, and WATSONX_PROJECT_ID.
config.set_provider_config("llm", "watsonx", {"model": "us.deepseek.r1-v1:0"})
You need to install ibm-watsonx-ai before running, execute: pip install ibm-watsonx-ai. More details about IBM watsonx.ai: https://www.ibm.com/products/watsonx-ai/foundation-models
config.set_provider_config("embedding", "(EmbeddingModelName)", "(Arguments dict)")
The "EmbeddingModelName" can be one of the following: ["MilvusEmbedding", "OpenAIEmbedding", "VoyageEmbedding", "SiliconflowEmbedding", "PPIOEmbedding", "NovitaEmbedding", "JiekouAIEmbedding"]
The "Arguments dict" is a dictionary that contains the necessary arguments for the embedding model class.
Example (OpenAI embedding) Make sure you have prepared your OpenAI API KEY as an env variable OPENAI_API_KEY.
config.set_provider_config("embedding", "OpenAIEmbedding", {"model": "text-embedding-3-small"})
More details about OpenAI models: https://platform.openai.com/docs/guides/embeddings/use-cases
Example (OpenAI embedding Azure) Make sure you have prepared your OpenAI API KEY as an env variable OPENAI_API_KEY.
config.set_provider_config("embedding", "OpenAIEmbedding", {
"model": "text-embedding-ada-002",
"azure_endpoint": "https://.openai.azure.com/",
"api_version": "2023-05-15"
})
Example (Pymilvus built-in embedding model)
Use the built-in embedding model in Pymilvus, you can set the model name as "default", "BAAI/bge-base-en-v1.5", "BAAI/bge-large-en-v1.5"
No open issues yet, or sync has not completed.