neuralnode 2.2.1__py3-none-any.whl → 2.2.2__py3-none-any.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.
neuralnode/__init__.py CHANGED
@@ -42,7 +42,7 @@ Quick Start::
42
42
  text = sr.listen()
43
43
  """
44
44
 
45
- __version__ = "2.2.1"
45
+ __version__ = "2.2.2"
46
46
  __author__ = "NeuralNode Contributors"
47
47
 
48
48
  # ── Core types ────────────────────────────────────────────────────────────────
@@ -438,6 +438,7 @@ class HorusProvider(BaseLLMProvider):
438
438
  model_id: str = "horus",
439
439
  device: Optional[str] = None,
440
440
  n_gpu_layers: Optional[int] = None,
441
+ n_ctx: Optional[int] = None,
441
442
  torch_dtype: Optional[Any] = None,
442
443
  load_in_8bit: bool = False,
443
444
  load_in_4bit: bool = False,
@@ -518,6 +519,7 @@ class HorusProvider(BaseLLMProvider):
518
519
  self.model_id = model_id
519
520
  self.device = device or self._resolve_device()
520
521
  self.n_gpu_layers = n_gpu_layers
522
+ self.n_ctx = n_ctx
521
523
  self._user_specified_dtype = torch_dtype # track explicit user choice
522
524
  self.torch_dtype = self._resolve_torch_dtype(torch_dtype)
523
525
  self.load_in_8bit = load_in_8bit
@@ -734,6 +736,13 @@ class HorusProvider(BaseLLMProvider):
734
736
  info = getattr(self, "_model_info", None) or self.HORUS_MODELS.get(self.model_id, {})
735
737
  return int(info.get("context_window", HORUS_CONTEXT_WINDOW))
736
738
 
739
+ def _runtime_context_window(self) -> int:
740
+ if self.n_ctx is not None:
741
+ return max(int(self.n_ctx), 1)
742
+ if self._is_gguf_model_id(self.model_id):
743
+ return min(self._context_window(), HORUS_CONTEXT_WINDOW)
744
+ return self._context_window()
745
+
737
746
  def load(self) -> "HorusProvider":
738
747
  self._configure_external_logging()
739
748
  if self.model is not None:
@@ -1161,7 +1170,7 @@ class HorusProvider(BaseLLMProvider):
1161
1170
 
1162
1171
  llama_kwargs: Dict[str, Any] = {
1163
1172
  "model_path": model_path,
1164
- "n_ctx": self._context_window(),
1173
+ "n_ctx": self._runtime_context_window(),
1165
1174
  "verbose": False,
1166
1175
  "n_gpu_layers": self._resolve_n_gpu_layers(),
1167
1176
  }
@@ -1991,6 +2000,7 @@ class HorusProvider(BaseLLMProvider):
1991
2000
  "flash_attention": self.use_flash_attention,
1992
2001
  "attn_implementation": self.attn_implementation,
1993
2002
  "context_window": self._context_window(),
2003
+ "runtime_context_window": self._runtime_context_window(),
1994
2004
  "chat_template": UNIFIED_CHAT_TEMPLATE_NAME,
1995
2005
  "tts_enabled": self.enable_tts,
1996
2006
  "tts_voice_id": self.tts_voice_id,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: neuralnode
3
- Version: 2.2.1
3
+ Version: 2.2.2
4
4
  Summary: Comprehensive AI Framework with 50+ LLM Providers, Advanced Agents, Chains, Memory, RAG, and 100+ Tools
5
5
  Project-URL: Homepage, https://assem.cloud/
6
6
  Project-URL: Documentation, https://neuralnode.readthedocs.io
@@ -1,4 +1,4 @@
1
- neuralnode/__init__.py,sha256=zjp3nMVUU7k9VAueg_VCrrjrnEOy69xzMJ1sCoUzG88,25360
1
+ neuralnode/__init__.py,sha256=r1L6pRe7BQccux9Ib6b8Pp7OnpOlFHAV88lLG8xLnT0,25360
2
2
  neuralnode/replica.py,sha256=QlvR3tfLt0Y7XSsUsB5wiKI_EO7oUFM-8XH0wsrrvls,7995
3
3
  neuralnode/thinking.py,sha256=iBfCfBrLkD6AaHf2WaWfmzhFeV6zcXEZDjzLxmYt4VY,12614
4
4
  neuralnode/turboquant.py,sha256=bRKsUbniJrtxvQ8mQqlSK-N6M2PltJJxd5H4lBW7kDc,18340
@@ -372,7 +372,7 @@ neuralnode/prompts/__init__.py,sha256=GVCynrijvJ6zXWmg8knn7AkxGM0PFHwU7rEOUAdlJr
372
372
  neuralnode/providers/__init__.py,sha256=e0bI1rFwIl-olmVKrZ5wyzpWl9HputNf8FrBBS9gM1k,9422
373
373
  neuralnode/providers/base.py,sha256=kkNDOuij2E4TM2lsbJKoRwUDd2n6u0C67Qg0hy449iE,12668
374
374
  neuralnode/providers/embeddings.py,sha256=P2AO36a0j6kd2ldN0CpVJZ0q0hDkKlUlTlf-_8x3Iz4,37551
375
- neuralnode/providers/horus.py,sha256=moiCVT5sfhkFbE3l-FBaj2SABybPOxt6BPjCBTUrYto,98361
375
+ neuralnode/providers/horus.py,sha256=M1q1nuxqMAfanQdE02cud13SCr1PA4DwyoizVtM7PYU,98785
376
376
  neuralnode/providers/local_providers.py,sha256=5c5E7kLhk-YTEp9EXNX3-BIiacvWPgxMRZye9A6htNA,61417
377
377
  neuralnode/providers/text_generation.py,sha256=FMTJ6aDe78ODvnZ7WEFRfqeNiij0sBR0pRRjU7rxxag,36513
378
378
  neuralnode/providers/universal_local.py,sha256=DNqICw0G99eR5BnXjYCeEvjUhnoSS22D4HnLs0x9Y70,19541
@@ -407,7 +407,7 @@ neuralnode/utils/logger.py,sha256=vh0K2JYqqgwdtyYjtNbPK9QW6ZhOEqpp_NOHghl94e8,86
407
407
  neuralnode/utils/metrics.py,sha256=z5JHDV-I5foOiY8j7vQE-GYyTSM5p04_EcWBP7qJlY4,7389
408
408
  neuralnode/vectorstores/__init__.py,sha256=vCQ-L7jbhTVEQPrLehpzhm6K3SQIprUicF1X7BOF8w8,28172
409
409
  neuralnode/vision/__init__.py,sha256=MepTSuvOBXjGJK1i2zxZLSGlBm-WOV1ylu4Xa-pAObw,5756
410
- neuralnode-2.2.1.dist-info/METADATA,sha256=RLzKJV8g7Z7cVSi5-l6j5ZhkDdUsZfLZ26dioqtG8Vk,14175
411
- neuralnode-2.2.1.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
412
- neuralnode-2.2.1.dist-info/licenses/LICENSE,sha256=Pwd03UGSoleqoehkTRuTj6FwLzMknjSiVDuLOD2sfts,1067
413
- neuralnode-2.2.1.dist-info/RECORD,,
410
+ neuralnode-2.2.2.dist-info/METADATA,sha256=ckW4ArzefKInotxmLZ3hSgrtyM8-IKIkBQn2n46wWZg,14175
411
+ neuralnode-2.2.2.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
412
+ neuralnode-2.2.2.dist-info/licenses/LICENSE,sha256=Pwd03UGSoleqoehkTRuTj6FwLzMknjSiVDuLOD2sfts,1067
413
+ neuralnode-2.2.2.dist-info/RECORD,,