nexaai 1.0.15rc1__cp310-cp310-win_amd64.whl → 1.0.16__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of nexaai might be problematic. Click here for more details.

Files changed (41) hide show
  1. nexaai/__init__.py +7 -0
  2. nexaai/_stub.cp310-win_amd64.pyd +0 -0
  3. nexaai/_version.py +1 -1
  4. nexaai/binds/common_bind.cp310-win_amd64.pyd +0 -0
  5. nexaai/binds/embedder_bind.cp310-win_amd64.pyd +0 -0
  6. nexaai/binds/libcrypto-3-x64.dll +0 -0
  7. nexaai/binds/libssl-3-x64.dll +0 -0
  8. nexaai/binds/llm_bind.cp310-win_amd64.pyd +0 -0
  9. nexaai/binds/nexa_bridge.dll +0 -0
  10. nexaai/binds/nexa_llama_cpp/ggml-base.dll +0 -0
  11. nexaai/binds/nexa_llama_cpp/ggml-cpu.dll +0 -0
  12. nexaai/binds/nexa_llama_cpp/ggml-cuda.dll +0 -0
  13. nexaai/binds/nexa_llama_cpp/ggml-vulkan.dll +0 -0
  14. nexaai/binds/nexa_llama_cpp/ggml.dll +0 -0
  15. nexaai/binds/nexa_llama_cpp/llama.dll +0 -0
  16. nexaai/binds/nexa_llama_cpp/mtmd.dll +0 -0
  17. nexaai/binds/nexa_llama_cpp/nexa_plugin.dll +0 -0
  18. nexaai/binds/nexa_nexaml/ggml-base.dll +0 -0
  19. nexaai/binds/nexa_nexaml/ggml-cpu.dll +0 -0
  20. nexaai/binds/nexa_nexaml/ggml-cuda.dll +0 -0
  21. nexaai/binds/nexa_nexaml/ggml-vulkan.dll +0 -0
  22. nexaai/binds/nexa_nexaml/ggml.dll +0 -0
  23. nexaai/binds/nexa_nexaml/nexa-mm-process.dll +0 -0
  24. nexaai/binds/nexa_nexaml/nexa-sampling.dll +0 -0
  25. nexaai/binds/nexa_nexaml/nexa_plugin.dll +0 -0
  26. nexaai/binds/nexa_nexaml/nexaproc.dll +0 -0
  27. nexaai/binds/nexa_nexaml/qwen3-vl.dll +0 -0
  28. nexaai/binds/nexa_nexaml/qwen3vl-vision.dll +0 -0
  29. nexaai/binds/vlm_bind.cp310-win_amd64.pyd +0 -0
  30. nexaai/common.py +1 -0
  31. nexaai/log.py +92 -0
  32. nexaai/runtime.py +4 -0
  33. nexaai/utils/quantization_utils.py +7 -1
  34. nexaai/vlm.py +4 -3
  35. nexaai/vlm_impl/mlx_vlm_impl.py +3 -1
  36. nexaai/vlm_impl/pybind_vlm_impl.py +3 -1
  37. {nexaai-1.0.15rc1.dist-info → nexaai-1.0.16.dist-info}/METADATA +1 -1
  38. nexaai-1.0.16.dist-info/RECORD +77 -0
  39. nexaai-1.0.15rc1.dist-info/RECORD +0 -65
  40. {nexaai-1.0.15rc1.dist-info → nexaai-1.0.16.dist-info}/WHEEL +0 -0
  41. {nexaai-1.0.15rc1.dist-info → nexaai-1.0.16.dist-info}/top_level.txt +0 -0
nexaai/__init__.py CHANGED
@@ -21,6 +21,9 @@ except ImportError:
21
21
  # Import common configuration classes first (no external dependencies)
22
22
  from .common import ModelConfig, GenerationConfig, ChatMessage, SamplerConfig, PluginID
23
23
 
24
+ # Import logging functionality
25
+ from .log import set_logger, get_error_message
26
+
24
27
  # Create alias for PluginID to be accessible as plugin_id
25
28
  plugin_id = PluginID
26
29
 
@@ -45,6 +48,10 @@ __all__ = [
45
48
  "EmbeddingConfig",
46
49
  "PluginID",
47
50
  "plugin_id",
51
+
52
+ # Logging functionality
53
+ "set_logger",
54
+ "get_error_message",
48
55
 
49
56
  "LLM",
50
57
  "Embedder",
Binary file
nexaai/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # This file is generated by CMake from _version.py.in
2
2
  # Do not modify this file manually - it will be overwritten
3
3
 
4
- __version__ = "1.0.15-rc1"
4
+ __version__ = "1.0.16"
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
nexaai/common.py CHANGED
@@ -7,6 +7,7 @@ class PluginID(str, Enum):
7
7
  """Enum for plugin identifiers."""
8
8
  MLX = "mlx"
9
9
  LLAMA_CPP = "llama_cpp"
10
+ NEXAML = "nexaml"
10
11
 
11
12
 
12
13
  class ChatMessage(TypedDict):
nexaai/log.py ADDED
@@ -0,0 +1,92 @@
1
+ """
2
+ Logging configuration for NexaAI bridge.
3
+
4
+ This module provides a minimal API to configure bridge-wide logging
5
+ to route into Python's logging system.
6
+ """
7
+
8
+ import logging
9
+ import threading
10
+ from enum import IntEnum
11
+ from typing import Optional
12
+
13
+ from nexaai.binds import common_bind
14
+ from nexaai.runtime import is_initialized
15
+
16
+
17
+ class LogLevel(IntEnum):
18
+ """Log levels matching ml_LogLevel from ml.h"""
19
+ TRACE = 0
20
+ DEBUG = 1
21
+ INFO = 2
22
+ WARN = 3
23
+ ERROR = 4
24
+
25
+
26
+ # Module-level state
27
+ _config_lock = threading.Lock()
28
+ _current_logger: Optional[logging.Logger] = None
29
+
30
+
31
+ def set_logger(logger: Optional[logging.Logger] = None, *, strict: bool = True) -> None:
32
+ """
33
+ Set the process-wide bridge logger.
34
+
35
+ Args:
36
+ logger: Python logger to receive bridge logs. If None, uses "nexaai.ml" logger.
37
+ strict: If True, raises if called after runtime initialization.
38
+ If False, attempts to set anyway (best-effort).
39
+
40
+ Raises:
41
+ RuntimeError: If strict=True and runtime is already initialized.
42
+ """
43
+ global _current_logger
44
+
45
+ with _config_lock:
46
+ # Check initialization state if strict mode
47
+ if strict and is_initialized():
48
+ raise RuntimeError(
49
+ "Cannot configure logging after runtime initialization. "
50
+ "Call set_logger() before creating any models, or use strict=False for best-effort."
51
+ )
52
+
53
+ # Use default logger if none provided
54
+ if logger is None:
55
+ logger = logging.getLogger("nexaai.ml")
56
+
57
+ _current_logger = logger
58
+
59
+ # Set the C callback
60
+ common_bind.ml_set_log(_log_callback)
61
+
62
+
63
+ def _log_callback(level: int, message: str) -> None:
64
+ """Internal callback that forwards bridge logs to Python logger."""
65
+ if _current_logger is None:
66
+ return
67
+
68
+ # Map bridge log levels to Python logging levels
69
+ if level == LogLevel.TRACE or level == LogLevel.DEBUG:
70
+ _current_logger.debug(message)
71
+ elif level == LogLevel.INFO:
72
+ _current_logger.info(message)
73
+ elif level == LogLevel.WARN:
74
+ _current_logger.warning(message)
75
+ elif level == LogLevel.ERROR:
76
+ _current_logger.error(message)
77
+ else:
78
+ # Fallback for unknown levels
79
+ _current_logger.info(f"[Level {level}] {message}")
80
+
81
+
82
+ def get_error_message(error_code: int) -> str:
83
+ """
84
+ Get error message string for error code.
85
+
86
+ Args:
87
+ error_code: ML error code (typically negative)
88
+
89
+ Returns:
90
+ Human-readable error message
91
+ """
92
+ return common_bind.ml_get_error_message(error_code)
nexaai/runtime.py CHANGED
@@ -28,6 +28,10 @@ def _shutdown_runtime() -> None:
28
28
  # Public helper so advanced users can reclaim memory on demand
29
29
  shutdown = _shutdown_runtime
30
30
 
31
+ def is_initialized() -> bool:
32
+ """Check if the runtime has been initialized."""
33
+ return _runtime_alive
34
+
31
35
  # ----------------------------------------------------------------------
32
36
  # Single public class
33
37
  # ----------------------------------------------------------------------
@@ -25,12 +25,15 @@ class QuantizationType(str, Enum):
25
25
  F16 = "F16"
26
26
  Q2_K = "Q2_K"
27
27
  Q2_K_L = "Q2_K_L"
28
+ Q3_K = "Q3_K"
28
29
  Q3_K_M = "Q3_K_M"
29
30
  Q3_K_S = "Q3_K_S"
30
31
  Q4_0 = "Q4_0"
31
32
  Q4_1 = "Q4_1"
33
+ Q4_K = "Q4_K"
32
34
  Q4_K_M = "Q4_K_M"
33
35
  Q4_K_S = "Q4_K_S"
36
+ Q5_K = "Q5_K"
34
37
  Q5_K_M = "Q5_K_M"
35
38
  Q5_K_S = "Q5_K_S"
36
39
  Q6_K = "Q6_K"
@@ -67,12 +70,15 @@ def extract_quantization_from_filename(filename: str) -> Optional[QuantizationTy
67
70
  'f16.': QuantizationType.F16, # Add F16 support
68
71
  'q2_k_l.': QuantizationType.Q2_K_L, # Check Q2_K_L before Q2_K to avoid partial match
69
72
  'q2_k.': QuantizationType.Q2_K,
73
+ 'q3_k.': QuantizationType.Q3_K,
70
74
  'q3_k_m.': QuantizationType.Q3_K_M,
71
- 'q3_ks.': QuantizationType.Q3_K_S,
75
+ 'q3_k_s.': QuantizationType.Q3_K_S,
72
76
  'q4_k_m.': QuantizationType.Q4_K_M,
73
77
  'q4_k_s.': QuantizationType.Q4_K_S,
74
78
  'q4_0.': QuantizationType.Q4_0,
75
79
  'q4_1.': QuantizationType.Q4_1,
80
+ 'q4_k.': QuantizationType.Q4_K,
81
+ 'q5_k.': QuantizationType.Q5_K,
76
82
  'q5_k_m.': QuantizationType.Q5_K_M,
77
83
  'q5_k_s.': QuantizationType.Q5_K_S,
78
84
  'q6_k.': QuantizationType.Q6_K,
nexaai/vlm.py CHANGED
@@ -18,7 +18,8 @@ class VLM(BaseModel):
18
18
  @classmethod
19
19
  def _load_from(cls,
20
20
  local_path: str,
21
- mmproj_path: str,
21
+ mmproj_path: str = None,
22
+ model_name: Optional[str] = None,
22
23
  m_cfg: ModelConfig = ModelConfig(),
23
24
  plugin_id: Union[PluginID, str] = PluginID.LLAMA_CPP,
24
25
  device_id: Optional[str] = None
@@ -40,10 +41,10 @@ class VLM(BaseModel):
40
41
 
41
42
  if plugin_value == "mlx":
42
43
  from nexaai.vlm_impl.mlx_vlm_impl import MlxVlmImpl
43
- return MlxVlmImpl._load_from(local_path, mmproj_path, m_cfg, plugin_id, device_id)
44
+ return MlxVlmImpl._load_from(local_path, mmproj_path, model_name, m_cfg, plugin_id, device_id)
44
45
  else:
45
46
  from nexaai.vlm_impl.pybind_vlm_impl import PyBindVLMImpl
46
- return PyBindVLMImpl._load_from(local_path, mmproj_path, m_cfg, plugin_id, device_id)
47
+ return PyBindVLMImpl._load_from(local_path, mmproj_path, model_name, m_cfg, plugin_id, device_id)
47
48
 
48
49
  @abstractmethod
49
50
  def eject(self):
@@ -16,7 +16,8 @@ class MlxVlmImpl(VLM):
16
16
  @classmethod
17
17
  def _load_from(cls,
18
18
  local_path: str,
19
- mmproj_path: str,
19
+ mmproj_path: str = None,
20
+ model_name: Optional[str] = None,
20
21
  m_cfg: ModelConfig = ModelConfig(),
21
22
  plugin_id: Union[PluginID, str] = PluginID.MLX,
22
23
  device_id: Optional[str] = None
@@ -39,6 +40,7 @@ class MlxVlmImpl(VLM):
39
40
  # Create instance and load MLX VLM
40
41
  instance = cls(m_cfg)
41
42
  instance._mlx_vlm = MLXVLMInterface(
43
+ model_name=model_name,
42
44
  model_path=local_path,
43
45
  mmproj_path=mmproj_path, # MLX VLM may not use this, but pass it anyway
44
46
  context_length=m_cfg.n_ctx,
@@ -20,7 +20,8 @@ class PyBindVLMImpl(VLM):
20
20
  @classmethod
21
21
  def _load_from(cls,
22
22
  local_path: str,
23
- mmproj_path: str,
23
+ mmproj_path: str = None,
24
+ model_name: Optional[str] = None,
24
25
  m_cfg: ModelConfig = ModelConfig(),
25
26
  plugin_id: Union[PluginID, str] = PluginID.LLAMA_CPP,
26
27
  device_id: Optional[str] = None
@@ -67,6 +68,7 @@ class PyBindVLMImpl(VLM):
67
68
  handle = vlm_bind.create_vlm(
68
69
  model_path=local_path,
69
70
  mmproj_path=mmproj_path,
71
+ # model_name=model_name, # TODO: enable model_name in pybind later
70
72
  model_config=config,
71
73
  plugin_id=plugin_id_str,
72
74
  device_id=device_id
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nexaai
3
- Version: 1.0.15rc1
3
+ Version: 1.0.16
4
4
  Summary: Python bindings for NexaSDK C-lib backend
5
5
  Author-email: "Nexa AI, Inc." <dev@nexa.ai>
6
6
  Project-URL: Homepage, https://github.com/NexaAI/nexasdk-bridge
@@ -0,0 +1,77 @@
1
+ nexaai/__init__.py,sha256=mbzzeXrEHHI_E3BQ0_OukD9wNajKJJVk0ykxT0rz8uM,2267
2
+ nexaai/_stub.cp310-win_amd64.pyd,sha256=7vyeoDKvXBCPVL4aoW0NRxyjj2ln4LSRhZqh8XT8kpo,10752
3
+ nexaai/_version.py,sha256=83ZRXSrrfnRJZ1nlZAgYUl70A0hrJ8EzO8evS2otr8k,143
4
+ nexaai/asr.py,sha256=_fsGaxpiU137bUtO5ujtFSYCI1RLsyeEm3Gf4GhHVRk,2118
5
+ nexaai/base.py,sha256=qQBCiQVNzgpkQjZX9aiFDEdbAAe56TROKC3WnWra2Zg,1021
6
+ nexaai/common.py,sha256=muQqFY-WllwL5IO83tImexbuUcoEQsKg73u4gWL2lNs,3548
7
+ nexaai/cv.py,sha256=a6-csgYNDzPziJ0EojE9-BeM_xCny4UvWWbpnJ7GL-A,3365
8
+ nexaai/embedder.py,sha256=3a81s7JapvYxCRbWPFKp_9EWBKW7WYqF03gk87YuGKU,2524
9
+ nexaai/image_gen.py,sha256=4iASOKxJosMznLarTvOxJQDNaas251O81bfUWJTUBfE,4496
10
+ nexaai/llm.py,sha256=Qwm1q_NStLfD-JYZQIvxniWnAmwNl1V6LUON3Me7w_I,3663
11
+ nexaai/log.py,sha256=F_Qe169kLbnFV25WJmS_ZtmBfOdcGic8BYFIsYVoD_o,2720
12
+ nexaai/rerank.py,sha256=_zGWmX6eDigY2kViMKCtNssp4JMEeVycZZfJH9eAZOY,1927
13
+ nexaai/runtime.py,sha256=_BoAtTUv5ZR7wtOlJL5TldR3AZTP0OnMWjB9p71k-8E,2135
14
+ nexaai/tts.py,sha256=afs6sx0w0Tvs_aJlyZRPm62qQpTrs-fW_jDHrMkc4AA,2241
15
+ nexaai/vlm.py,sha256=wUMbRURluxvULbS7vgyHsWdEPgLGrrC_S79bhdEN7Vg,4860
16
+ nexaai/asr_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
+ nexaai/asr_impl/mlx_asr_impl.py,sha256=XwMX3LYMeulp8cDS0TCCYcjvttFHAyDWQ_oMvABwQmI,3349
18
+ nexaai/asr_impl/pybind_asr_impl.py,sha256=20o5SOPzhF9x41ra8L_qIM7YxCkYeLb5csSrNde-dds,1560
19
+ nexaai/binds/__init__.py,sha256=ENl-uoIF9-3XGIXitVgZ2QmJ6p7Yet4h1-X7nUDZ0Hk,108
20
+ nexaai/binds/common_bind.cp310-win_amd64.pyd,sha256=3I4VSanmf8V23IV8H40lm_ODNuwHul77ffHzVpbXbPY,205824
21
+ nexaai/binds/embedder_bind.cp310-win_amd64.pyd,sha256=hUom2jfA2KoLFd3EvpTgU7upp7lptDO2BCSxhcLIz54,182784
22
+ nexaai/binds/libcrypto-3-x64.dll,sha256=TAWcTdJrWviUingNyWaraOfz0ILUy7ybpI4VaiVHURg,7315968
23
+ nexaai/binds/libssl-3-x64.dll,sha256=ZxawOWlONNM0Neg47w4JbU8kZJldj046H1zV3LiETa0,1313792
24
+ nexaai/binds/llm_bind.cp310-win_amd64.pyd,sha256=FVR7ViNbPKRD1rRlxzVmdRPYFu2hLRtPduZwbv6jg60,162816
25
+ nexaai/binds/nexa_bridge.dll,sha256=9PwQa7LvopCkMtXszsbriHwPS-5citL7yGKfCMjhJnU,171008
26
+ nexaai/binds/vlm_bind.cp310-win_amd64.pyd,sha256=jDGgjSJ0Uf-qEaXpoDId9s-LgkyP3350k3lHe6pnesA,168960
27
+ nexaai/binds/nexa_llama_cpp/ggml-base.dll,sha256=c1CsqKJpwJvHxUkWkgx5zZQdGsRcKKqAUQUmh3usHwM,532480
28
+ nexaai/binds/nexa_llama_cpp/ggml-cpu.dll,sha256=dSaQ9kPdkqnlnwb7T2lLPMn2jhJ9mQtDCjOwZZeDSZM,672768
29
+ nexaai/binds/nexa_llama_cpp/ggml-cuda.dll,sha256=b028GOLzuuFrxIJTGBAH4WrleIKeswct2uQy8sGC9a4,313528832
30
+ nexaai/binds/nexa_llama_cpp/ggml-vulkan.dll,sha256=6ux-aQBLepBrQ2zx8a5_loreBLgRTwp64gYno6y7Mg0,36627456
31
+ nexaai/binds/nexa_llama_cpp/ggml.dll,sha256=DEoKfIEpZo3be_yvkO8yYp3f5Dwu-5JBpfPi1Z8_pHY,66560
32
+ nexaai/binds/nexa_llama_cpp/llama.dll,sha256=fiwB1GXjkzlVZ1jvB2KDemgZ5cb1wO2KAZR5B2fZ4eg,1611776
33
+ nexaai/binds/nexa_llama_cpp/mtmd.dll,sha256=7ClyNjQBfTFKhptEC_hM3_HRbjq8e_el2RlQ1i60v_8,561152
34
+ nexaai/binds/nexa_llama_cpp/nexa_plugin.dll,sha256=gzPr-HyX54dIpGjoATYrnGfGkQYYRPDpf2WNZ7BrNRQ,1413120
35
+ nexaai/binds/nexa_nexaml/ggml-base.dll,sha256=c1CsqKJpwJvHxUkWkgx5zZQdGsRcKKqAUQUmh3usHwM,532480
36
+ nexaai/binds/nexa_nexaml/ggml-cpu.dll,sha256=dSaQ9kPdkqnlnwb7T2lLPMn2jhJ9mQtDCjOwZZeDSZM,672768
37
+ nexaai/binds/nexa_nexaml/ggml-cuda.dll,sha256=b028GOLzuuFrxIJTGBAH4WrleIKeswct2uQy8sGC9a4,313528832
38
+ nexaai/binds/nexa_nexaml/ggml-vulkan.dll,sha256=6ux-aQBLepBrQ2zx8a5_loreBLgRTwp64gYno6y7Mg0,36627456
39
+ nexaai/binds/nexa_nexaml/ggml.dll,sha256=DEoKfIEpZo3be_yvkO8yYp3f5Dwu-5JBpfPi1Z8_pHY,66560
40
+ nexaai/binds/nexa_nexaml/nexa-mm-process.dll,sha256=oDnqTaAUeZrWJePQEDuIYKEOMP-ndu221mMFHht4bSY,4642816
41
+ nexaai/binds/nexa_nexaml/nexa-sampling.dll,sha256=PNtidsRbGO8dTfbf7-VMdhQRbF328yvLnmDjMy2Tb7Y,4265984
42
+ nexaai/binds/nexa_nexaml/nexa_plugin.dll,sha256=ix6NuCYfdgY_E1kVzyXhv4IT_AZ0R762BbVUiHGnTss,581632
43
+ nexaai/binds/nexa_nexaml/nexaproc.dll,sha256=9X4TF6p7wOiIXi_SA7uHLoEmrvcTlH2WpfijK7HxZgY,2668544
44
+ nexaai/binds/nexa_nexaml/qwen3-vl.dll,sha256=Es-etUDiMmK_BwOki8V79Nja-NY4kBbrkhtnesXfMMU,5870592
45
+ nexaai/binds/nexa_nexaml/qwen3vl-vision.dll,sha256=HFAk0FxWlf_lko3AQL6uBXTIhm6AzDFi5PjxI0lxONI,1184256
46
+ nexaai/cv_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
+ nexaai/cv_impl/mlx_cv_impl.py,sha256=QLd_8w90gtxH8kmssaDYatCTRvQNIJuUGKZNnYrmx6E,3317
48
+ nexaai/cv_impl/pybind_cv_impl.py,sha256=aSOCAxmHrwJbEkSN6VX3Cykqlj_9RIpVrZXILul04GA,1096
49
+ nexaai/embedder_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
+ nexaai/embedder_impl/mlx_embedder_impl.py,sha256=Kzd-veLNl95FbI2oEJMtr6qKbjtPDDajzsGUVjJfTRA,4598
51
+ nexaai/embedder_impl/pybind_embedder_impl.py,sha256=eH2L--L6BAl-46UOzm84pfjIkJtQKVd63-r62eb0Vg0,3670
52
+ nexaai/image_gen_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
+ nexaai/image_gen_impl/mlx_image_gen_impl.py,sha256=peUE9ue9ApaPlZVOICBWiHtd13sY40OWQbE8EjfIUMU,11511
54
+ nexaai/image_gen_impl/pybind_image_gen_impl.py,sha256=514RFQMSO0Rhacq0IYzlEhEr6QfaprnGew0Rjz8HZI4,3777
55
+ nexaai/llm_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
+ nexaai/llm_impl/mlx_llm_impl.py,sha256=r9Qa1ZuduRAcRjmqo2J_zlqhprVPe3ioZtUbi7yIvYY,11426
57
+ nexaai/llm_impl/pybind_llm_impl.py,sha256=s2Cb035xDbh1ZhGNys0LRtAR6b6n4-YVKSC5voD4_Tk,8269
58
+ nexaai/rerank_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
+ nexaai/rerank_impl/mlx_rerank_impl.py,sha256=x8L6zCccV2I4bq4V5zAOcrWFe5Ckle7z5J_00tao8bI,3335
60
+ nexaai/rerank_impl/pybind_rerank_impl.py,sha256=1IW925bYv4FRwZDNzf9epEzdDqR6T3OONgTLBd-cOn8,1556
61
+ nexaai/tts_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
+ nexaai/tts_impl/mlx_tts_impl.py,sha256=LcH9bVdIl3Q6lOzSUB_X2s-_nWFmlCl1yL7XSUK0fYI,3195
63
+ nexaai/tts_impl/pybind_tts_impl.py,sha256=n3z4zmPQayQJgAwcvETw0IBUCp8IYROuYFSg0tAy_8Y,1487
64
+ nexaai/utils/avatar_fetcher.py,sha256=D01f8je-37Nd68zGw8MYK2m7y3fvGlC6h0KR-aN9kdU,3925
65
+ nexaai/utils/decode.py,sha256=0Z9jDH4ICzw4YXj8nD4L-sMouDaev-TISGRQ4KzidWE,421
66
+ nexaai/utils/manifest_utils.py,sha256=nPqK24srLX41x3WU4R-OGQR9u0XA7ZTHY1MQXBKXdrM,12652
67
+ nexaai/utils/model_manager.py,sha256=3rDODGClgnM24LFWIoM-TDpXkpV1vyJSdlv7Qk4ZaPE,57434
68
+ nexaai/utils/model_types.py,sha256=arIyb9q-1uG0nyUGdWZaxxDJAxv0cfnJEpjCzyELL5Q,1416
69
+ nexaai/utils/progress_tracker.py,sha256=BztrFqtjwNUmeREwZ5m7H6ZcrVzQEbpZfsxndWh4z0A,15778
70
+ nexaai/utils/quantization_utils.py,sha256=FxnZ6-uAE_bl_vQ5jsRXlpU0NBn-U4Y8iN9_O6aCdPA,8070
71
+ nexaai/vlm_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
+ nexaai/vlm_impl/mlx_vlm_impl.py,sha256=MgqJO7OzuPd79gOZZKhSXXMNSP2eBuhhrdCX8XHn6aQ,11090
73
+ nexaai/vlm_impl/pybind_vlm_impl.py,sha256=NuQ_Ep1TnjmGAkjJuUS0Lb6z7iPu3wroLVOx7kiAwlE,8827
74
+ nexaai-1.0.16.dist-info/METADATA,sha256=gk9R_PFvsemCDPnj5Yg1AHyTlc61-8sJ4h9KpBqDcWc,1230
75
+ nexaai-1.0.16.dist-info/WHEEL,sha256=KUuBC6lxAbHCKilKua8R9W_TM71_-9Sg5uEP3uDWcoU,101
76
+ nexaai-1.0.16.dist-info/top_level.txt,sha256=LRE2YERlrZk2vfuygnSzsEeqSknnZbz3Z1MHyNmBU4w,7
77
+ nexaai-1.0.16.dist-info/RECORD,,
@@ -1,65 +0,0 @@
1
- nexaai/__init__.py,sha256=Lt8NU57eTMtWrDYzpFeYR9XtGAPXqizynP83TPU0UW0,2105
2
- nexaai/_stub.cp310-win_amd64.pyd,sha256=-P_tIyyeV6tlnsRGLjWq6x_cNBjIBmsP5iStLN3LMfU,10752
3
- nexaai/_version.py,sha256=IqbggDDOYg8HN56vtXH3yEF4AsPYxs6lzViGqUESmiU,147
4
- nexaai/asr.py,sha256=_fsGaxpiU137bUtO5ujtFSYCI1RLsyeEm3Gf4GhHVRk,2118
5
- nexaai/base.py,sha256=qQBCiQVNzgpkQjZX9aiFDEdbAAe56TROKC3WnWra2Zg,1021
6
- nexaai/common.py,sha256=6keIpdX5XS5us4z79EMoa6RSkVze9SbbXax13IJ9yvs,3525
7
- nexaai/cv.py,sha256=a6-csgYNDzPziJ0EojE9-BeM_xCny4UvWWbpnJ7GL-A,3365
8
- nexaai/embedder.py,sha256=3a81s7JapvYxCRbWPFKp_9EWBKW7WYqF03gk87YuGKU,2524
9
- nexaai/image_gen.py,sha256=4iASOKxJosMznLarTvOxJQDNaas251O81bfUWJTUBfE,4496
10
- nexaai/llm.py,sha256=Qwm1q_NStLfD-JYZQIvxniWnAmwNl1V6LUON3Me7w_I,3663
11
- nexaai/rerank.py,sha256=_zGWmX6eDigY2kViMKCtNssp4JMEeVycZZfJH9eAZOY,1927
12
- nexaai/runtime.py,sha256=LxAUejH9uaci8IGz9_h0l-MMeYcwTlBjVKN_0u4Q4Qo,2021
13
- nexaai/tts.py,sha256=afs6sx0w0Tvs_aJlyZRPm62qQpTrs-fW_jDHrMkc4AA,2241
14
- nexaai/vlm.py,sha256=STjXCw67ABrHrEll8A2NGiwmfo7MotfYgBh1k1aNxkk,4775
15
- nexaai/asr_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- nexaai/asr_impl/mlx_asr_impl.py,sha256=XwMX3LYMeulp8cDS0TCCYcjvttFHAyDWQ_oMvABwQmI,3349
17
- nexaai/asr_impl/pybind_asr_impl.py,sha256=20o5SOPzhF9x41ra8L_qIM7YxCkYeLb5csSrNde-dds,1560
18
- nexaai/binds/__init__.py,sha256=ENl-uoIF9-3XGIXitVgZ2QmJ6p7Yet4h1-X7nUDZ0Hk,108
19
- nexaai/binds/common_bind.cp310-win_amd64.pyd,sha256=AjhStb-aw6IHVxu0cWpDY20ICIC2acZksV_ZtEPdu3Y,201216
20
- nexaai/binds/embedder_bind.cp310-win_amd64.pyd,sha256=ejExBS2RxKyFt7FQLNulYzyxBVHCsLh41tjolpfBprc,182784
21
- nexaai/binds/libcrypto-3-x64.dll,sha256=PYwJJtM4xpo2IQfxm-of6VR6rtVcHCyodwcvBHmfzig,7315968
22
- nexaai/binds/libssl-3-x64.dll,sha256=mp_RoRjYcCeAuqMy3QDYvxQ-cjAMUNCuwA320oXVVpg,1313792
23
- nexaai/binds/llm_bind.cp310-win_amd64.pyd,sha256=x6h4MgbWdUc-LiMdt7UajjU3Bo2vkgSkOWUVvH_Dhkk,162816
24
- nexaai/binds/nexa_bridge.dll,sha256=_rMUlmUtOkYcVNhN8A4SbiHHN6_MOe2zuR-sudq-FsM,168448
25
- nexaai/binds/vlm_bind.cp310-win_amd64.pyd,sha256=_xx5wPF6KYRepPmUG9uoCzmJKvav6UPMERG_jRSumB0,168960
26
- nexaai/binds/nexa_llama_cpp/ggml-base.dll,sha256=DLsVg-UfgCr1u0lbELnD09QP6X-6VeBesSV4Kilz6UM,532480
27
- nexaai/binds/nexa_llama_cpp/ggml-cpu.dll,sha256=x9PpcRyjv6i_G9sY5SJe_688D8qkJAoOdeJ7ik0ZtvY,672768
28
- nexaai/binds/nexa_llama_cpp/ggml-cuda.dll,sha256=4m8J1FhsyI6CqcDNN9M2XeKTqwS0jP36z3JwWP9b0d4,313528832
29
- nexaai/binds/nexa_llama_cpp/ggml-vulkan.dll,sha256=rnOuHw9t_iFk5RS9YWdAdY6d1o3pr2jA6Efle5CeoYI,36627456
30
- nexaai/binds/nexa_llama_cpp/ggml.dll,sha256=ZG0QUUE6PE2MSbGKtK0dX0REHtvpW_HbXm-VaunkEgU,66560
31
- nexaai/binds/nexa_llama_cpp/llama.dll,sha256=zD55dX6caZWOkun3e_XbY3D3Awe_o0G273XLZNVbK_Y,1611776
32
- nexaai/binds/nexa_llama_cpp/mtmd.dll,sha256=MX_2-6kdLu7gEBRALsqXhXgflbcrmpG5IRv0jpzgg5o,561152
33
- nexaai/binds/nexa_llama_cpp/nexa_plugin.dll,sha256=gADHNJ1ig-5_wtDcfcKEhUVtZbdOis81OhpeSxyfNqA,1405440
34
- nexaai/cv_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- nexaai/cv_impl/mlx_cv_impl.py,sha256=QLd_8w90gtxH8kmssaDYatCTRvQNIJuUGKZNnYrmx6E,3317
36
- nexaai/cv_impl/pybind_cv_impl.py,sha256=aSOCAxmHrwJbEkSN6VX3Cykqlj_9RIpVrZXILul04GA,1096
37
- nexaai/embedder_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
- nexaai/embedder_impl/mlx_embedder_impl.py,sha256=Kzd-veLNl95FbI2oEJMtr6qKbjtPDDajzsGUVjJfTRA,4598
39
- nexaai/embedder_impl/pybind_embedder_impl.py,sha256=eH2L--L6BAl-46UOzm84pfjIkJtQKVd63-r62eb0Vg0,3670
40
- nexaai/image_gen_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
- nexaai/image_gen_impl/mlx_image_gen_impl.py,sha256=peUE9ue9ApaPlZVOICBWiHtd13sY40OWQbE8EjfIUMU,11511
42
- nexaai/image_gen_impl/pybind_image_gen_impl.py,sha256=514RFQMSO0Rhacq0IYzlEhEr6QfaprnGew0Rjz8HZI4,3777
43
- nexaai/llm_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
- nexaai/llm_impl/mlx_llm_impl.py,sha256=r9Qa1ZuduRAcRjmqo2J_zlqhprVPe3ioZtUbi7yIvYY,11426
45
- nexaai/llm_impl/pybind_llm_impl.py,sha256=s2Cb035xDbh1ZhGNys0LRtAR6b6n4-YVKSC5voD4_Tk,8269
46
- nexaai/rerank_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
- nexaai/rerank_impl/mlx_rerank_impl.py,sha256=x8L6zCccV2I4bq4V5zAOcrWFe5Ckle7z5J_00tao8bI,3335
48
- nexaai/rerank_impl/pybind_rerank_impl.py,sha256=1IW925bYv4FRwZDNzf9epEzdDqR6T3OONgTLBd-cOn8,1556
49
- nexaai/tts_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
- nexaai/tts_impl/mlx_tts_impl.py,sha256=LcH9bVdIl3Q6lOzSUB_X2s-_nWFmlCl1yL7XSUK0fYI,3195
51
- nexaai/tts_impl/pybind_tts_impl.py,sha256=n3z4zmPQayQJgAwcvETw0IBUCp8IYROuYFSg0tAy_8Y,1487
52
- nexaai/utils/avatar_fetcher.py,sha256=D01f8je-37Nd68zGw8MYK2m7y3fvGlC6h0KR-aN9kdU,3925
53
- nexaai/utils/decode.py,sha256=0Z9jDH4ICzw4YXj8nD4L-sMouDaev-TISGRQ4KzidWE,421
54
- nexaai/utils/manifest_utils.py,sha256=nPqK24srLX41x3WU4R-OGQR9u0XA7ZTHY1MQXBKXdrM,12652
55
- nexaai/utils/model_manager.py,sha256=3rDODGClgnM24LFWIoM-TDpXkpV1vyJSdlv7Qk4ZaPE,57434
56
- nexaai/utils/model_types.py,sha256=arIyb9q-1uG0nyUGdWZaxxDJAxv0cfnJEpjCzyELL5Q,1416
57
- nexaai/utils/progress_tracker.py,sha256=BztrFqtjwNUmeREwZ5m7H6ZcrVzQEbpZfsxndWh4z0A,15778
58
- nexaai/utils/quantization_utils.py,sha256=jjQaz7K4qH6TdP8Tnv5Ktb2viz8BaVBSOrb_jm3ns28,7889
59
- nexaai/vlm_impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
- nexaai/vlm_impl/mlx_vlm_impl.py,sha256=oY_qb9z_iF0zArBuY5CCYIvZcA3R0i_NKXrr_r-QSgg,10989
61
- nexaai/vlm_impl/pybind_vlm_impl.py,sha256=7Bo0kpSrmOdr--bWSpQBvcaexkPPRt3x1yt9e_jIyDs,8686
62
- nexaai-1.0.15rc1.dist-info/METADATA,sha256=ouq0UBNlkAEIhe1wEZ2S-obMRtIuFAXAeQkOAifuhGg,1233
63
- nexaai-1.0.15rc1.dist-info/WHEEL,sha256=KUuBC6lxAbHCKilKua8R9W_TM71_-9Sg5uEP3uDWcoU,101
64
- nexaai-1.0.15rc1.dist-info/top_level.txt,sha256=LRE2YERlrZk2vfuygnSzsEeqSknnZbz3Z1MHyNmBU4w,7
65
- nexaai-1.0.15rc1.dist-info/RECORD,,