Yiqiao Jin
Initial Commit
bdafe83
raw
history blame contribute delete
784 Bytes
from ..config import BackendConfig
from .anthropic import Claude
from .base import IntelligenceBackend
from .cohere import CohereAIChat
from .hf_transformers import TransformersConversational
from .human import Human
from .openai import OpenAIChat
from .dummy import Dummy
ALL_BACKENDS = [
Human,
OpenAIChat,
CohereAIChat,
TransformersConversational,
Claude,
Dummy,
]
BACKEND_REGISTRY = {backend.type_name: backend for backend in ALL_BACKENDS}
# Load a backend from a config dictionary
def load_backend(config: BackendConfig):
try:
backend_cls = BACKEND_REGISTRY[config.backend_type]
except KeyError:
raise ValueError(f"Unknown backend type: {config.backend_type}")
backend = backend_cls.from_config(config)
return backend