parishad 0.1.2__tar.gz → 0.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.
Files changed (75) hide show
  1. {parishad-0.1.2 → parishad-0.1.3}/.github/workflows/publish.yml +15 -5
  2. {parishad-0.1.2 → parishad-0.1.3}/CHANGELOG.md +6 -0
  3. {parishad-0.1.2 → parishad-0.1.3}/PKG-INFO +2 -3
  4. {parishad-0.1.2 → parishad-0.1.3}/pyproject.toml +2 -2
  5. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/__init__.py +1 -1
  6. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/config/pipeline.core.yaml +1 -1
  7. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/config/pipeline.extended.yaml +1 -1
  8. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/config/pipeline.fast.yaml +1 -1
  9. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/data/models.json +1 -1
  10. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/orchestrator/config_loader.py +1 -1
  11. {parishad-0.1.2 → parishad-0.1.3}/.gitignore +0 -0
  12. {parishad-0.1.2 → parishad-0.1.3}/CODE_OF_CONDUCT.md +0 -0
  13. {parishad-0.1.2 → parishad-0.1.3}/CONTRIBUTING.md +0 -0
  14. {parishad-0.1.2 → parishad-0.1.3}/LICENSE +0 -0
  15. {parishad-0.1.2 → parishad-0.1.3}/README.md +0 -0
  16. {parishad-0.1.2 → parishad-0.1.3}/SECURITY.md +0 -0
  17. {parishad-0.1.2 → parishad-0.1.3}/docs/assets/logo.jpeg +0 -0
  18. {parishad-0.1.2 → parishad-0.1.3}/docs/assets/logo.svg +0 -0
  19. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/__main__.py +0 -0
  20. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/checker/__init__.py +0 -0
  21. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/checker/deterministic.py +0 -0
  22. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/checker/ensemble.py +0 -0
  23. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/checker/retrieval.py +0 -0
  24. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/cli/__init__.py +0 -0
  25. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/cli/code.py +0 -0
  26. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/cli/main.py +0 -0
  27. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/cli/prarambh.py +0 -0
  28. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/cli/sthapana.py +0 -0
  29. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/config/modes.py +0 -0
  30. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/config/user_config.py +0 -0
  31. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/data/catalog.py +0 -0
  32. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/memory/__init__.py +0 -0
  33. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/__init__.py +0 -0
  34. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/__init__.py +0 -0
  35. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/base.py +0 -0
  36. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/huggingface.py +0 -0
  37. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/llama_cpp.py +0 -0
  38. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/mlx_lm.py +0 -0
  39. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/ollama.py +0 -0
  40. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/openai_api.py +0 -0
  41. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/backends/transformers_hf.py +0 -0
  42. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/costs.py +0 -0
  43. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/downloader.py +0 -0
  44. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/optimizations.py +0 -0
  45. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/profiles.py +0 -0
  46. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/reliability.py +0 -0
  47. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/runner.py +0 -0
  48. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/models/tokenization.py +0 -0
  49. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/orchestrator/__init__.py +0 -0
  50. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/orchestrator/engine.py +0 -0
  51. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/orchestrator/exceptions.py +0 -0
  52. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/__init__.py +0 -0
  53. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/base.py +0 -0
  54. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/dandadhyaksha.py +0 -0
  55. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/darbari.py +0 -0
  56. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/majumdar.py +0 -0
  57. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/pantapradhan.py +0 -0
  58. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/prerak.py +0 -0
  59. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/raja.py +0 -0
  60. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/sacheev.py +0 -0
  61. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/sainik.py +0 -0
  62. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/sar_senapati.py +0 -0
  63. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/roles/vidushak.py +0 -0
  64. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/__init__.py +0 -0
  65. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/base.py +0 -0
  66. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/fs.py +0 -0
  67. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/perception.py +0 -0
  68. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/retrieval.py +0 -0
  69. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/tools/shell.py +0 -0
  70. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/__init__.py +0 -0
  71. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/hardware.py +0 -0
  72. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/logging.py +0 -0
  73. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/scanner.py +0 -0
  74. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/text.py +0 -0
  75. {parishad-0.1.2 → parishad-0.1.3}/src/parishad/utils/tracing.py +0 -0
@@ -35,19 +35,27 @@ jobs:
35
35
  # Extract version from pyproject.toml
36
36
  VERSION=$(python -c "import toml; print(toml.load('pyproject.toml')['project']['version'])")
37
37
  echo "Detected version: $VERSION"
38
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
38
39
 
39
40
  # Check if tag exists
40
41
  if git rev-parse "v$VERSION" >/dev/null 2>&1; then
41
- echo "Tag v$VERSION already exists. Skipping release."
42
- echo "new_release=false" >> $GITHUB_OUTPUT
42
+ echo "Tag v$VERSION already exists."
43
+ if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
44
+ echo "Manual trigger detected. Retrying release for existing version."
45
+ echo "new_release=true" >> $GITHUB_OUTPUT
46
+ echo "skip_tag=true" >> $GITHUB_OUTPUT
47
+ else
48
+ echo "Skipping release to prevent duplicates."
49
+ echo "new_release=false" >> $GITHUB_OUTPUT
50
+ fi
43
51
  else
44
52
  echo "New version detected!"
45
53
  echo "new_release=true" >> $GITHUB_OUTPUT
46
- echo "version=$VERSION" >> $GITHUB_OUTPUT
54
+ echo "skip_tag=false" >> $GITHUB_OUTPUT
47
55
  fi
48
56
 
49
57
  - name: Create Tag
50
- if: steps.check_version.outputs.new_release == 'true'
58
+ if: steps.check_version.outputs.new_release == 'true' && steps.check_version.outputs.skip_tag != 'true'
51
59
  env:
52
60
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53
61
  run: |
@@ -59,7 +67,9 @@ jobs:
59
67
 
60
68
  - name: Build package
61
69
  if: steps.check_version.outputs.new_release == 'true'
62
- run: python -m build
70
+ run: |
71
+ rm -rf dist/ build/ *.egg-info
72
+ python -m build
63
73
 
64
74
  - name: Publish to PyPI
65
75
  if: steps.check_version.outputs.new_release == 'true'
@@ -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.3] - 2026-01-26
9
+
10
+ ### Fixed
11
+ - **Missing Core Backend**: Promoted `llama-cpp-python` to core dependencies (`backend-not-available` fix).
12
+ - **Default Profile**: Updated pipeline default version to `0.1.3`.
13
+
8
14
  ## [0.1.2] - 2026-01-26
9
15
 
10
16
  ### Fixed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: parishad
3
- Version: 0.1.2
3
+ Version: 0.1.3
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
@@ -23,6 +23,7 @@ Requires-Python: >=3.10
23
23
  Requires-Dist: click>=8.0.0
24
24
  Requires-Dist: httpx>=0.25.0
25
25
  Requires-Dist: jsonschema>=4.0.0
26
+ Requires-Dist: llama-cpp-python>=0.2.0
26
27
  Requires-Dist: numpy<2.0
27
28
  Requires-Dist: openai>=1.0.0
28
29
  Requires-Dist: psutil>=5.9.0
@@ -38,7 +39,6 @@ Requires-Dist: black>=23.0.0; extra == 'all'
38
39
  Requires-Dist: chromadb>=0.5.0; extra == 'all'
39
40
  Requires-Dist: datasets>=2.14.0; extra == 'all'
40
41
  Requires-Dist: faiss-cpu>=1.7.0; extra == 'all'
41
- Requires-Dist: llama-cpp-python>=0.2.0; extra == 'all'
42
42
  Requires-Dist: mypy>=1.0.0; extra == 'all'
43
43
  Requires-Dist: pandas>=2.0.0; extra == 'all'
44
44
  Requires-Dist: pre-commit>=3.0.0; extra == 'all'
@@ -71,7 +71,6 @@ Requires-Dist: grpcio-tools>=1.50.0; extra == 'distributed'
71
71
  Requires-Dist: grpcio>=1.50.0; extra == 'distributed'
72
72
  Provides-Extra: local
73
73
  Requires-Dist: accelerate>=0.25.0; extra == 'local'
74
- Requires-Dist: llama-cpp-python>=0.2.0; extra == 'local'
75
74
  Requires-Dist: torch>=2.0.0; extra == 'local'
76
75
  Requires-Dist: transformers>=4.35.0; extra == 'local'
77
76
  Provides-Extra: mlx
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "parishad"
7
- version = "0.1.2"
7
+ version = "0.1.3"
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"
@@ -45,11 +45,11 @@ dependencies = [
45
45
  "numpy<2.0",
46
46
  "textual>=0.70.0",
47
47
  "psutil>=5.9.0",
48
+ "llama-cpp-python>=0.2.0",
48
49
  ]
49
50
 
50
51
  [project.optional-dependencies]
51
52
  local = [
52
- "llama-cpp-python>=0.2.0",
53
53
  "transformers>=4.35.0",
54
54
  "torch>=2.0.0",
55
55
  "accelerate>=0.25.0",
@@ -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.2"
8
+ __version__ = "0.1.3"
9
9
 
10
10
  from .orchestrator.engine import Parishad, ParishadEngine, PipelineConfig
11
11
  from .models.runner import ModelRunner, ModelConfig
@@ -3,7 +3,7 @@
3
3
  # Uses 2 model slots: mid + big
4
4
 
5
5
  name: "parishad-core"
6
- version: "0.1.2"
6
+ version: "0.1.3"
7
7
  description: "Balanced 8-role pipeline: Madhya Sabha with extended council"
8
8
 
9
9
  # Role definitions
@@ -3,7 +3,7 @@
3
3
  # Uses 3 model slots: small + mid + big
4
4
 
5
5
  name: "parishad-extended"
6
- version: "0.1.2"
6
+ version: "0.1.3"
7
7
  description: "Maha Sabha: Full 10-role council including Lateral Thinker (Vidushak)"
8
8
 
9
9
  # Role definitions
@@ -3,7 +3,7 @@
3
3
  # Laghu Sabha matches standard structure but uses smaller/faster models
4
4
 
5
5
  name: "parishad-fast"
6
- version: "0.1.2"
6
+ version: "0.1.3"
7
7
  description: "Fast 5-role pipeline: Analyze -> Plan -> Execute -> Check -> Judge"
8
8
 
9
9
  # Role definitions
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.2",
2
+ "version": "0.1.3",
3
3
  "updated": "2024-12-30",
4
4
  "sources": {
5
5
  "ollama": {
@@ -21,7 +21,7 @@ class RoleSpec:
21
21
  name: str
22
22
  class_name: str
23
23
  slot: str
24
- version: str = "0.1.1"
24
+ version: str = "0.1.3"
25
25
  budget_tokens: int = 1000
26
26
  dependencies: list[str] = field(default_factory=list)
27
27
  max_tokens: Optional[int] = None
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes