MCPcopy
hub / github.com/AsyncFuncAI/deepwiki-open / get_embedder

Function get_embedder

api/tools/embedder.py:6–58  ·  view source on GitHub ↗

Get embedder based on configuration or parameters. Args: is_local_ollama: Legacy parameter for Ollama embedder use_google_embedder: Legacy parameter for Google embedder embedder_type: Direct specification of embedder type ('ollama', 'google', 'bedrock', 'openai')

(is_local_ollama: bool = False, use_google_embedder: bool = False, embedder_type: str = None)

Source from the content-addressed store, hash-verified

4
5
6def get_embedder(is_local_ollama: bool = False, use_google_embedder: bool = False, embedder_type: str = None) -> adal.Embedder:
7 """Get embedder based on configuration or parameters.
8
9 Args:
10 is_local_ollama: Legacy parameter for Ollama embedder
11 use_google_embedder: Legacy parameter for Google embedder
12 embedder_type: Direct specification of embedder type ('ollama', 'google', 'bedrock', 'openai')
13
14 Returns:
15 adal.Embedder: Configured embedder instance
16 """
17 # Determine which embedder config to use
18 if embedder_type:
19 if embedder_type == 'ollama':
20 embedder_config = configs["embedder_ollama"]
21 elif embedder_type == 'google':
22 embedder_config = configs["embedder_google"]
23 elif embedder_type == 'bedrock':
24 embedder_config = configs["embedder_bedrock"]
25 else: # default to openai
26 embedder_config = configs["embedder"]
27 elif is_local_ollama:
28 embedder_config = configs["embedder_ollama"]
29 elif use_google_embedder:
30 embedder_config = configs["embedder_google"]
31 else:
32 # Auto-detect based on current configuration
33 current_type = get_embedder_type()
34 if current_type == 'bedrock':
35 embedder_config = configs["embedder_bedrock"]
36 elif current_type == 'ollama':
37 embedder_config = configs["embedder_ollama"]
38 elif current_type == 'google':
39 embedder_config = configs["embedder_google"]
40 else:
41 embedder_config = configs["embedder"]
42
43 # --- Initialize Embedder ---
44 model_client_class = embedder_config["model_client"]
45 if "initialize_kwargs" in embedder_config:
46 model_client = model_client_class(**embedder_config["initialize_kwargs"])
47 else:
48 model_client = model_client_class()
49
50 # Create embedder with basic parameters
51 embedder_kwargs = {"model_client": model_client, "model_kwargs": embedder_config["model_kwargs"]}
52
53 embedder = adal.Embedder(**embedder_kwargs)
54
55 # Set batch_size as an attribute if available (not a constructor parameter)
56 if "batch_size" in embedder_config:
57 embedder.batch_size = embedder_config["batch_size"]
58 return embedder

Calls 1

get_embedder_typeFunction · 0.90