Blame view

embeddings/config.py 1.9 KB
86d8358b   tangwang   config optimize
1
  """Embedding service compatibility config derived from unified app config."""
7bfb9946   tangwang   向量化模块
2
  
86d8358b   tangwang   config optimize
3
  from __future__ import annotations
7bfb9946   tangwang   向量化模块
4
  
4650fcec   tangwang   日志优化、日志串联(uid rqid)
5
  import os
7bfb9946   tangwang   向量化模块
6
  from typing import Optional
86d8358b   tangwang   config optimize
7
8
  
  from config.loader import get_app_config
7bfb9946   tangwang   向量化模块
9
10
11
  
  
  class EmbeddingConfig(object):
86d8358b   tangwang   config optimize
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
      def __init__(self) -> None:
          app_config = get_app_config()
          runtime = app_config.runtime
          services = app_config.services.embedding
          text_backend = services.get_backend_config()
          image_backend = services.get_image_backend_config()
  
          self.HOST = runtime.embedding_host
          self.PORT = runtime.embedding_port
  
          self.TEXT_MODEL_ID = str(text_backend.get("model_id") or "Qwen/Qwen3-Embedding-0.6B")
          self.TEXT_MODEL_DIR = self.TEXT_MODEL_ID
          self.TEXT_DEVICE = str(text_backend.get("device") or "cuda")
          self.TEXT_BATCH_SIZE = int(text_backend.get("batch_size", 32))
          self.TEXT_NORMALIZE_EMBEDDINGS = bool(text_backend.get("normalize_embeddings", True))
          self.TEI_BASE_URL = str(text_backend.get("base_url") or "http://127.0.0.1:8080")
          self.TEI_TIMEOUT_SEC = int(text_backend.get("timeout_sec", 60))
4650fcec   tangwang   日志优化、日志串联(uid rqid)
29
30
31
32
33
          self.TEI_MAX_CLIENT_BATCH_SIZE = int(
              os.getenv("TEI_MAX_CLIENT_BATCH_SIZE")
              or text_backend.get("max_client_batch_size")
              or 24
          )
86d8358b   tangwang   config optimize
34
35
36
  
          self.USE_CLIP_AS_SERVICE = services.image_backend == "clip_as_service"
          self.CLIP_AS_SERVICE_SERVER = str(image_backend.get("server") or "grpc://127.0.0.1:51000")
6d71d8e0   tangwang   多模态模型配置
37
          self.CLIP_AS_SERVICE_MODEL_NAME = str(image_backend.get("model_name") or "CN-CLIP/ViT-H-14")
86d8358b   tangwang   config optimize
38
  
6d71d8e0   tangwang   多模态模型配置
39
          self.IMAGE_MODEL_NAME = str(image_backend.get("model_name") or "ViT-H-14")
86d8358b   tangwang   config optimize
40
41
42
          self.IMAGE_DEVICE = image_backend.get("device")  # type: Optional[str]
          self.IMAGE_BATCH_SIZE = int(image_backend.get("batch_size", 8))
          self.IMAGE_NORMALIZE_EMBEDDINGS = bool(image_backend.get("normalize_embeddings", True))
7bfb9946   tangwang   向量化模块
43
44
45
  
  
  CONFIG = EmbeddingConfig()