parishad 0.1.0__tar.gz → 0.1.1__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.
- {parishad-0.1.0 → parishad-0.1.1}/CHANGELOG.md +6 -0
- {parishad-0.1.0 → parishad-0.1.1}/PKG-INFO +3 -1
- {parishad-0.1.0 → parishad-0.1.1}/pyproject.toml +3 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/__init__.py +1 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/config/pipeline.core.yaml +1 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/config/pipeline.extended.yaml +1 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/config/pipeline.fast.yaml +1 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/data/models.json +1 -1
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/downloader.py +5 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/orchestrator/config_loader.py +2 -2
- {parishad-0.1.0 → parishad-0.1.1}/.github/workflows/publish.yml +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/CODE_OF_CONDUCT.md +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/CONTRIBUTING.md +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/LICENSE +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/README.md +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/SECURITY.md +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/docs/assets/logo.jpeg +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/docs/assets/logo.svg +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/__main__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/checker/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/checker/deterministic.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/checker/ensemble.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/checker/retrieval.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/cli/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/cli/code.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/cli/main.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/cli/prarambh.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/cli/sthapana.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/config/modes.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/config/user_config.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/data/catalog.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/memory/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/base.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/huggingface.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/llama_cpp.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/mlx_lm.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/ollama.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/openai_api.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/backends/transformers_hf.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/costs.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/optimizations.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/profiles.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/reliability.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/runner.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/models/tokenization.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/orchestrator/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/orchestrator/engine.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/orchestrator/exceptions.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/base.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/dandadhyaksha.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/darbari.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/majumdar.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/pantapradhan.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/prerak.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/raja.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/sacheev.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/sainik.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/sar_senapati.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/roles/vidushak.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/base.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/fs.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/perception.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/retrieval.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/tools/shell.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/__init__.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/hardware.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/logging.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/scanner.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/text.py +0 -0
- {parishad-0.1.0 → parishad-0.1.1}/src/parishad/utils/tracing.py +0 -0
|
@@ -5,6 +5,12 @@ All notable changes to the **Parishad** project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.1.1] - 2026-01-26
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **Windows Dependencies**: Added `textual` and `psutil` to package requirements.
|
|
12
|
+
- **Model Downloads**: Fixed 404 errors by properly handling `-GGUF` suffixes in repository names.
|
|
13
|
+
|
|
8
14
|
## [0.1.0] - Initial Release
|
|
9
15
|
|
|
10
16
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: parishad
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: A cost-aware, local-first council of heterogeneous LLMs for reliable reasoning, coding, and factual correctness
|
|
5
5
|
Project-URL: Homepage, https://github.com/parishad-council/parishad
|
|
6
6
|
Project-URL: Documentation, https://github.com/parishad-council/parishad#readme
|
|
@@ -25,10 +25,12 @@ Requires-Dist: httpx>=0.25.0
|
|
|
25
25
|
Requires-Dist: jsonschema>=4.0.0
|
|
26
26
|
Requires-Dist: numpy<2.0
|
|
27
27
|
Requires-Dist: openai>=1.0.0
|
|
28
|
+
Requires-Dist: psutil>=5.9.0
|
|
28
29
|
Requires-Dist: pydantic-settings>=2.0.0
|
|
29
30
|
Requires-Dist: pydantic>=2.0.0
|
|
30
31
|
Requires-Dist: pyyaml>=6.0
|
|
31
32
|
Requires-Dist: rich>=13.0.0
|
|
33
|
+
Requires-Dist: textual>=0.70.0
|
|
32
34
|
Requires-Dist: tiktoken>=0.5.0
|
|
33
35
|
Provides-Extra: all
|
|
34
36
|
Requires-Dist: accelerate>=0.25.0; extra == 'all'
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "parishad"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.1"
|
|
8
8
|
description = "A cost-aware, local-first council of heterogeneous LLMs for reliable reasoning, coding, and factual correctness"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -43,6 +43,8 @@ dependencies = [
|
|
|
43
43
|
"openai>=1.0.0",
|
|
44
44
|
"tiktoken>=0.5.0",
|
|
45
45
|
"numpy<2.0",
|
|
46
|
+
"textual>=0.70.0",
|
|
47
|
+
"psutil>=5.9.0",
|
|
46
48
|
]
|
|
47
49
|
|
|
48
50
|
[project.optional-dependencies]
|
|
@@ -5,7 +5,7 @@ Parishad orchestrates multiple local language models into a structured "council"
|
|
|
5
5
|
that achieves higher reliability than a single model under strict compute budgets.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
|
-
__version__ = "0.1.
|
|
8
|
+
__version__ = "0.1.1"
|
|
9
9
|
|
|
10
10
|
from .orchestrator.engine import Parishad, ParishadEngine, PipelineConfig
|
|
11
11
|
from .models.runner import ModelRunner, ModelConfig
|
|
@@ -553,6 +553,11 @@ class HuggingFaceDownloader:
|
|
|
553
553
|
# Fallback: Guess the filename based on repo name
|
|
554
554
|
# Most GGUF repos (like bartowski) follow: {ModelName}-{Quant}.gguf
|
|
555
555
|
repo_name = repo_id.split("/")[-1]
|
|
556
|
+
|
|
557
|
+
# Strip '-GGUF' suffix if present (common in repo names but not filenames)
|
|
558
|
+
if repo_name.lower().endswith("-gguf"):
|
|
559
|
+
repo_name = repo_name[:-5]
|
|
560
|
+
|
|
556
561
|
quant_suffix = quantization if quantization else "Q4_K_M"
|
|
557
562
|
|
|
558
563
|
# Construct standard guess
|
|
@@ -21,7 +21,7 @@ class RoleSpec:
|
|
|
21
21
|
name: str
|
|
22
22
|
class_name: str
|
|
23
23
|
slot: str
|
|
24
|
-
version: str = "0.1.
|
|
24
|
+
version: str = "0.1.1"
|
|
25
25
|
budget_tokens: int = 1000
|
|
26
26
|
dependencies: list[str] = field(default_factory=list)
|
|
27
27
|
max_tokens: Optional[int] = None
|
|
@@ -110,7 +110,7 @@ def load_pipeline_config(name: str, config_dir: Optional[Path] = None) -> list[R
|
|
|
110
110
|
name=role_name.lower(), # Always store as lowercase for consistent lookups
|
|
111
111
|
class_name=role_config.get("class", role_name.capitalize()),
|
|
112
112
|
slot=role_config.get("slot", "mid"),
|
|
113
|
-
version=role_config.get("version", "0.1.
|
|
113
|
+
version=role_config.get("version", "0.1.1"),
|
|
114
114
|
budget_tokens=role_config.get("budget_tokens", 1000),
|
|
115
115
|
dependencies=role_config.get("dependencies", []),
|
|
116
116
|
max_tokens=role_config.get("max_tokens"),
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|