kweaver-dolphin 0.1.0__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.
- DolphinLanguageSDK/__init__.py +58 -0
- dolphin/__init__.py +62 -0
- dolphin/cli/__init__.py +20 -0
- dolphin/cli/args/__init__.py +9 -0
- dolphin/cli/args/parser.py +567 -0
- dolphin/cli/builtin_agents/__init__.py +22 -0
- dolphin/cli/commands/__init__.py +4 -0
- dolphin/cli/interrupt/__init__.py +8 -0
- dolphin/cli/interrupt/handler.py +205 -0
- dolphin/cli/interrupt/keyboard.py +82 -0
- dolphin/cli/main.py +49 -0
- dolphin/cli/multimodal/__init__.py +34 -0
- dolphin/cli/multimodal/clipboard.py +327 -0
- dolphin/cli/multimodal/handler.py +249 -0
- dolphin/cli/multimodal/image_processor.py +214 -0
- dolphin/cli/multimodal/input_parser.py +149 -0
- dolphin/cli/runner/__init__.py +8 -0
- dolphin/cli/runner/runner.py +989 -0
- dolphin/cli/ui/__init__.py +10 -0
- dolphin/cli/ui/console.py +2795 -0
- dolphin/cli/ui/input.py +340 -0
- dolphin/cli/ui/layout.py +425 -0
- dolphin/cli/ui/stream_renderer.py +302 -0
- dolphin/cli/utils/__init__.py +8 -0
- dolphin/cli/utils/helpers.py +135 -0
- dolphin/cli/utils/version.py +49 -0
- dolphin/core/__init__.py +107 -0
- dolphin/core/agent/__init__.py +10 -0
- dolphin/core/agent/agent_state.py +69 -0
- dolphin/core/agent/base_agent.py +970 -0
- dolphin/core/code_block/__init__.py +0 -0
- dolphin/core/code_block/agent_init_block.py +0 -0
- dolphin/core/code_block/assign_block.py +98 -0
- dolphin/core/code_block/basic_code_block.py +1865 -0
- dolphin/core/code_block/explore_block.py +1327 -0
- dolphin/core/code_block/explore_block_v2.py +712 -0
- dolphin/core/code_block/explore_strategy.py +672 -0
- dolphin/core/code_block/judge_block.py +220 -0
- dolphin/core/code_block/prompt_block.py +32 -0
- dolphin/core/code_block/skill_call_deduplicator.py +291 -0
- dolphin/core/code_block/tool_block.py +129 -0
- dolphin/core/common/__init__.py +17 -0
- dolphin/core/common/constants.py +176 -0
- dolphin/core/common/enums.py +1173 -0
- dolphin/core/common/exceptions.py +133 -0
- dolphin/core/common/multimodal.py +539 -0
- dolphin/core/common/object_type.py +165 -0
- dolphin/core/common/output_format.py +432 -0
- dolphin/core/common/types.py +36 -0
- dolphin/core/config/__init__.py +16 -0
- dolphin/core/config/global_config.py +1289 -0
- dolphin/core/config/ontology_config.py +133 -0
- dolphin/core/context/__init__.py +12 -0
- dolphin/core/context/context.py +1580 -0
- dolphin/core/context/context_manager.py +161 -0
- dolphin/core/context/var_output.py +82 -0
- dolphin/core/context/variable_pool.py +356 -0
- dolphin/core/context_engineer/__init__.py +41 -0
- dolphin/core/context_engineer/config/__init__.py +5 -0
- dolphin/core/context_engineer/config/settings.py +402 -0
- dolphin/core/context_engineer/core/__init__.py +7 -0
- dolphin/core/context_engineer/core/budget_manager.py +327 -0
- dolphin/core/context_engineer/core/context_assembler.py +583 -0
- dolphin/core/context_engineer/core/context_manager.py +637 -0
- dolphin/core/context_engineer/core/tokenizer_service.py +260 -0
- dolphin/core/context_engineer/example/incremental_example.py +267 -0
- dolphin/core/context_engineer/example/traditional_example.py +334 -0
- dolphin/core/context_engineer/services/__init__.py +5 -0
- dolphin/core/context_engineer/services/compressor.py +399 -0
- dolphin/core/context_engineer/utils/__init__.py +6 -0
- dolphin/core/context_engineer/utils/context_utils.py +441 -0
- dolphin/core/context_engineer/utils/message_formatter.py +270 -0
- dolphin/core/context_engineer/utils/token_utils.py +139 -0
- dolphin/core/coroutine/__init__.py +15 -0
- dolphin/core/coroutine/context_snapshot.py +154 -0
- dolphin/core/coroutine/context_snapshot_profile.py +922 -0
- dolphin/core/coroutine/context_snapshot_store.py +268 -0
- dolphin/core/coroutine/execution_frame.py +145 -0
- dolphin/core/coroutine/execution_state_registry.py +161 -0
- dolphin/core/coroutine/resume_handle.py +101 -0
- dolphin/core/coroutine/step_result.py +101 -0
- dolphin/core/executor/__init__.py +18 -0
- dolphin/core/executor/debug_controller.py +630 -0
- dolphin/core/executor/dolphin_executor.py +1063 -0
- dolphin/core/executor/executor.py +624 -0
- dolphin/core/flags/__init__.py +27 -0
- dolphin/core/flags/definitions.py +49 -0
- dolphin/core/flags/manager.py +113 -0
- dolphin/core/hook/__init__.py +95 -0
- dolphin/core/hook/expression_evaluator.py +499 -0
- dolphin/core/hook/hook_dispatcher.py +380 -0
- dolphin/core/hook/hook_types.py +248 -0
- dolphin/core/hook/isolated_variable_pool.py +284 -0
- dolphin/core/interfaces.py +53 -0
- dolphin/core/llm/__init__.py +0 -0
- dolphin/core/llm/llm.py +495 -0
- dolphin/core/llm/llm_call.py +100 -0
- dolphin/core/llm/llm_client.py +1285 -0
- dolphin/core/llm/message_sanitizer.py +120 -0
- dolphin/core/logging/__init__.py +20 -0
- dolphin/core/logging/logger.py +526 -0
- dolphin/core/message/__init__.py +8 -0
- dolphin/core/message/compressor.py +749 -0
- dolphin/core/parser/__init__.py +8 -0
- dolphin/core/parser/parser.py +405 -0
- dolphin/core/runtime/__init__.py +10 -0
- dolphin/core/runtime/runtime_graph.py +926 -0
- dolphin/core/runtime/runtime_instance.py +446 -0
- dolphin/core/skill/__init__.py +14 -0
- dolphin/core/skill/context_retention.py +157 -0
- dolphin/core/skill/skill_function.py +686 -0
- dolphin/core/skill/skill_matcher.py +282 -0
- dolphin/core/skill/skillkit.py +700 -0
- dolphin/core/skill/skillset.py +72 -0
- dolphin/core/trajectory/__init__.py +10 -0
- dolphin/core/trajectory/recorder.py +189 -0
- dolphin/core/trajectory/trajectory.py +522 -0
- dolphin/core/utils/__init__.py +9 -0
- dolphin/core/utils/cache_kv.py +212 -0
- dolphin/core/utils/tools.py +340 -0
- dolphin/lib/__init__.py +93 -0
- dolphin/lib/debug/__init__.py +8 -0
- dolphin/lib/debug/visualizer.py +409 -0
- dolphin/lib/memory/__init__.py +28 -0
- dolphin/lib/memory/async_processor.py +220 -0
- dolphin/lib/memory/llm_calls.py +195 -0
- dolphin/lib/memory/manager.py +78 -0
- dolphin/lib/memory/sandbox.py +46 -0
- dolphin/lib/memory/storage.py +245 -0
- dolphin/lib/memory/utils.py +51 -0
- dolphin/lib/ontology/__init__.py +12 -0
- dolphin/lib/ontology/basic/__init__.py +0 -0
- dolphin/lib/ontology/basic/base.py +102 -0
- dolphin/lib/ontology/basic/concept.py +130 -0
- dolphin/lib/ontology/basic/object.py +11 -0
- dolphin/lib/ontology/basic/relation.py +63 -0
- dolphin/lib/ontology/datasource/__init__.py +27 -0
- dolphin/lib/ontology/datasource/datasource.py +66 -0
- dolphin/lib/ontology/datasource/oracle_datasource.py +338 -0
- dolphin/lib/ontology/datasource/sql.py +845 -0
- dolphin/lib/ontology/mapping.py +177 -0
- dolphin/lib/ontology/ontology.py +733 -0
- dolphin/lib/ontology/ontology_context.py +16 -0
- dolphin/lib/ontology/ontology_manager.py +107 -0
- dolphin/lib/skill_results/__init__.py +31 -0
- dolphin/lib/skill_results/cache_backend.py +559 -0
- dolphin/lib/skill_results/result_processor.py +181 -0
- dolphin/lib/skill_results/result_reference.py +179 -0
- dolphin/lib/skill_results/skillkit_hook.py +324 -0
- dolphin/lib/skill_results/strategies.py +328 -0
- dolphin/lib/skill_results/strategy_registry.py +150 -0
- dolphin/lib/skillkits/__init__.py +44 -0
- dolphin/lib/skillkits/agent_skillkit.py +155 -0
- dolphin/lib/skillkits/cognitive_skillkit.py +82 -0
- dolphin/lib/skillkits/env_skillkit.py +250 -0
- dolphin/lib/skillkits/mcp_adapter.py +616 -0
- dolphin/lib/skillkits/mcp_skillkit.py +771 -0
- dolphin/lib/skillkits/memory_skillkit.py +650 -0
- dolphin/lib/skillkits/noop_skillkit.py +31 -0
- dolphin/lib/skillkits/ontology_skillkit.py +89 -0
- dolphin/lib/skillkits/plan_act_skillkit.py +452 -0
- dolphin/lib/skillkits/resource/__init__.py +52 -0
- dolphin/lib/skillkits/resource/models/__init__.py +6 -0
- dolphin/lib/skillkits/resource/models/skill_config.py +109 -0
- dolphin/lib/skillkits/resource/models/skill_meta.py +127 -0
- dolphin/lib/skillkits/resource/resource_skillkit.py +393 -0
- dolphin/lib/skillkits/resource/skill_cache.py +215 -0
- dolphin/lib/skillkits/resource/skill_loader.py +395 -0
- dolphin/lib/skillkits/resource/skill_validator.py +406 -0
- dolphin/lib/skillkits/resource_skillkit.py +11 -0
- dolphin/lib/skillkits/search_skillkit.py +163 -0
- dolphin/lib/skillkits/sql_skillkit.py +274 -0
- dolphin/lib/skillkits/system_skillkit.py +509 -0
- dolphin/lib/skillkits/vm_skillkit.py +65 -0
- dolphin/lib/utils/__init__.py +9 -0
- dolphin/lib/utils/data_process.py +207 -0
- dolphin/lib/utils/handle_progress.py +178 -0
- dolphin/lib/utils/security.py +139 -0
- dolphin/lib/utils/text_retrieval.py +462 -0
- dolphin/lib/vm/__init__.py +11 -0
- dolphin/lib/vm/env_executor.py +895 -0
- dolphin/lib/vm/python_session_manager.py +453 -0
- dolphin/lib/vm/vm.py +610 -0
- dolphin/sdk/__init__.py +60 -0
- dolphin/sdk/agent/__init__.py +12 -0
- dolphin/sdk/agent/agent_factory.py +236 -0
- dolphin/sdk/agent/dolphin_agent.py +1106 -0
- dolphin/sdk/api/__init__.py +4 -0
- dolphin/sdk/runtime/__init__.py +8 -0
- dolphin/sdk/runtime/env.py +363 -0
- dolphin/sdk/skill/__init__.py +10 -0
- dolphin/sdk/skill/global_skills.py +706 -0
- dolphin/sdk/skill/traditional_toolkit.py +260 -0
- kweaver_dolphin-0.1.0.dist-info/METADATA +521 -0
- kweaver_dolphin-0.1.0.dist-info/RECORD +199 -0
- kweaver_dolphin-0.1.0.dist-info/WHEEL +5 -0
- kweaver_dolphin-0.1.0.dist-info/entry_points.txt +27 -0
- kweaver_dolphin-0.1.0.dist-info/licenses/LICENSE.txt +201 -0
- kweaver_dolphin-0.1.0.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from dolphin.core.config.ontology_config import OntologyConfig
|
|
2
|
+
from dolphin.lib.ontology.ontology_manager import OntologyManager
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OntologyContext:
|
|
6
|
+
"""Global context class, managing ontologies and data sources"""
|
|
7
|
+
|
|
8
|
+
def __init__(self, ontologyConfig: OntologyConfig):
|
|
9
|
+
self.ontologyManager = OntologyManager(ontologyConfig)
|
|
10
|
+
|
|
11
|
+
def getOntology(self):
|
|
12
|
+
return self.ontologyManager.getOntology()
|
|
13
|
+
|
|
14
|
+
@staticmethod
|
|
15
|
+
def loadOntologyContext(ontologyConfig: OntologyConfig) -> "OntologyContext":
|
|
16
|
+
return OntologyContext(ontologyConfig)
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Ontology Manager Module
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import threading
|
|
6
|
+
from typing import Optional
|
|
7
|
+
|
|
8
|
+
from dolphin.lib.ontology.ontology import Ontology
|
|
9
|
+
from dolphin.core.config import OntologyConfig
|
|
10
|
+
|
|
11
|
+
# Add import of Dolphin SDK log
|
|
12
|
+
from dolphin.core.logging.logger import get_logger
|
|
13
|
+
|
|
14
|
+
logger = get_logger("ontology")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class OntologyManager:
|
|
18
|
+
"""Manage Ontology instances and are responsible for regularly synchronizing data sources."""
|
|
19
|
+
|
|
20
|
+
def __init__(self, ontologyConfig: OntologyConfig, syncIntervalSeconds: int = 60):
|
|
21
|
+
"""Initialize the OntologyManager.
|
|
22
|
+
|
|
23
|
+
Args:
|
|
24
|
+
ontologyConfig (OntologyConfig): The ontology configuration.
|
|
25
|
+
syncIntervalSeconds (int): The synchronization interval for data sources in seconds, default is 1 hour.
|
|
26
|
+
"""
|
|
27
|
+
self.ontology: Ontology = Ontology(ontologyConfig)
|
|
28
|
+
self.syncIntervalSeconds: int = syncIntervalSeconds
|
|
29
|
+
self._syncThread: Optional[threading.Thread] = None
|
|
30
|
+
self._stopEvent: threading.Event = threading.Event()
|
|
31
|
+
self._syncLock: threading.Lock = threading.Lock()
|
|
32
|
+
logger.debug(f"OntologyManager initialized,sync interval: {syncIntervalSeconds} s")
|
|
33
|
+
|
|
34
|
+
self.ontology.buildOntologyFromSources(runScan=True, concurrent=True)
|
|
35
|
+
logger.debug("OntologyManager Ontology build completed")
|
|
36
|
+
|
|
37
|
+
def _synchronizeDataSource(self) -> None:
|
|
38
|
+
"""Background synchronization task, periodically triggering ontology data source scanning and building."""
|
|
39
|
+
logger.debug("Ontology sync thread started")
|
|
40
|
+
while not self._stopEvent.is_set():
|
|
41
|
+
try:
|
|
42
|
+
logger.debug("Starting ontology synchronization...")
|
|
43
|
+
with self._syncLock:
|
|
44
|
+
# The actual synchronization logic, calling Ontology's methods here
|
|
45
|
+
# Assume that Ontology has a buildOntologyFromSources method for synchronization
|
|
46
|
+
# The parameters here may need to be adjusted according to the actual situation.
|
|
47
|
+
self.ontology.buildOntologyFromSources(
|
|
48
|
+
runScan=True, concurrent=True
|
|
49
|
+
)
|
|
50
|
+
logger.debug("Ontology synchronization completed")
|
|
51
|
+
|
|
52
|
+
except Exception as e:
|
|
53
|
+
logger.exception(f"Error during ontology synchronization: {e}")
|
|
54
|
+
|
|
55
|
+
# Wait for the next synchronization period or stop event
|
|
56
|
+
self._stopEvent.wait(self.syncIntervalSeconds)
|
|
57
|
+
|
|
58
|
+
logger.debug("Ontology sync thread stopped")
|
|
59
|
+
|
|
60
|
+
def start(self) -> None:
|
|
61
|
+
"""Start the background synchronization thread."""
|
|
62
|
+
if self._syncThread is not None and self._syncThread.is_alive():
|
|
63
|
+
logger.warning("Sync thread is already running")
|
|
64
|
+
return
|
|
65
|
+
|
|
66
|
+
self._stopEvent.clear()
|
|
67
|
+
self._syncThread = threading.Thread(
|
|
68
|
+
target=self._synchronizeDataSource, daemon=True
|
|
69
|
+
)
|
|
70
|
+
self._syncThread.start()
|
|
71
|
+
logger.debug("Requested to start ontology sync thread")
|
|
72
|
+
|
|
73
|
+
def stop(self) -> None:
|
|
74
|
+
"""Stop the background synchronization thread."""
|
|
75
|
+
if self._syncThread is None or not self._syncThread.is_alive():
|
|
76
|
+
logger.debug("Sync thread is not running")
|
|
77
|
+
return
|
|
78
|
+
|
|
79
|
+
logger.debug("Requesting to stop ontology sync thread...")
|
|
80
|
+
self._stopEvent.set()
|
|
81
|
+
# You can choose to wait for the thread to finish, or return immediately.
|
|
82
|
+
# self._syncThread.join()
|
|
83
|
+
# logger.debug("The synchronization thread has been confirmed to have stopped")
|
|
84
|
+
|
|
85
|
+
def triggerSyncNow(self) -> None:
|
|
86
|
+
"""Manually trigger a synchronization for this data source immediately."""
|
|
87
|
+
logger.debug("Starting manual ontology synchronization...")
|
|
88
|
+
try:
|
|
89
|
+
with self._syncLock:
|
|
90
|
+
# Assume that Ontology has a buildOntologyFromSources method for synchronization
|
|
91
|
+
# The parameters here may need to be adjusted according to the actual situation.
|
|
92
|
+
self.ontology.buildOntologyFromSources(runScan=True, concurrent=True)
|
|
93
|
+
logger.debug("手动Ontology synchronization completed")
|
|
94
|
+
except Exception as e:
|
|
95
|
+
logger.exception(f"手动Error during ontology synchronization: {e}")
|
|
96
|
+
|
|
97
|
+
def getOntology(self) -> Ontology:
|
|
98
|
+
return self.ontology
|
|
99
|
+
|
|
100
|
+
def getConcepts(self, concepts: list) -> list:
|
|
101
|
+
return self.ontology.getConcepts(concepts)
|
|
102
|
+
|
|
103
|
+
def getDataSourcesFromConcepts(self, concepts: list) -> list:
|
|
104
|
+
return self.ontology.getDataSourcesFromConcepts(concepts)
|
|
105
|
+
|
|
106
|
+
def getDataSourceSchemasFromConcepts(self, concepts: list) -> list:
|
|
107
|
+
return self.ontology.getDataSourceSchemasFromConcepts(concepts)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"""Skill Result Module
|
|
2
|
+
Provides features such as result referencing, strategy handling, and strategy registration.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from dolphin.lib.skill_results.result_reference import ResultReference
|
|
6
|
+
from dolphin.lib.skill_results.cache_backend import CacheBackend
|
|
7
|
+
from dolphin.lib.skill_results.result_processor import ResultProcessor
|
|
8
|
+
from dolphin.lib.skill_results.strategies import (
|
|
9
|
+
BaseStrategy,
|
|
10
|
+
DefaultLLMStrategy,
|
|
11
|
+
SummaryLLMStrategy,
|
|
12
|
+
TruncateLLMStrategy,
|
|
13
|
+
DefaultAppStrategy,
|
|
14
|
+
PaginationAppStrategy,
|
|
15
|
+
PreviewAppStrategy,
|
|
16
|
+
)
|
|
17
|
+
from dolphin.lib.skill_results.strategy_registry import StrategyRegistry
|
|
18
|
+
|
|
19
|
+
__all__ = [
|
|
20
|
+
"ResultReference",
|
|
21
|
+
"CacheBackend",
|
|
22
|
+
"ResultProcessor",
|
|
23
|
+
"BaseStrategy",
|
|
24
|
+
"DefaultLLMStrategy",
|
|
25
|
+
"SummaryLLMStrategy",
|
|
26
|
+
"TruncateLLMStrategy",
|
|
27
|
+
"DefaultAppStrategy",
|
|
28
|
+
"PaginationAppStrategy",
|
|
29
|
+
"PreviewAppStrategy",
|
|
30
|
+
"StrategyRegistry",
|
|
31
|
+
]
|