neuralnode 2.1.1__tar.gz → 2.1.3__tar.gz
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-2.1.1 → neuralnode-2.1.3}/PKG-INFO +24 -6
- {neuralnode-2.1.1 → neuralnode-2.1.3}/README.md +21 -5
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docs/documentation.md +20 -5
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/01_basic_usage.py +5 -5
- neuralnode-2.1.3/examples/horus_codes_camples/02_horus_lens.py +16 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/03_one_liner.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/19_gguf_4bit.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/20_gguf_5bit.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/21_gguf_6bit.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/22_gguf_8bit.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/23_gguf_16bit.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/25_interactive_chat.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/README.md +8 -7
- neuralnode-2.1.3/examples/horus_download_guide.py +39 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_tq_ready_gguf.py +2 -2
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_transformers_features.py +6 -15
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/thinking_mode_example.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/horus_chat_voice.py +1 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/pyproject.toml +3 -1
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/__init__.py +5 -2
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/__init__.py +5 -2
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/horus.py +187 -20
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/utils/dependencies.py +8 -1
- neuralnode-2.1.1/examples/horus_codes_camples/02_with_token.py +0 -19
- neuralnode-2.1.1/examples/horus_download_guide.py +0 -233
- neuralnode-2.1.1/nn.md +0 -224
- neuralnode-2.1.1/replica_output_85218.mp3 +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/.env.example +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/.github/workflows/tests.yml +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/Dockerfile +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/LICENSE +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docker-compose.yml +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docs/ecosystem_plan.md +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docs/replica_voice_ids.csv +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docs/replica_voice_ids.md +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/docs/telegram_guide.md +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/agent_with_tools.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/basic_chat.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/04_custom_cache.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/05_4bit_quantization.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/06_8bit_quantization.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/07_multi_gpu.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/08_flash_attention.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/09_data_types.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/10_generation_params.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/11_streaming.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/12_chat_templates.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/13_offline_mode.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/14_force_download.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/15_model_info.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/16_cpu_offloading.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/17_cpu_only.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/18_production_setup.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_codes_camples/24_list_models.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/horus_examples.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/local_models.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/neuralnode_v21_complete_demo.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/shade_model_with_tools.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/telegram_bot_demo.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/tts_demo.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/turboquant_example.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/examples/v3_features.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/neuralnode_horus_replica_telegram.ipynb +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/publish.bat +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/publish.sh +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/requirements_shade.txt +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/scripts/setup.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/debug_import.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/agents/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/chains/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/config/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/core/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/core/openai_blocker.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/diagnostics/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/integrations/discord.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/integrations/slack.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/integrations/telegram.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/integrations/whatsapp.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/memory/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/memory/advanced.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/prompts/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/base.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/ai21.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/anthropic.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/cohere.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/deepseek.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/fireworks.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/google.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/groq.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/mistral.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/perplexity.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat/together.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/chat_models.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/embeddings.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/local/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/local_providers.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/text_generation.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/providers/universal_local.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/rag/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/rag/loaders.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/reasoning/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/replica.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/speech/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/thinking.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/advanced.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/multisearch.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/system/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/system/operations.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tools/web/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/tts/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/turboquant.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/utils/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/utils/logger.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/utils/metrics.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/vectorstores/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/neuralnode/vision/__init__.py +0 -0
- {neuralnode-2.1.1 → neuralnode-2.1.3}/src/nn/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: neuralnode
|
|
3
|
-
Version: 2.1.
|
|
3
|
+
Version: 2.1.3
|
|
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
|
|
@@ -92,9 +92,11 @@ Requires-Dist: groq>=0.4.0; extra == 'groq'
|
|
|
92
92
|
Provides-Extra: horus
|
|
93
93
|
Requires-Dist: accelerate>=0.24.0; extra == 'horus'
|
|
94
94
|
Requires-Dist: bitsandbytes>=0.41.0; extra == 'horus'
|
|
95
|
+
Requires-Dist: diffusers>=0.30.0; extra == 'horus'
|
|
95
96
|
Requires-Dist: einops>=0.7.0; extra == 'horus'
|
|
96
97
|
Requires-Dist: huggingface-hub>=0.23.0; extra == 'horus'
|
|
97
98
|
Requires-Dist: llama-cpp-python>=0.2.0; extra == 'horus'
|
|
99
|
+
Requires-Dist: pillow>=10.0.0; extra == 'horus'
|
|
98
100
|
Requires-Dist: protobuf>=3.20.0; extra == 'horus'
|
|
99
101
|
Requires-Dist: scipy>=1.10.0; extra == 'horus'
|
|
100
102
|
Requires-Dist: sentencepiece>=0.1.99; extra == 'horus'
|
|
@@ -210,6 +212,8 @@ All Horus models use:
|
|
|
210
212
|
- unified chat template: `horus_unified`
|
|
211
213
|
- unified context window: `8192`
|
|
212
214
|
|
|
215
|
+
Horus downloads are public-only. Private or gated Hugging Face repositories are not supported.
|
|
216
|
+
|
|
213
217
|
```python
|
|
214
218
|
import neuralnode as nn
|
|
215
219
|
|
|
@@ -238,11 +242,25 @@ print(HorusModel.list_available_models())
|
|
|
238
242
|
Supported IDs currently include:
|
|
239
243
|
- `tokenaii/horus`
|
|
240
244
|
- `tokenaii/horus/Horus-1.0-4B`
|
|
241
|
-
- `tokenaii/
|
|
242
|
-
- `tokenaii/
|
|
243
|
-
- `tokenaii/
|
|
244
|
-
- `tokenaii/
|
|
245
|
-
- `tokenaii/
|
|
245
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf`
|
|
246
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf`
|
|
247
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf`
|
|
248
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf`
|
|
249
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-F16.gguf`
|
|
250
|
+
- `tokenaii/Horus-Lens-1.0`
|
|
251
|
+
|
|
252
|
+
### Horus Lens text-to-image
|
|
253
|
+
|
|
254
|
+
```python
|
|
255
|
+
import neuralnode as nn
|
|
256
|
+
|
|
257
|
+
model = nn.HorusLensModel("tokenaii/Horus-Lens-1.0").load()
|
|
258
|
+
model.generate_image(
|
|
259
|
+
"A detailed cinematic image of an ancient Egyptian AI lab, golden light",
|
|
260
|
+
output_path="outputs/horus_lens.png",
|
|
261
|
+
seed=42,
|
|
262
|
+
)
|
|
263
|
+
```
|
|
246
264
|
|
|
247
265
|
## Replica TTS
|
|
248
266
|
|
|
@@ -44,6 +44,8 @@ All Horus models use:
|
|
|
44
44
|
- unified chat template: `horus_unified`
|
|
45
45
|
- unified context window: `8192`
|
|
46
46
|
|
|
47
|
+
Horus downloads are public-only. Private or gated Hugging Face repositories are not supported.
|
|
48
|
+
|
|
47
49
|
```python
|
|
48
50
|
import neuralnode as nn
|
|
49
51
|
|
|
@@ -72,11 +74,25 @@ print(HorusModel.list_available_models())
|
|
|
72
74
|
Supported IDs currently include:
|
|
73
75
|
- `tokenaii/horus`
|
|
74
76
|
- `tokenaii/horus/Horus-1.0-4B`
|
|
75
|
-
- `tokenaii/
|
|
76
|
-
- `tokenaii/
|
|
77
|
-
- `tokenaii/
|
|
78
|
-
- `tokenaii/
|
|
79
|
-
- `tokenaii/
|
|
77
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf`
|
|
78
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf`
|
|
79
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf`
|
|
80
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf`
|
|
81
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-F16.gguf`
|
|
82
|
+
- `tokenaii/Horus-Lens-1.0`
|
|
83
|
+
|
|
84
|
+
### Horus Lens text-to-image
|
|
85
|
+
|
|
86
|
+
```python
|
|
87
|
+
import neuralnode as nn
|
|
88
|
+
|
|
89
|
+
model = nn.HorusLensModel("tokenaii/Horus-Lens-1.0").load()
|
|
90
|
+
model.generate_image(
|
|
91
|
+
"A detailed cinematic image of an ancient Egyptian AI lab, golden light",
|
|
92
|
+
output_path="outputs/horus_lens.png",
|
|
93
|
+
seed=42,
|
|
94
|
+
)
|
|
95
|
+
```
|
|
80
96
|
|
|
81
97
|
## Replica TTS
|
|
82
98
|
|
|
@@ -103,6 +103,7 @@ Current Horus guarantees:
|
|
|
103
103
|
- chat template is unified as `horus_unified`
|
|
104
104
|
- Horus can use Replica TTS
|
|
105
105
|
- Horus can use TurboQuant on Transformers-based generation paths
|
|
106
|
+
- Horus downloads are public-only
|
|
106
107
|
|
|
107
108
|
Example:
|
|
108
109
|
|
|
@@ -128,11 +129,25 @@ print(response.content)
|
|
|
128
129
|
Available Horus model IDs:
|
|
129
130
|
- `tokenaii/horus`
|
|
130
131
|
- `tokenaii/horus/Horus-1.0-4B`
|
|
131
|
-
- `tokenaii/
|
|
132
|
-
- `tokenaii/
|
|
133
|
-
- `tokenaii/
|
|
134
|
-
- `tokenaii/
|
|
135
|
-
- `tokenaii/
|
|
132
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf`
|
|
133
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf`
|
|
134
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf`
|
|
135
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf`
|
|
136
|
+
- `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-F16.gguf`
|
|
137
|
+
- `tokenaii/Horus-Lens-1.0`
|
|
138
|
+
|
|
139
|
+
Horus Lens text-to-image example:
|
|
140
|
+
|
|
141
|
+
```python
|
|
142
|
+
import neuralnode as nn
|
|
143
|
+
|
|
144
|
+
model = nn.HorusLensModel("tokenaii/Horus-Lens-1.0").load()
|
|
145
|
+
model.generate_image(
|
|
146
|
+
"A detailed cinematic image of an ancient Egyptian AI lab, golden light",
|
|
147
|
+
output_path="outputs/horus_lens.png",
|
|
148
|
+
seed=42,
|
|
149
|
+
)
|
|
150
|
+
```
|
|
136
151
|
|
|
137
152
|
## Replica
|
|
138
153
|
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
Basic usage - Choose a Horus model version
|
|
3
3
|
Available versions with different compression levels:
|
|
4
4
|
- tokenaii/horus/Horus-1.0-4B (Full - 8GB+ VRAM)
|
|
5
|
-
- tokenaii/
|
|
6
|
-
- tokenaii/
|
|
7
|
-
- tokenaii/
|
|
8
|
-
- tokenaii/
|
|
5
|
+
- tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf (4-bit - 2GB VRAM)
|
|
6
|
+
- tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf (5-bit - 2.5GB VRAM)
|
|
7
|
+
- tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf (6-bit - 3GB VRAM)
|
|
8
|
+
- tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf (8-bit - 4GB VRAM)
|
|
9
9
|
"""
|
|
10
10
|
|
|
11
11
|
import neuralnode as nn
|
|
12
12
|
|
|
13
13
|
# Choose your model version (replace with your preferred version)
|
|
14
|
-
MODEL_ID = "tokenaii/
|
|
14
|
+
MODEL_ID = "tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf" # 4-bit for low VRAM
|
|
15
15
|
|
|
16
16
|
# Download and load
|
|
17
17
|
model = nn.HorusModel(MODEL_ID).load()
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generate an image with Horus Lens.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import neuralnode as nn
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
model = nn.HorusLensModel("tokenaii/Horus-Lens-1.0").load()
|
|
9
|
+
|
|
10
|
+
model.generate_image(
|
|
11
|
+
"A detailed cinematic image of an ancient Egyptian AI lab, golden light",
|
|
12
|
+
output_path="outputs/horus_lens.png",
|
|
13
|
+
seed=42,
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
print("Saved image to outputs/horus_lens.png")
|
|
@@ -9,7 +9,7 @@ Choose your model version before running:
|
|
|
9
9
|
import neuralnode as nn
|
|
10
10
|
|
|
11
11
|
# One-liner: create model, load it, and chat in a single chain
|
|
12
|
-
response = nn.HorusModel("tokenaii/
|
|
12
|
+
response = nn.HorusModel("tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf").load().chat(
|
|
13
13
|
[{"role": "user", "content": "What is AI?"}]
|
|
14
14
|
)
|
|
15
15
|
|
|
@@ -7,7 +7,7 @@ import neuralnode as nn
|
|
|
7
7
|
|
|
8
8
|
# Load GGUF 4-bit model (~2.78GB file, ~2GB VRAM)
|
|
9
9
|
model = nn.HorusModel(
|
|
10
|
-
"tokenaii/
|
|
10
|
+
"tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf"
|
|
11
11
|
).load()
|
|
12
12
|
|
|
13
13
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
@@ -6,7 +6,7 @@ Best for: Balance between quality and memory (~2.5GB VRAM)
|
|
|
6
6
|
import neuralnode as nn
|
|
7
7
|
|
|
8
8
|
model = nn.HorusModel(
|
|
9
|
-
"tokenaii/
|
|
9
|
+
"tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf"
|
|
10
10
|
).load()
|
|
11
11
|
|
|
12
12
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
@@ -6,7 +6,7 @@ Best for: Better quality than 4/5-bit with reasonable memory
|
|
|
6
6
|
import neuralnode as nn
|
|
7
7
|
|
|
8
8
|
model = nn.HorusModel(
|
|
9
|
-
"tokenaii/
|
|
9
|
+
"tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf"
|
|
10
10
|
).load()
|
|
11
11
|
|
|
12
12
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
@@ -6,7 +6,7 @@ Best for: Good quality with ~50% memory savings
|
|
|
6
6
|
import neuralnode as nn
|
|
7
7
|
|
|
8
8
|
model = nn.HorusModel(
|
|
9
|
-
"tokenaii/
|
|
9
|
+
"tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf"
|
|
10
10
|
).load()
|
|
11
11
|
|
|
12
12
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
@@ -7,7 +7,7 @@ Best for: Maximum quality, same as original model
|
|
|
7
7
|
import neuralnode as nn
|
|
8
8
|
|
|
9
9
|
model = nn.HorusModel(
|
|
10
|
-
"tokenaii/
|
|
10
|
+
"tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-F16.gguf"
|
|
11
11
|
).load()
|
|
12
12
|
|
|
13
13
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
@@ -6,7 +6,7 @@ Press Ctrl+C to exit
|
|
|
6
6
|
import neuralnode as nn
|
|
7
7
|
|
|
8
8
|
# Load model (choose any available model)
|
|
9
|
-
MODEL_ID = "tokenaii/
|
|
9
|
+
MODEL_ID = "tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf"
|
|
10
10
|
|
|
11
11
|
print("="*50)
|
|
12
12
|
print(" Horus Chat Terminal")
|
|
@@ -7,11 +7,12 @@ This folder contains code examples for downloading and using Horus models.
|
|
|
7
7
|
| Model ID | File Size | Type | Best For |
|
|
8
8
|
|----------|-----------|------|----------|
|
|
9
9
|
| `tokenaii/horus/Horus-1.0-4B` | ~10 GB | Safetensors | Maximum accuracy, GPU with 8GB+ VRAM |
|
|
10
|
-
| `tokenaii/
|
|
11
|
-
| `tokenaii/
|
|
12
|
-
| `tokenaii/
|
|
13
|
-
| `tokenaii/
|
|
14
|
-
| `tokenaii/
|
|
10
|
+
| `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf` | 2.78 GB | GGUF 4-bit | Low VRAM (4-6GB), fastest inference |
|
|
11
|
+
| `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q5_K_M.gguf` | 3.23 GB | GGUF 5-bit | Balance between quality and memory |
|
|
12
|
+
| `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q6_K.gguf` | 3.71 GB | GGUF 6-bit | Better quality with reasonable memory |
|
|
13
|
+
| `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q8_0.gguf` | 4.8 GB | GGUF 8-bit | Good quality with ~50% memory savings |
|
|
14
|
+
| `tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-F16.gguf` | 9.83 GB | GGUF 16-bit | Maximum quality, same as original |
|
|
15
|
+
| `tokenaii/Horus-Lens-1.0` | Unknown | Text-to-image | Image generation from prompts |
|
|
15
16
|
|
|
16
17
|
## Installation
|
|
17
18
|
|
|
@@ -24,7 +25,7 @@ pip install neuralnode[horus]
|
|
|
24
25
|
```python
|
|
25
26
|
import neuralnode as nn
|
|
26
27
|
|
|
27
|
-
model = nn.HorusModel("tokenaii/
|
|
28
|
+
model = nn.HorusModel("tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf").load()
|
|
28
29
|
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
29
30
|
print(response.content)
|
|
30
31
|
```
|
|
@@ -33,7 +34,7 @@ print(response.content)
|
|
|
33
34
|
|
|
34
35
|
### Basic Usage
|
|
35
36
|
- `01_basic_usage.py` - Simple download and use
|
|
36
|
-
- `
|
|
37
|
+
- `02_horus_lens.py` - Generate an image with Horus Lens
|
|
37
38
|
- `03_one_liner.py` - One-liner usage
|
|
38
39
|
- `04_custom_cache.py` - Custom download location
|
|
39
40
|
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Horus public model download and usage guide.
|
|
3
|
+
|
|
4
|
+
NeuralNode Horus downloads are public-only. If a Hugging Face repository is
|
|
5
|
+
private or gated, loading fails instead of using credentials.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
import neuralnode as nn
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def example_simple_chat_model():
|
|
12
|
+
model = nn.HorusModel("tokenaii/horus").load()
|
|
13
|
+
response = model.chat([{"role": "user", "content": "Hello!"}])
|
|
14
|
+
print(response.content)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def example_custom_cache():
|
|
18
|
+
model = nn.HorusModel(
|
|
19
|
+
"tokenaii/horus",
|
|
20
|
+
cache_dir="D:/Models/Horus",
|
|
21
|
+
).load()
|
|
22
|
+
print(model.get_model_info())
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def example_lens_image():
|
|
26
|
+
model = nn.HorusLensModel("tokenaii/Horus-Lens-1.0").load()
|
|
27
|
+
model.generate_image(
|
|
28
|
+
"A cinematic portrait of an ancient Egyptian AI oracle, detailed, warm light",
|
|
29
|
+
output_path="outputs/horus_lens.png",
|
|
30
|
+
seed=42,
|
|
31
|
+
)
|
|
32
|
+
print("Saved image to outputs/horus_lens.png")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
if __name__ == "__main__":
|
|
36
|
+
print(nn.HorusModel.list_available_models())
|
|
37
|
+
example_simple_chat_model()
|
|
38
|
+
example_custom_cache()
|
|
39
|
+
example_lens_image()
|
|
@@ -13,8 +13,8 @@ import neuralnode as nn
|
|
|
13
13
|
|
|
14
14
|
def main() -> None:
|
|
15
15
|
# Example TQ model id (replace with the real published TQ GGUF file when available)
|
|
16
|
-
tq_model_id = "tokenaii/
|
|
17
|
-
q4_model_id = "tokenaii/
|
|
16
|
+
tq_model_id = "tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-TQ3_1S.gguf"
|
|
17
|
+
q4_model_id = "tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf"
|
|
18
18
|
|
|
19
19
|
# Optional: register TQ in Horus listed models for nicer discovery.
|
|
20
20
|
nn.HorusModel.register_gguf_variant(
|
|
@@ -292,21 +292,12 @@ def example_8_generation_params():
|
|
|
292
292
|
print()
|
|
293
293
|
|
|
294
294
|
|
|
295
|
-
def
|
|
296
|
-
"""Network and
|
|
295
|
+
def example_9_network_options():
|
|
296
|
+
"""Network and download options."""
|
|
297
297
|
print("=" * 70)
|
|
298
|
-
print("Example 9: Network &
|
|
298
|
+
print("Example 9: Network & Download Options")
|
|
299
299
|
print("=" * 70)
|
|
300
|
-
|
|
301
|
-
# With HuggingFace token (for private/gated models)
|
|
302
|
-
model_token = nn.HorusModel(
|
|
303
|
-
"tokenaii/horus",
|
|
304
|
-
token="hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
|
|
305
|
-
).load()
|
|
306
|
-
|
|
307
|
-
# Via environment variable (recommended):
|
|
308
|
-
# export HF_TOKEN="your_token_here"
|
|
309
|
-
|
|
300
|
+
|
|
310
301
|
# With proxy
|
|
311
302
|
model_proxy = nn.HorusModel(
|
|
312
303
|
"tokenaii/horus",
|
|
@@ -328,7 +319,7 @@ def example_9_network_auth():
|
|
|
328
319
|
resume_download=True,
|
|
329
320
|
).load()
|
|
330
321
|
|
|
331
|
-
print("[OK] Network
|
|
322
|
+
print("[OK] Network and download options demonstrated")
|
|
332
323
|
print()
|
|
333
324
|
|
|
334
325
|
|
|
@@ -492,7 +483,7 @@ if __name__ == "__main__":
|
|
|
492
483
|
# example_6_attention_options()
|
|
493
484
|
# example_7_advanced_loading()
|
|
494
485
|
# example_8_generation_params()
|
|
495
|
-
#
|
|
486
|
+
# example_9_network_options()
|
|
496
487
|
# example_10_model_info()
|
|
497
488
|
example_11_list_models()
|
|
498
489
|
# example_12_chat_templates()
|
|
@@ -11,7 +11,7 @@ sys.path.insert(0, r"d:\Work Space\NeuralNode\neuralnode\src")
|
|
|
11
11
|
import neuralnode as nn
|
|
12
12
|
|
|
13
13
|
# Configuration
|
|
14
|
-
MODEL_ID = "tokenaii/
|
|
14
|
+
MODEL_ID = "tokenaii/Horus-1.0-4B-GGUF/Horus-1.0-4B-Q4_K_M.gguf"
|
|
15
15
|
CACHE_DIR = "D:/neuralnode_models"
|
|
16
16
|
|
|
17
17
|
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "neuralnode"
|
|
7
|
-
version = "2.1.
|
|
7
|
+
version = "2.1.3"
|
|
8
8
|
description = "Comprehensive AI Framework with 50+ LLM Providers, Advanced Agents, Chains, Memory, RAG, and 100+ Tools"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -66,12 +66,14 @@ horus = [
|
|
|
66
66
|
"huggingface_hub>=0.23.0",
|
|
67
67
|
"torch>=2.0.0",
|
|
68
68
|
"transformers>=4.35.0",
|
|
69
|
+
"diffusers>=0.30.0",
|
|
69
70
|
"accelerate>=0.24.0",
|
|
70
71
|
"bitsandbytes>=0.41.0", # 4-bit/8-bit quantization
|
|
71
72
|
"sentencepiece>=0.1.99", # Tokenization
|
|
72
73
|
"protobuf>=3.20.0", # Model serialization
|
|
73
74
|
"scipy>=1.10.0", # Math operations
|
|
74
75
|
"einops>=0.7.0", # Tensor operations
|
|
76
|
+
"pillow>=10.0.0", # Image output
|
|
75
77
|
]
|
|
76
78
|
|
|
77
79
|
# Flash Attention (Windows requires special install)
|
|
@@ -42,7 +42,7 @@ Quick Start::
|
|
|
42
42
|
text = sr.listen()
|
|
43
43
|
"""
|
|
44
44
|
|
|
45
|
-
__version__ = "2.1.
|
|
45
|
+
__version__ = "2.1.3"
|
|
46
46
|
__author__ = "NeuralNode Contributors"
|
|
47
47
|
|
|
48
48
|
# ── Core types ────────────────────────────────────────────────────────────────
|
|
@@ -83,8 +83,11 @@ from .providers import (
|
|
|
83
83
|
UniversalLocalProvider,
|
|
84
84
|
# Custom models
|
|
85
85
|
Horus,
|
|
86
|
+
HorusLensModel,
|
|
86
87
|
HorusModel,
|
|
87
88
|
HorusProvider,
|
|
89
|
+
load_horus_lens,
|
|
90
|
+
print_model_list,
|
|
88
91
|
)
|
|
89
92
|
|
|
90
93
|
# ── Memory ────────────────────────────────────────────────────────────────────
|
|
@@ -648,7 +651,7 @@ __all__ = [
|
|
|
648
651
|
"OllamaProvider", "AnthropicProvider", "GoogleProvider",
|
|
649
652
|
"GroqProvider", "MistralProvider", "CohereProvider", "DeepSeekProvider",
|
|
650
653
|
"LlamaCppProvider", "TransformersProvider", "UniversalLocalProvider",
|
|
651
|
-
"Horus", "HorusModel", "HorusProvider",
|
|
654
|
+
"Horus", "HorusLensModel", "HorusModel", "HorusProvider", "load_horus_lens", "print_model_list",
|
|
652
655
|
|
|
653
656
|
# Memory
|
|
654
657
|
"ConversationMemory", "FileMemory", "SlidingWindowMemory", "SummaryMemory",
|
|
@@ -108,12 +108,15 @@ from .universal_local import UniversalLocalProvider, load_local_model
|
|
|
108
108
|
|
|
109
109
|
# ── Custom Model Providers ─────────────────────────────────────────────────────
|
|
110
110
|
try:
|
|
111
|
-
from .horus import HorusProvider, HorusModel, Horus, load_horus
|
|
111
|
+
from .horus import HorusProvider, HorusModel, HorusLensModel, Horus, load_horus, load_horus_lens, print_model_list
|
|
112
112
|
except ImportError:
|
|
113
113
|
HorusProvider = None # type: ignore
|
|
114
114
|
HorusModel = None # type: ignore
|
|
115
|
+
HorusLensModel = None # type: ignore
|
|
115
116
|
Horus = None # type: ignore
|
|
116
117
|
load_horus = None # type: ignore
|
|
118
|
+
load_horus_lens = None # type: ignore
|
|
119
|
+
print_model_list = None # type: ignore
|
|
117
120
|
|
|
118
121
|
# MLX Provider (Apple Silicon — optional)
|
|
119
122
|
try:
|
|
@@ -235,5 +238,5 @@ __all__ = [
|
|
|
235
238
|
"UniversalLocalProvider", "load_local_model",
|
|
236
239
|
|
|
237
240
|
# Custom Models
|
|
238
|
-
"HorusProvider", "HorusModel", "Horus", "load_horus",
|
|
241
|
+
"HorusProvider", "HorusModel", "HorusLensModel", "Horus", "load_horus", "load_horus_lens", "print_model_list",
|
|
239
242
|
]
|