Spaces:
Build error
Build error
File size: 4,239 Bytes
9c7d451 f8ef20f 9c7d451 eac2890 69d6091 14ecab6 946ba4f 9c7d451 14ecab6 eac2890 946ba4f eac2890 9c7d451 946ba4f 9c7d451 45633b6 b560e7a 905c229 9c7d451 eac2890 9c7d451 eac2890 f8ef20f eac2890 9c7d451 eac2890 69d6091 eac2890 905c229 eac2890 9c7d451 14ecab6 45633b6 b560e7a 9c7d451 45633b6 b560e7a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | """Transform modules for Headroom SDK."""
from .anchor_selector import (
AnchorSelector,
AnchorStrategy,
AnchorWeights,
DataPattern,
calculate_information_score,
compute_item_hash,
)
from .base import Transform
from .cache_aligner import CacheAligner
from .content_detector import ContentType, DetectionResult, detect_content_type
from .diff_compressor import DiffCompressionResult, DiffCompressor, DiffCompressorConfig
from .intelligent_context import ContextStrategy, IntelligentContextManager
from .log_compressor import LogCompressionResult, LogCompressor, LogCompressorConfig
from .pipeline import TransformPipeline
from .rolling_window import RollingWindow
from .scoring import EmbeddingProvider, MessageScore, MessageScorer
from .search_compressor import (
SearchCompressionResult,
SearchCompressor,
SearchCompressorConfig,
)
from .smart_crusher import SmartCrusher, SmartCrusherConfig
from .text_compressor import TextCompressionResult, TextCompressor, TextCompressorConfig
from .tool_crusher import ToolCrusher
# ML-based compression (optional dependency)
try:
from .llmlingua_compressor import ( # noqa: F401
LLMLinguaCompressor,
LLMLinguaConfig,
LLMLinguaResult,
compress_with_llmlingua,
is_llmlingua_model_loaded,
unload_llmlingua_model,
)
_LLMLINGUA_AVAILABLE = True
except ImportError:
_LLMLINGUA_AVAILABLE = False
# HTML content extraction (optional dependency - requires trafilatura)
try:
from .html_extractor import ( # noqa: F401
HTMLExtractionResult,
HTMLExtractor,
HTMLExtractorConfig,
is_html_content,
)
_HTML_EXTRACTOR_AVAILABLE = True
except ImportError:
_HTML_EXTRACTOR_AVAILABLE = False
# AST-based code compression (optional dependency)
from .code_compressor import (
CodeAwareCompressor,
CodeCompressionResult,
CodeCompressorConfig,
CodeLanguage,
DocstringMode,
detect_language,
is_tree_sitter_available,
)
# Content routing (always available, lazy-loads compressors)
from .content_router import (
CompressionStrategy,
ContentRouter,
ContentRouterConfig,
RouterCompressionResult,
)
__all__ = [
# Base
"Transform",
"TransformPipeline",
# Anchor selection
"AnchorSelector",
"AnchorStrategy",
"AnchorWeights",
"DataPattern",
"calculate_information_score",
"compute_item_hash",
# JSON compression
"ToolCrusher",
"SmartCrusher",
"SmartCrusherConfig",
# Text compression (coding tasks)
"ContentType",
"DetectionResult",
"detect_content_type",
"SearchCompressor",
"SearchCompressorConfig",
"SearchCompressionResult",
"LogCompressor",
"LogCompressorConfig",
"LogCompressionResult",
"DiffCompressor",
"DiffCompressorConfig",
"DiffCompressionResult",
"TextCompressor",
"TextCompressorConfig",
"TextCompressionResult",
# Code-aware compression (AST-based)
"CodeAwareCompressor",
"CodeCompressorConfig",
"CodeCompressionResult",
"CodeLanguage",
"DocstringMode",
"detect_language",
"is_tree_sitter_available",
# Content routing
"ContentRouter",
"ContentRouterConfig",
"RouterCompressionResult",
"CompressionStrategy",
# Other transforms
"CacheAligner",
"RollingWindow",
# Intelligent context management
"IntelligentContextManager",
"ContextStrategy",
"MessageScorer",
"MessageScore",
"EmbeddingProvider",
# ML-based compression (optional)
"_LLMLINGUA_AVAILABLE",
# HTML extraction (optional)
"_HTML_EXTRACTOR_AVAILABLE",
]
# Conditionally add LLMLingua exports
if _LLMLINGUA_AVAILABLE:
__all__.extend(
[
"LLMLinguaCompressor",
"LLMLinguaConfig",
"LLMLinguaResult",
"compress_with_llmlingua",
"is_llmlingua_model_loaded",
"unload_llmlingua_model",
]
)
# Conditionally add HTML extractor exports
if _HTML_EXTRACTOR_AVAILABLE:
__all__.extend(
[
"HTMLExtractor",
"HTMLExtractorConfig",
"HTMLExtractionResult",
"is_html_content",
]
)
|