abstractcore 2.6.3__py3-none-any.whl → 2.6.6__py3-none-any.whl
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.
- abstractcore/media/utils/image_scaler.py +6 -6
- abstractcore/providers/__init__.py +4 -0
- abstractcore/providers/openai_compatible_provider.py +829 -0
- abstractcore/providers/registry.py +37 -1
- abstractcore/providers/vllm_provider.py +823 -0
- abstractcore/server/app.py +22 -2
- abstractcore/utils/version.py +1 -1
- abstractcore/utils/vlm_token_calculator.py +7 -1
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/METADATA +50 -20
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/RECORD +14 -12
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/WHEEL +0 -0
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/entry_points.txt +0 -0
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/licenses/LICENSE +0 -0
- {abstractcore-2.6.3.dist-info → abstractcore-2.6.6.dist-info}/top_level.txt +0 -0
|
@@ -3,6 +3,8 @@ Image scaling utility for AbstractCore media handling.
|
|
|
3
3
|
|
|
4
4
|
Provides intelligent image scaling based on model-specific requirements
|
|
5
5
|
and capabilities for vision models.
|
|
6
|
+
|
|
7
|
+
Requires: PIL (Pillow) - install with `pip install Pillow`
|
|
6
8
|
"""
|
|
7
9
|
|
|
8
10
|
from typing import Tuple, Optional, Union, Dict, Any
|
|
@@ -11,9 +13,10 @@ from pathlib import Path
|
|
|
11
13
|
|
|
12
14
|
try:
|
|
13
15
|
from PIL import Image, ImageOps
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
except ImportError as e:
|
|
17
|
+
raise ImportError(
|
|
18
|
+
"PIL (Pillow) is required for image scaling. Install with: pip install Pillow"
|
|
19
|
+
) from e
|
|
17
20
|
|
|
18
21
|
from ..base import MediaProcessingError
|
|
19
22
|
from ...utils.structured_logging import get_logger
|
|
@@ -38,9 +41,6 @@ class ModelOptimizedScaler:
|
|
|
38
41
|
def __init__(self):
|
|
39
42
|
self.logger = get_logger(__name__)
|
|
40
43
|
|
|
41
|
-
if not PIL_AVAILABLE:
|
|
42
|
-
raise MediaProcessingError("PIL (Pillow) is required for image scaling")
|
|
43
|
-
|
|
44
44
|
def get_optimal_resolution(self, model_name: str, original_size: Tuple[int, int],
|
|
45
45
|
model_capabilities: Optional[Dict[str, Any]] = None) -> Tuple[int, int]:
|
|
46
46
|
"""
|
|
@@ -7,6 +7,8 @@ from .ollama_provider import OllamaProvider
|
|
|
7
7
|
from .lmstudio_provider import LMStudioProvider
|
|
8
8
|
from .huggingface_provider import HuggingFaceProvider
|
|
9
9
|
from .mlx_provider import MLXProvider
|
|
10
|
+
from .vllm_provider import VLLMProvider
|
|
11
|
+
from .openai_compatible_provider import OpenAICompatibleProvider
|
|
10
12
|
|
|
11
13
|
# Provider registry for centralized provider discovery and management
|
|
12
14
|
from .registry import (
|
|
@@ -41,6 +43,8 @@ __all__ = [
|
|
|
41
43
|
'LMStudioProvider',
|
|
42
44
|
'HuggingFaceProvider',
|
|
43
45
|
'MLXProvider',
|
|
46
|
+
'VLLMProvider',
|
|
47
|
+
'OpenAICompatibleProvider',
|
|
44
48
|
|
|
45
49
|
# Provider registry
|
|
46
50
|
'ProviderRegistry',
|