cat-stack 1.0.5__tar.gz → 1.0.7__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 (42) hide show
  1. {cat_stack-1.0.5 → cat_stack-1.0.7}/PKG-INFO +1 -1
  2. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/__about__.py +1 -1
  3. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/prompt_tune.py +2 -1
  4. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/summarize.py +15 -0
  5. {cat_stack-1.0.5 → cat_stack-1.0.7}/.gitignore +0 -0
  6. {cat_stack-1.0.5 → cat_stack-1.0.7}/LICENSE +0 -0
  7. {cat_stack-1.0.5 → cat_stack-1.0.7}/README.md +0 -0
  8. {cat_stack-1.0.5 → cat_stack-1.0.7}/pyproject.toml +0 -0
  9. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/__init__.py +0 -0
  10. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_batch.py +0 -0
  11. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_category_analysis.py +0 -0
  12. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_chunked.py +0 -0
  13. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_embeddings.py +0 -0
  14. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_formatter.py +0 -0
  15. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_pilot_test.py +0 -0
  16. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_providers.py +0 -0
  17. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_review_ui.py +0 -0
  18. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_tiebreaker.py +0 -0
  19. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_utils.py +0 -0
  20. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/_web_fetch.py +0 -0
  21. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/CoVe.py +0 -0
  22. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/__init__.py +0 -0
  23. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/all_calls.py +0 -0
  24. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/image_CoVe.py +0 -0
  25. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/image_stepback.py +0 -0
  26. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/pdf_CoVe.py +0 -0
  27. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/pdf_stepback.py +0 -0
  28. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/stepback.py +0 -0
  29. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/calls/top_n.py +0 -0
  30. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/classify.py +0 -0
  31. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/explore.py +0 -0
  32. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/extract.py +0 -0
  33. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/image_functions.py +0 -0
  34. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/images/circle.png +0 -0
  35. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/images/cube.png +0 -0
  36. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/images/diamond.png +0 -0
  37. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/images/overlapping_pentagons.png +0 -0
  38. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/images/rectangles.png +0 -0
  39. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/model_reference_list.py +0 -0
  40. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/pdf_functions.py +0 -0
  41. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/text_functions.py +0 -0
  42. {cat_stack-1.0.5 → cat_stack-1.0.7}/src/cat_stack/text_functions_ensemble.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cat-stack
3
- Version: 1.0.5
3
+ Version: 1.0.7
4
4
  Summary: Domain-agnostic text, image, PDF, and DOCX classification engine powered by LLMs
5
5
  Project-URL: Documentation, https://github.com/chrissoria/cat-stack#readme
6
6
  Project-URL: Issues, https://github.com/chrissoria/cat-stack/issues
@@ -1,7 +1,7 @@
1
1
  # SPDX-FileCopyrightText: 2025-present Christopher Soria <chrissoria@berkeley.edu>
2
2
  #
3
3
  # SPDX-License-Identifier: GPL-3.0-or-later
4
- __version__ = "1.0.5"
4
+ __version__ = "1.0.7"
5
5
  __author__ = "Chris Soria"
6
6
  __email__ = "chrissoria@berkeley.edu"
7
7
  __title__ = "cat-stack"
@@ -76,6 +76,7 @@ def prompt_tune(
76
76
  ui: str = "browser",
77
77
  optimize: str = "balanced",
78
78
  add_other: Union[str, bool] = "prompt",
79
+ thinking_budget: int = 0,
79
80
  ):
80
81
  """
81
82
  Automatically optimize the classification prompt using user feedback.
@@ -222,7 +223,7 @@ def prompt_tune(
222
223
  chain_of_verification=False,
223
224
  step_back_prompt=False,
224
225
  context_prompt=False,
225
- thinking_budget=0,
226
+ thinking_budget=thinking_budget,
226
227
  use_json_schema=use_json_schema,
227
228
  fail_strategy="partial",
228
229
  max_retries=max_retries,
@@ -91,6 +91,8 @@ def summarize(
91
91
  Background, Key Provisions, Stakeholders/Impact, Implementation)
92
92
  - "detailed-report": Exhaustive report enumerating every provision,
93
93
  with an additional Details section for exceptions and cross-references
94
+ - "alt-text": Factual visual description for blind/visually impaired
95
+ users — no interpretation, only what is literally shown
94
96
  max_length (int): Maximum summary length in words
95
97
  focus (str): What to focus on (e.g., "main arguments", "emotional content")
96
98
  user_model (str): Model to use (default "gpt-4o")
@@ -273,6 +275,19 @@ def summarize(
273
275
  ),
274
276
  "max_length": 3000,
275
277
  },
278
+ "alt-text": {
279
+ "instructions": (
280
+ "Describe this content as alt-text for a blind or visually impaired person. "
281
+ "Report only the factual visual content — what is literally shown. "
282
+ "Include all text, labels, numbers, colors, layout, and visual elements "
283
+ "exactly as they appear. Do NOT interpret, editorialize, or add commentary "
284
+ "about the meaning, intent, or accuracy of the content. Do NOT use phrases "
285
+ "like 'the image claims' or 'this suggests'. Simply describe what a sighted "
286
+ "person would see, in enough detail that someone who cannot see the image "
287
+ "can fully understand its contents."
288
+ ),
289
+ "max_length": None,
290
+ },
276
291
  # Keep "report" as alias for backward compat
277
292
  "report": {
278
293
  "instructions": (
File without changes
File without changes
File without changes
File without changes