mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-05-20 07:01:03 +00:00
7694bb5d72
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
27 lines
1.1 KiB
Python
27 lines
1.1 KiB
Python
# Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
from src.config.tools import SELECTED_RAG_PROVIDER, RAGProvider
|
|
from src.rag.dify import DifyProvider
|
|
from src.rag.milvus import MilvusProvider
|
|
from src.rag.ragflow import RAGFlowProvider
|
|
from src.rag.moi import MOIProvider
|
|
from src.rag.retriever import Retriever
|
|
from src.rag.vikingdb_knowledge_base import VikingDBKnowledgeBaseProvider
|
|
|
|
|
|
def build_retriever() -> Retriever | None:
|
|
if SELECTED_RAG_PROVIDER == RAGProvider.DIFY.value:
|
|
return DifyProvider()
|
|
if SELECTED_RAG_PROVIDER == RAGProvider.RAGFLOW.value:
|
|
return RAGFlowProvider()
|
|
elif SELECTED_RAG_PROVIDER == RAGProvider.MOI.value:
|
|
return MOIProvider()
|
|
elif SELECTED_RAG_PROVIDER == RAGProvider.VIKINGDB_KNOWLEDGE_BASE.value:
|
|
return VikingDBKnowledgeBaseProvider()
|
|
elif SELECTED_RAG_PROVIDER == RAGProvider.MILVUS.value:
|
|
return MilvusProvider()
|
|
elif SELECTED_RAG_PROVIDER:
|
|
raise ValueError(f"Unsupported RAG provider: {SELECTED_RAG_PROVIDER}")
|
|
return None
|