mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-09-29 01:41:38 +00:00
* fix(bm25_index): 修正BM25索引计算中的文档长度归一化问题 修复了在计算BM25相似度时对文档长度进行不正确归一化的bug,确保所有查询都能得到准确的相关性评分。 * up * up * up * up * up * up * up * up * up * up * up * up * up * up * up * up * up * refactor(steps): Rename and adjust indexing step logic - Rename `scan_changes.py` and `reindex.py` to `clear_and_scan.py` - Update implementation details of `ScanChangesStep` and `ClearAndScanStep` - Modify the scheduling mechanism in `WatchChangesStep` - Adjust step registration and parameter configuration in config files - Update related tests to align with the new interface changes * up * feat(daily): replace daily CRUD operations with slug provisioning approach * refactor(tests): migrate CRUD step tests from HTTP server to direct LocalFileStore * up * up * up * up --------- Co-authored-by: huangsen <huangsen.huang@alibaba-inc.com>
29 lines
1 KiB
Python
29 lines
1 KiB
Python
"""Application context: shared state container for components, jobs, and service."""
|
|
|
|
from typing import TYPE_CHECKING
|
|
|
|
from ..enumeration import ComponentEnum
|
|
from ..schema import ApplicationConfig
|
|
|
|
if TYPE_CHECKING:
|
|
from .base_component import BaseComponent
|
|
from .job import BaseJob
|
|
from .service import BaseService
|
|
|
|
|
|
class ApplicationContext:
|
|
"""Passive state container holding parsed config and wired components.
|
|
|
|
The Application class performs the actual wiring (registry lookups and
|
|
component instantiation); this class only stores the results so that
|
|
components, jobs, and the service can find each other at runtime.
|
|
"""
|
|
|
|
def __init__(self, **kwargs):
|
|
# Parse raw kwargs into a typed, validated config object.
|
|
self.app_config: ApplicationConfig = ApplicationConfig(**kwargs)
|
|
|
|
# Populated by Application during initialization.
|
|
self.service: "BaseService | None" = None
|
|
self.components: dict[ComponentEnum, dict[str, "BaseComponent"]] = {}
|
|
self.jobs: dict[str, "BaseJob"] = {}
|