isagellm-core 0.1.0.3__cp311-none-any.whl → 0.2.1.0__cp311-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.
Files changed (30) hide show
  1. {isagellm_core-0.1.0.3.dist-info → isagellm_core-0.2.1.0.dist-info}/METADATA +43 -8
  2. isagellm_core-0.2.1.0.dist-info/RECORD +47 -0
  3. isagellm_core-0.2.1.0.dist-info/entry_points.txt +6 -0
  4. sagellm_core/__init__.py +71 -4
  5. sagellm_core/__init__.pyc +0 -0
  6. sagellm_core/__pycache__/__init__.cpython-311.pyc +0 -0
  7. sagellm_core/__pycache__/base_engine.cpython-311.pyc +0 -0
  8. sagellm_core/__pycache__/engine.cpython-311.pyc +0 -0
  9. sagellm_core/__pycache__/engine_factory.cpython-311.pyc +0 -0
  10. sagellm_core/base_engine.pyc +0 -0
  11. sagellm_core/engine.pyc +0 -0
  12. sagellm_core/engine_factory.pyc +0 -0
  13. sagellm_core/engines/__init__.py +42 -2
  14. sagellm_core/engines/__init__.pyc +0 -0
  15. sagellm_core/engines/__pycache__/__init__.cpython-311.pyc +0 -0
  16. sagellm_core/engines/__pycache__/cpu.cpython-311.pyc +0 -0
  17. sagellm_core/engines/__pycache__/embedding.cpython-311.pyc +0 -0
  18. sagellm_core/engines/__pycache__/hf_cuda.cpython-311.pyc +0 -0
  19. sagellm_core/engines/__pycache__/mock.cpython-311.pyc +0 -0
  20. sagellm_core/engines/__pycache__/pytorch.cpython-311.pyc +0 -0
  21. sagellm_core/engines/__pycache__/pytorch_engine.cpython-311.pyc +0 -0
  22. sagellm_core/engines/cpu.pyc +0 -0
  23. sagellm_core/engines/embedding.pyc +0 -0
  24. sagellm_core/engines/hf_cuda.pyc +0 -0
  25. sagellm_core/engines/mock.pyc +0 -0
  26. sagellm_core/engines/pytorch.pyc +0 -0
  27. sagellm_core/engines/pytorch_engine.pyc +0 -0
  28. isagellm_core-0.1.0.3.dist-info/RECORD +0 -32
  29. {isagellm_core-0.1.0.3.dist-info → isagellm_core-0.2.1.0.dist-info}/WHEEL +0 -0
  30. {isagellm_core-0.1.0.3.dist-info → isagellm_core-0.2.1.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: isagellm-core
3
- Version: 0.1.0.3
3
+ Version: 0.2.1.0
4
4
  Summary: sageLLM core runtime (config/observability/registries), plugin-ready
5
5
  Author: IntelliStream Team
6
6
  License: Proprietary - IntelliStream
@@ -14,7 +14,7 @@ Description-Content-Type: text/markdown
14
14
  Requires-Dist: pydantic>=2.0.0
15
15
  Requires-Dist: pyyaml>=6.0.0
16
16
  Requires-Dist: isagellm-protocol<0.2.0,>=0.1.0
17
- Requires-Dist: isagellm-backend<0.2.0,>=0.1.0
17
+ Requires-Dist: isagellm-backend<0.3.0,>=0.2.0.0
18
18
  Provides-Extra: dev
19
19
  Requires-Dist: pytest>=7.0.0; extra == "dev"
20
20
  Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
@@ -32,15 +32,50 @@ Requires-Dist: pre-commit>=3.0.0; extra == "dev"
32
32
  [![License](https://img.shields.io/github/license/intellistream/sagellm-core.svg)](https://github.com/intellistream/sagellm-core/blob/main/LICENSE)
33
33
  [![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)
34
34
 
35
- sageLLM Core - Engine runtime and configuration system for LLM inference.
35
+ sageLLM Core - 引擎协调层与运行时系统
36
+
37
+ ## 架构定位
38
+
39
+ ```
40
+ ┌─────────────────────────────────────────────────────────────┐
41
+ │ sagellm-core (引擎协调层) ← 本仓库 │
42
+ │ ┌─────────────────────────────────────────────────────┐ │
43
+ │ │ Engine Abstraction (BaseEngine, EngineFactory) │ │
44
+ │ │ • MockEngine, CPUEngine, HFCudaEngine │ │
45
+ │ │ • 自描述架构 (is_available, priority) │ │
46
+ │ │ • 引擎自动发现与注册 │ │
47
+ │ └─────────────────────────────────────────────────────┘ │
48
+ │ ┌─────────────────────────────────────────────────────┐ │
49
+ │ │ Configuration System (config.py) │ │
50
+ │ │ • YAML/JSON 配置解析 │ │
51
+ │ │ • Pydantic v2 类型验证 │ │
52
+ │ └─────────────────────────────────────────────────────┘ │
53
+ │ ┌─────────────────────────────────────────────────────┐ │
54
+ │ │ Demo Runner (runner.py) │ │
55
+ │ │ • 协调 backend + engine + workload │ │
56
+ │ │ • Year 1 Demo Contract 验证 │ │
57
+ │ └─────────────────────────────────────────────────────┘ │
58
+ ├─────────────────────────────────────────────────────────────┤
59
+ │ sagellm-backend (硬件抽象层) │
60
+ │ • BackendProvider (CUDA/Ascend/Mock) │
61
+ │ • Stream/Event/KVBlock 管理 │
62
+ └─────────────────────────────────────────────────────────────┘
63
+ ```
64
+
65
+ **职责分离**:
66
+ - ❌ **Backend 不再包含**:BaseEngine, EngineFactory(已移至 core)
67
+ - ✅ **Core 负责**:引擎接口、工厂、运行时、配置、协调
68
+ - ✅ **Backend 负责**:硬件抽象、设备管理、内存原语
36
69
 
37
70
  ## Features
38
71
 
39
- - 🔧 Flexible configuration system (YAML/JSON)
40
- - 🔌 Plugin-based backend and engine discovery
41
- - 🎯 Mock mode for development and testing
42
- - 📊 Built-in demo runner for benchmarking
43
- - Type-safe with Pydantic v2
72
+ - 🔧 引擎抽象层与自描述架构
73
+ - 🏭 EngineFactory - 支持自动发现与优先级选择
74
+ - 🎯 内置引擎实现(Mock/CPU/CUDA/Embedding)
75
+ - 🔌 插件系统 - 扩展引擎与后端
76
+ - 📊 Demo Runner - Year 1 验证框架
77
+ - ⚙️ 配置系统 - YAML/JSON + Pydantic v2
78
+ - ✅ Mock-First - 无 GPU 测试支持
44
79
 
45
80
  ## 安装
46
81
 
@@ -0,0 +1,47 @@
1
+ sagellm_core/__init__.py,sha256=idV5mkOvtUDrEs57ka2HrKe9CZBJ7mw-3C9nyy3w4og,3029
2
+ sagellm_core/__init__.pyc,sha256=px30KQ5LM_H_h5HmAdN0wxv-hGAh6KQIEG8SZU17VL4,2972
3
+ sagellm_core/__main__.pyc,sha256=4wEXHFB0JVZaI6wLACU59_b-LfEbujTQZyzONaalAYA,384
4
+ sagellm_core/base_engine.pyc,sha256=XANZ2YIQGyhI6GqBvoZdmYkMblO3N2eMWHhU4waJZIg,9823
5
+ sagellm_core/config.pyc,sha256=8gGOOBcHRSSv883bDIJNXzB069ntBc0yYEf-PFAeWdU,9617
6
+ sagellm_core/demo.pyc,sha256=MAeTgokTW8kW906wjvTLN1yNLfOOl3_hokpVzJ-Lt4I,6377
7
+ sagellm_core/engine.pyc,sha256=-qUIh257hxKfcrT_usrrD1Bs9YYjeUNTGyXnB1Cxec8,747
8
+ sagellm_core/engine_factory.pyc,sha256=QeKOE607E_xf2cOKbPKZ4NLwXY8sXNsi66nm890R9qg,16172
9
+ sagellm_core/factory.pyc,sha256=PF-xQQn-fYn25GO5muzf9rCdHKQ3NhQYiCKOnkHBjxY,2692
10
+ sagellm_core/health.pyc,sha256=oEWyaaTix4YXhyu8JSYOQAy9KBySxbIcHt2hNpchi-w,684
11
+ sagellm_core/mock_engine.pyc,sha256=iadJef1bNdQXdXJLFo_FE9aVglecothXLhxMoMtzEv0,532
12
+ sagellm_core/plugins.pyc,sha256=rhdewQ_zJxnmRFBjUozBlhQtIwFg0C1rFD8zMT7ZeKI,2618
13
+ sagellm_core/py.typed,sha256=ixa8YukDZ3kLo0WsFJRGohLMyHzbMur1ALmmASML2cs,64
14
+ sagellm_core/runner.pyc,sha256=kUPITl68dX1rOY5Fg5o6KRBMjMhMAQFNizEuRF44PgM,14248
15
+ sagellm_core/workload.pyc,sha256=LDuZAdimFAd3pHn8E9WG7LjwU_1IKABZ-gaMCMjOTus,4118
16
+ sagellm_core/__pycache__/__init__.cpython-311.pyc,sha256=Gy4DiPzL45yOxumS2iBaChKzWN5Vt7CYvfFme0Im3nU,3002
17
+ sagellm_core/__pycache__/base_engine.cpython-311.pyc,sha256=L5Al-v9E7_wvO_wCzwy-uogVGhcREnrEhWOPY8CMEdQ,9853
18
+ sagellm_core/__pycache__/config.cpython-311.pyc,sha256=4c_gjzVmxIRApzmUq8LCboOG3wPqmmwWVFxZS3JOHOg,9647
19
+ sagellm_core/__pycache__/demo.cpython-311.pyc,sha256=yOMGCRRQigl8sclMTcg-iHThQoxrRTPWSUdgDYJ3hgU,6407
20
+ sagellm_core/__pycache__/engine.cpython-311.pyc,sha256=a9K-RsPxh1XlyXRvSUEwUgyMXZcjFURlnbUU439vqj8,777
21
+ sagellm_core/__pycache__/engine_factory.cpython-311.pyc,sha256=ajVs8bvnRjQz0nDctWkDgKoWgQIVPPkRSouUDlUgEbQ,16202
22
+ sagellm_core/__pycache__/factory.cpython-311.pyc,sha256=Dl6w_PHlzEVr62cT6D11_gm9F-MAcqouBNNHZEHCjqw,2722
23
+ sagellm_core/__pycache__/health.cpython-311.pyc,sha256=t8l6F_O808YWsFBDQfdJU6_Ps8H-nnE6k0fdLxYwLJk,714
24
+ sagellm_core/__pycache__/mock_engine.cpython-311.pyc,sha256=KcHBGI1dVIEKm7rhZOkPWQ27rzNVEhmXDYsiQ_5Lfe8,562
25
+ sagellm_core/__pycache__/plugins.cpython-311.pyc,sha256=K6-SC0yOVvT-qVh7Fp2GC-O0GloaWY00W9_8y_jrBnk,2648
26
+ sagellm_core/__pycache__/runner.cpython-311.pyc,sha256=aZCGktjzcGBqNB7tJahEHfUgbTOYPCn-TyKp6yzpD6s,14278
27
+ sagellm_core/__pycache__/workload.cpython-311.pyc,sha256=ah0QMR3-t_EdjS6km5zi64LLn0FB3XgN7ALa1rVlDYY,4148
28
+ sagellm_core/engines/__init__.py,sha256=o2Yb0_kbIfBAJMAa1y0fB-JfkalNIh1FXFtWEytSQfU,1389
29
+ sagellm_core/engines/__init__.pyc,sha256=8BB5P3ewZazw3vPiHxqGdU3SsAouZRr728gjj00ILZQ,1388
30
+ sagellm_core/engines/cpu.pyc,sha256=bvSyz1Rxu2T38_m3BjeP2stzcGrT6gwKBxnddLKw_V0,20190
31
+ sagellm_core/engines/embedding.pyc,sha256=0cT3ODDmp-1aJlb6VthnzeKd09stAnITdTHuSaAssiA,11476
32
+ sagellm_core/engines/hf_cuda.pyc,sha256=N6Pk-Vhj_5zOCdWiXLTasO3BU-7mNO5F0-HK4TaRn1g,50838
33
+ sagellm_core/engines/mock.pyc,sha256=aOvuEPng6SUqQIB1Mpxcbb-8vzbrrwZSwal1atgSn3w,14611
34
+ sagellm_core/engines/pytorch.pyc,sha256=I3oBL28pzeMCT6GNfaG52CY0yt1KR4tsOaVY-amkN7I,18413
35
+ sagellm_core/engines/pytorch_engine.pyc,sha256=XFRcrBNL3ccxHPWuqv2uBg56HNDW0xg7_fK5jOdaHio,9872
36
+ sagellm_core/engines/__pycache__/__init__.cpython-311.pyc,sha256=IlXu4lev2PfOkLGSO6dbKDf_RIcxUvmL5cV0EIE3P0I,1418
37
+ sagellm_core/engines/__pycache__/cpu.cpython-311.pyc,sha256=gGjhwViirf7jzzFgcKqKo4ciiDJwWxNoBOC04vWL4dQ,20220
38
+ sagellm_core/engines/__pycache__/embedding.cpython-311.pyc,sha256=-kRmbxPN1IsSmNUi9FA3vp-zpOBiqLXf67gWVOU1wZg,11506
39
+ sagellm_core/engines/__pycache__/hf_cuda.cpython-311.pyc,sha256=RjPewreHvv_9N_iSt8wAxlhTJ_kM-FsoaDWplYAf-cc,50868
40
+ sagellm_core/engines/__pycache__/mock.cpython-311.pyc,sha256=O5j1RVjz8mAgoA0Aogt_3bVmChAtuJSrjMgDFB8YTAI,14641
41
+ sagellm_core/engines/__pycache__/pytorch.cpython-311.pyc,sha256=grmN4cmJmGdeO89jBPllYZGlB8gbRDYA2Zzy7pPWCjQ,18443
42
+ sagellm_core/engines/__pycache__/pytorch_engine.cpython-311.pyc,sha256=T6r2t5X9UNh8uT36gdow1cF5qB5_aeK9NruvdIkreWE,9902
43
+ isagellm_core-0.2.1.0.dist-info/METADATA,sha256=FT7qXDZbnlsUvA2rDwBd-4EQbDj8oULbNh4wBaU-PRU,10597
44
+ isagellm_core-0.2.1.0.dist-info/WHEEL,sha256=ZJeWpR6hcCRGwxVKXlDk-HsGwijNyTq4fszaDj4Ycyo,93
45
+ isagellm_core-0.2.1.0.dist-info/entry_points.txt,sha256=FoTEGna8tmx20UEjrNJGXOOgUnfIbNbdCyhxlDiSfHA,303
46
+ isagellm_core-0.2.1.0.dist-info/top_level.txt,sha256=wcgdWrvkaoYYh_dWSFI5Toi8PZsHutVqfhTB2tb0K6g,13
47
+ isagellm_core-0.2.1.0.dist-info/RECORD,,
@@ -0,0 +1,6 @@
1
+ [sagellm.engines]
2
+ cpu = sagellm_core.engines.cpu:create_cpu_engine
3
+ embedding = sagellm_core.engines.embedding:create_embedding_engine
4
+ hf-cuda = sagellm_core.engines.hf_cuda:create_hf_cuda_engine
5
+ mock = sagellm_core.engines:create_mock_engine
6
+ pytorch = sagellm_core.engines.pytorch:create_pytorch_engine
sagellm_core/__init__.py CHANGED
@@ -3,13 +3,14 @@
3
3
  本包提供 sageLLM 的核心运行时组件:
4
4
  - 配置 schema 与校验
5
5
  - Engine 抽象接口与实现
6
- - Backend 与 Engine 工厂函数
6
+ - Engine 工厂函数
7
7
  - 插件系统
8
8
  - Demo Runner
9
9
  """
10
10
 
11
11
  from __future__ import annotations
12
12
 
13
+ from sagellm_core.base_engine import BaseEngine, EngineInstanceConfig
13
14
  from sagellm_core.config import (
14
15
  BackendConfig,
15
16
  DemoConfig,
@@ -21,18 +22,69 @@ from sagellm_core.config import (
21
22
  load_config,
22
23
  )
23
24
  from sagellm_core.demo import main as demo_main
24
- from sagellm_core.engine import BaseEngine
25
+ from sagellm_core.engine_factory import EngineFactory
26
+ from sagellm_core.engines import (
27
+ CPUEngine,
28
+ EmbeddingEngine,
29
+ EmbeddingEngineConfig,
30
+ HFCudaEngine,
31
+ HFCudaEngineConfig,
32
+ MockEngine,
33
+ MockEngineConfig,
34
+ create_mock_engine,
35
+ )
36
+
37
+ # PyTorch engine (optional, loaded lazily)
38
+ PyTorchEngine = None
39
+ PyTorchEngineConfig = None
40
+ PyTorchEngineInstanceConfig = None
41
+ create_pytorch_engine = None
42
+
43
+ try:
44
+ from sagellm_core.engines.pytorch import (
45
+ PyTorchEngine,
46
+ PyTorchEngineConfig,
47
+ PyTorchEngineInstanceConfig,
48
+ create_pytorch_engine,
49
+ )
50
+ except ImportError:
51
+ pass # torch or transformers not available
25
52
  from sagellm_core.factory import create_backend, create_engine
26
53
  from sagellm_core.health import HealthStatus
27
54
  from sagellm_core.plugins import PluginResolutionError, list_entry_points, resolve_kind
28
55
  from sagellm_core.runner import DemoRunner, RunnerContext
29
56
 
30
- __version__ = "0.1.0.3"
57
+ # Auto-register built-in engines
58
+ EngineFactory.register(MockEngine)
59
+
60
+ # Conditional registration for engines with optional dependencies
61
+ try:
62
+ EngineFactory.register(CPUEngine)
63
+ except Exception:
64
+ pass # torch not available
65
+
66
+ try:
67
+ EngineFactory.register(HFCudaEngine)
68
+ except Exception:
69
+ pass # torch or CUDA not available
70
+
71
+ try:
72
+ EngineFactory.register(EmbeddingEngine)
73
+ except Exception:
74
+ pass # sentence-transformers not available
75
+
76
+ try:
77
+ if PyTorchEngine is not None:
78
+ EngineFactory.register(PyTorchEngine)
79
+ except Exception:
80
+ pass # torch or transformers not available
81
+
82
+ __version__ = "0.2.1.0"
31
83
 
32
84
  __all__ = [
33
85
  # Version
34
86
  "__version__",
35
- # Configuration
87
+ # Configuration (for YAML/config files)
36
88
  "BackendConfig",
37
89
  "DemoConfig",
38
90
  "EngineConfig",
@@ -43,10 +95,25 @@ __all__ = [
43
95
  "load_config",
44
96
  # Engine abstraction
45
97
  "BaseEngine",
98
+ "EngineInstanceConfig", # For runtime engine instantiation
46
99
  "HealthStatus",
100
+ # Engine implementations
101
+ "MockEngine",
102
+ "MockEngineConfig",
103
+ "create_mock_engine",
104
+ "CPUEngine",
105
+ "HFCudaEngine",
106
+ "HFCudaEngineConfig",
107
+ "EmbeddingEngine",
108
+ "EmbeddingEngineConfig",
109
+ "PyTorchEngine",
110
+ "PyTorchEngineConfig",
111
+ "PyTorchEngineInstanceConfig",
112
+ "create_pytorch_engine",
47
113
  # Factory functions
48
114
  "create_backend",
49
115
  "create_engine",
116
+ "EngineFactory",
50
117
  # Plugin system
51
118
  "PluginResolutionError",
52
119
  "list_entry_points",
sagellm_core/__init__.pyc CHANGED
Binary file
Binary file
sagellm_core/engine.pyc CHANGED
Binary file
Binary file
@@ -1,5 +1,45 @@
1
- """Engine implementations package."""
1
+ """Engine implementations for sageLLM Core.
2
+
3
+ This module provides built-in engine implementations:
4
+ - MockEngine: GPU-free mock engine for testing
5
+ - CPUEngine: CPU-only inference with HuggingFace Transformers
6
+ - HFCudaEngine: CUDA inference with HuggingFace Transformers
7
+ - PyTorchEngine: Unified PyTorch engine (auto-detects CUDA/NPU/CPU)
8
+ - EmbeddingEngine: Embedding model inference
9
+ """
2
10
 
3
11
  from __future__ import annotations
4
12
 
5
- __all__: list[str] = []
13
+ from sagellm_core.engines.cpu import CPUEngine
14
+ from sagellm_core.engines.embedding import EmbeddingEngine, EmbeddingEngineConfig
15
+ from sagellm_core.engines.hf_cuda import HFCudaEngine, HFCudaEngineInstanceConfig
16
+ from sagellm_core.engines.mock import (
17
+ MockEngine,
18
+ MockEngineInstanceConfig,
19
+ create_mock_engine,
20
+ )
21
+ from sagellm_core.engines.pytorch_engine import PyTorchEngine, create_pytorch_engine
22
+
23
+ # Export aliases for backward compatibility
24
+ HFCudaEngineConfig = HFCudaEngineInstanceConfig
25
+ MockEngineConfig = MockEngineInstanceConfig
26
+
27
+ __all__ = [
28
+ # Mock engine
29
+ "MockEngine",
30
+ "MockEngineConfig",
31
+ "MockEngineInstanceConfig",
32
+ "create_mock_engine",
33
+ # CPU engine
34
+ "CPUEngine",
35
+ # CUDA engine
36
+ "HFCudaEngine",
37
+ "HFCudaEngineConfig",
38
+ "HFCudaEngineInstanceConfig",
39
+ # PyTorch engine (unified)
40
+ "PyTorchEngine",
41
+ "create_pytorch_engine",
42
+ # Embedding engine
43
+ "EmbeddingEngine",
44
+ "EmbeddingEngineConfig",
45
+ ]
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,32 +0,0 @@
1
- sagellm_core/__init__.py,sha256=tCd-s6qtnmcAlkTPIAPI6eVAv2VDpTv1x3BTIPmJksc,1318
2
- sagellm_core/__init__.pyc,sha256=1gOLrD7tMlJWBJfli9YCkaCz3ARTW6TOF1BV6sC9vjc,1462
3
- sagellm_core/__main__.pyc,sha256=4wEXHFB0JVZaI6wLACU59_b-LfEbujTQZyzONaalAYA,384
4
- sagellm_core/config.pyc,sha256=8gGOOBcHRSSv883bDIJNXzB069ntBc0yYEf-PFAeWdU,9617
5
- sagellm_core/demo.pyc,sha256=MAeTgokTW8kW906wjvTLN1yNLfOOl3_hokpVzJ-Lt4I,6377
6
- sagellm_core/engine.pyc,sha256=8Et-gI0pYOpDPRCz8IrWMDYKWs_-K31jAAnYoe-HnF8,584
7
- sagellm_core/factory.pyc,sha256=PF-xQQn-fYn25GO5muzf9rCdHKQ3NhQYiCKOnkHBjxY,2692
8
- sagellm_core/health.pyc,sha256=oEWyaaTix4YXhyu8JSYOQAy9KBySxbIcHt2hNpchi-w,684
9
- sagellm_core/mock_engine.pyc,sha256=iadJef1bNdQXdXJLFo_FE9aVglecothXLhxMoMtzEv0,532
10
- sagellm_core/plugins.pyc,sha256=rhdewQ_zJxnmRFBjUozBlhQtIwFg0C1rFD8zMT7ZeKI,2618
11
- sagellm_core/py.typed,sha256=ixa8YukDZ3kLo0WsFJRGohLMyHzbMur1ALmmASML2cs,64
12
- sagellm_core/runner.pyc,sha256=kUPITl68dX1rOY5Fg5o6KRBMjMhMAQFNizEuRF44PgM,14248
13
- sagellm_core/workload.pyc,sha256=LDuZAdimFAd3pHn8E9WG7LjwU_1IKABZ-gaMCMjOTus,4118
14
- sagellm_core/__pycache__/__init__.cpython-311.pyc,sha256=rD-1rR4IMX4lKJKlNtTrMkPLHY-rWF-S06ZjtGu1pQU,1492
15
- sagellm_core/__pycache__/config.cpython-311.pyc,sha256=4c_gjzVmxIRApzmUq8LCboOG3wPqmmwWVFxZS3JOHOg,9647
16
- sagellm_core/__pycache__/demo.cpython-311.pyc,sha256=yOMGCRRQigl8sclMTcg-iHThQoxrRTPWSUdgDYJ3hgU,6407
17
- sagellm_core/__pycache__/engine.cpython-311.pyc,sha256=6wUoB2Rz8YqoVpefE28b_vqxAozdXFiCYJZ_gn5Vi9A,614
18
- sagellm_core/__pycache__/factory.cpython-311.pyc,sha256=Dl6w_PHlzEVr62cT6D11_gm9F-MAcqouBNNHZEHCjqw,2722
19
- sagellm_core/__pycache__/health.cpython-311.pyc,sha256=t8l6F_O808YWsFBDQfdJU6_Ps8H-nnE6k0fdLxYwLJk,714
20
- sagellm_core/__pycache__/mock_engine.cpython-311.pyc,sha256=KcHBGI1dVIEKm7rhZOkPWQ27rzNVEhmXDYsiQ_5Lfe8,562
21
- sagellm_core/__pycache__/plugins.cpython-311.pyc,sha256=K6-SC0yOVvT-qVh7Fp2GC-O0GloaWY00W9_8y_jrBnk,2648
22
- sagellm_core/__pycache__/runner.cpython-311.pyc,sha256=aZCGktjzcGBqNB7tJahEHfUgbTOYPCn-TyKp6yzpD6s,14278
23
- sagellm_core/__pycache__/workload.cpython-311.pyc,sha256=ah0QMR3-t_EdjS6km5zi64LLn0FB3XgN7ALa1rVlDYY,4148
24
- sagellm_core/engines/__init__.py,sha256=Pz_6hPpdL9aZqFSZnP_3Hdo_oOhMgygp8fYDUq60eoM,99
25
- sagellm_core/engines/__init__.pyc,sha256=F8_ZNvo0w79MF136pvCmRArLhPjae6uGsds7v9OUAEo,331
26
- sagellm_core/engines/mock.pyc,sha256=D0kWj50DsPdaZAM_2W-vyTW11ofNsSF02knRGtfKEJA,586
27
- sagellm_core/engines/__pycache__/__init__.cpython-311.pyc,sha256=Y36wU_L1T0NqaGBb-oqt38qVk38lunfTWTv5n-TkCLI,361
28
- sagellm_core/engines/__pycache__/mock.cpython-311.pyc,sha256=bt1MKmriqKcL_HF2gvQQ5JfxI-ij24G4fZvgFXjBAmM,616
29
- isagellm_core-0.1.0.3.dist-info/METADATA,sha256=wKlVRTDAi3oqLa6FMZsxPRpjaU2j_O9DivkGDzqzjy0,7558
30
- isagellm_core-0.1.0.3.dist-info/WHEEL,sha256=ZJeWpR6hcCRGwxVKXlDk-HsGwijNyTq4fszaDj4Ycyo,93
31
- isagellm_core-0.1.0.3.dist-info/top_level.txt,sha256=wcgdWrvkaoYYh_dWSFI5Toi8PZsHutVqfhTB2tb0K6g,13
32
- isagellm_core-0.1.0.3.dist-info/RECORD,,