pageindex 0.2.10.dev4__tar.gz → 0.2.10.dev6__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 (104) hide show
  1. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/PKG-INFO +3 -3
  2. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/README.md +1 -1
  3. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/__init__.py +3 -17
  4. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/agent_tools.py +218 -162
  5. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/client.py +194 -70
  6. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/cloud_api.py +6 -4
  7. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/config.yaml +2 -2
  8. pageindex-0.2.10.dev6/pageindex/errors.py +7 -0
  9. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/api.py +20 -6
  10. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/embedded_toc.py +9 -3
  11. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/char_extract.py +11 -0
  12. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/geometry.py +3 -1
  13. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/pipeline.py +1 -1
  14. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/unicode_apply.py +6 -10
  15. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_parallel.py +31 -1
  16. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/integrations/claude_agent_sdk.py +7 -9
  17. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/integrations/openai_agents.py +2 -0
  18. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/local_api.py +45 -37
  19. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/local_chat.py +263 -122
  20. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/local_store.py +19 -0
  21. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/mcp_bridge.py +25 -8
  22. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/page_index_classic.py +0 -1
  23. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/tree_optimize.py +6 -4
  24. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/utils.py +120 -63
  25. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pyproject.toml +2 -2
  26. pageindex-0.2.10.dev4/pageindex/errors.py +0 -2
  27. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/LICENSE +0 -0
  28. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/_version.py +0 -0
  29. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/README.md +0 -0
  30. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/__init__.py +0 -0
  31. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/blocks/__init__.py +0 -0
  32. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/blocks/build.py +0 -0
  33. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/blocks/join_rules.py +0 -0
  34. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/classification/__init__.py +0 -0
  35. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/classification/body_text.py +0 -0
  36. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/classification/header_footer.py +0 -0
  37. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/classification/keyword_tables.py +0 -0
  38. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/classification/toc_boilerplate.py +0 -0
  39. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/clustering/__init__.py +0 -0
  40. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/clustering/build.py +0 -0
  41. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/clustering/merge_rules.py +0 -0
  42. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/columns/__init__.py +0 -0
  43. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/columns/gutters.py +0 -0
  44. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/columns/splitting.py +0 -0
  45. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/data/boilerplate_phrases.json +0 -0
  46. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/data/dictionaries.json +0 -0
  47. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/data/glyph_name_table.json +0 -0
  48. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/data/normalized_unicodes.json +0 -0
  49. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/data/script_bucket_table.json +0 -0
  50. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/__init__.py +0 -0
  51. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/candidates.py +0 -0
  52. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/detectors.py +0 -0
  53. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/keyword_tables.py +0 -0
  54. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/neighbors.py +0 -0
  55. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/page_scan.py +0 -0
  56. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/style_detectors.py +0 -0
  57. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/heading_detection/text_checks.py +0 -0
  58. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/labels/__init__.py +0 -0
  59. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/labels/caption_regions.py +0 -0
  60. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/labels/caption_text.py +0 -0
  61. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/main.py +0 -0
  62. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/__init__.py +0 -0
  63. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/block.py +0 -0
  64. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/char_stats.py +0 -0
  65. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/numbering.py +0 -0
  66. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/rects.py +0 -0
  67. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/model/span_line.py +0 -0
  68. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline/__init__.py +0 -0
  69. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline/filtering.py +0 -0
  70. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline/tree.py +0 -0
  71. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/__init__.py +0 -0
  72. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/assembly.py +0 -0
  73. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/candidates.py +0 -0
  74. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/cliques.py +0 -0
  75. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/selection.py +0 -0
  76. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/outline_assembly/style_context.py +0 -0
  77. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/__init__.py +0 -0
  78. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/cmap_parse.py +0 -0
  79. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/code_walk.py +0 -0
  80. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/content_stream.py +0 -0
  81. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/font_unicode.py +0 -0
  82. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/glyph_tables.py +0 -0
  83. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/merge.py +0 -0
  84. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/pdf_objects.py +0 -0
  85. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/remerge.py +0 -0
  86. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/parser_pdfium_charlevel/text_normalize.py +0 -0
  87. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/phases/__init__.py +0 -0
  88. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/phases/line_numbers.py +0 -0
  89. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/phases/page_view.py +0 -0
  90. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/stats/__init__.py +0 -0
  91. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/stats/aggregates.py +0 -0
  92. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/stats/scripts.py +0 -0
  93. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/title/__init__.py +0 -0
  94. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/title/detect.py +0 -0
  95. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/title/dicts.py +0 -0
  96. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/title/scoring.py +0 -0
  97. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/tokens/__init__.py +0 -0
  98. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/tokens/hashing.py +0 -0
  99. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/tokens/token_types.py +0 -0
  100. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/tokens/tokenizer.py +0 -0
  101. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/flash/tokens/tries.py +0 -0
  102. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/integrations/__init__.py +0 -0
  103. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/integrations/anthropic_sdk.py +0 -0
  104. {pageindex-0.2.10.dev4 → pageindex-0.2.10.dev6}/pageindex/page_index_md.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pageindex
3
- Version: 0.2.10.dev4
3
+ Version: 0.2.10.dev6
4
4
  Summary: Python SDK for PageIndex — reasoning-based, vectorless document retrieval, cloud and local
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -27,7 +27,7 @@ Requires-Dist: claude-agent-sdk (>=0.1.53) ; extra == "claude"
27
27
  Requires-Dist: litellm (>=1.97.0)
28
28
  Requires-Dist: openai (>=1.70.0)
29
29
  Requires-Dist: openai-agents (>=0.18.1)
30
- Requires-Dist: pypdfium2 (>=4.30.0)
30
+ Requires-Dist: pypdfium2 (>=5)
31
31
  Requires-Dist: python-dotenv (>=1.0.0)
32
32
  Requires-Dist: pyyaml (>=6.0)
33
33
  Requires-Dist: regex (>=2024.0.0)
@@ -214,7 +214,7 @@ python3 run_pageindex.py --pdf_path /path/to/your/document.pdf
214
214
  <details>
215
215
  <summary>Optional parameters</summary>
216
216
  <br>
217
- You can customize the processing with additional optional arguments (the structure-tuning flags below require <code>--mode standard</code>):
217
+ You can customize the processing with additional optional arguments (the structure-tuning flags from <code>--toc-check-pages</code> down require <code>--mode standard</code>):
218
218
 
219
219
  ```
220
220
  --mode Processing mode: flash (default) or standard
@@ -173,7 +173,7 @@ python3 run_pageindex.py --pdf_path /path/to/your/document.pdf
173
173
  <details>
174
174
  <summary>Optional parameters</summary>
175
175
  <br>
176
- You can customize the processing with additional optional arguments (the structure-tuning flags below require <code>--mode standard</code>):
176
+ You can customize the processing with additional optional arguments (the structure-tuning flags from <code>--toc-check-pages</code> down require <code>--mode standard</code>):
177
177
 
178
178
  ```
179
179
  --mode Processing mode: flash (default) or standard
@@ -1,11 +1,6 @@
1
1
  """PageIndex SDK."""
2
- import os as _os
3
2
  from typing import TYPE_CHECKING as _TYPE_CHECKING
4
3
 
5
- # LiteLLM's import otherwise fetches its model map over the network — seconds
6
- # of blocking (or a hang offline). setdefault, so an explicit user choice wins.
7
- _os.environ.setdefault("LITELLM_LOCAL_MODEL_COST_MAP", "True")
8
-
9
4
  from .client import PageIndexClient, PageIndexCloudClient, PageIndexLocalClient
10
5
  from .errors import PageIndexAPIError
11
6
 
@@ -23,8 +18,6 @@ __all__ = [
23
18
  ]
24
19
 
25
20
  _LAZY = {
26
- "page_index": ".page_index_classic",
27
- "page_index_main": ".page_index_classic",
28
21
  "page_index_flash": ".flash",
29
22
  "optimize_tree": ".tree_optimize",
30
23
  "md_to_tree": ".page_index_md",
@@ -34,25 +27,18 @@ _SUBMODULES = {"agent_tools", "client", "cloud_api", "errors", "flash",
34
27
  "mcp_bridge", "page_index_classic", "page_index_md",
35
28
  "tree_optimize", "utils"}
36
29
 
30
+
37
31
  def __getattr__(name):
38
32
  if name.startswith("_"):
39
- # Dunder probes (copy, pickle, inspect) are the frequent unknown
40
- # names — they must not trigger the classic import below.
41
33
  raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
42
34
  import importlib
43
35
  if name in _SUBMODULES:
44
36
  return importlib.import_module(f".{name}", __name__)
45
- # Pre-0.2.10 compat: unknown names fall through to the classic module,
46
- # whose public surface (ConfigLoader, count_tokens, ...) resolved as
47
- # package attributes. A non-underscore typo pays one classic import
48
- # before its AttributeError — not worth an allowlist.
49
- module = importlib.import_module(_LAZY.get(name, ".page_index_classic"),
50
- __name__)
37
+ module = importlib.import_module(_LAZY.get(name, ".page_index_classic"), __name__)
51
38
  try:
52
39
  value = getattr(module, name)
53
40
  except AttributeError:
54
- raise AttributeError(
55
- f"module {__name__!r} has no attribute {name!r}") from None
41
+ raise AttributeError(f"module {__name__!r} has no attribute {name!r}") from None
56
42
  globals()[name] = value
57
43
  return value
58
44