mirror of
https://github.com/encounter/adk-python.git
synced 2026-07-09 18:19:28 -07:00
chore: Avoid mutable default arguments in local_eval_service and runners
Changed default values for `session_service`, `artifact_service`, and `run_config` from instances of mutable classes to `None`. Instances are now created within the function body if the argument is not provided, preventing unexpected shared state across function calls. PiperOrigin-RevId: 804624564
This commit is contained in:
committed by
Copybara-Service
parent
d56dd08072
commit
64f11a6a67
@@ -68,19 +68,14 @@ class LocalEvalService(BaseEvalService):
|
||||
self,
|
||||
root_agent: BaseAgent,
|
||||
eval_sets_manager: EvalSetsManager,
|
||||
metric_evaluator_registry: Optional[MetricEvaluatorRegistry] = None,
|
||||
session_service: Optional[BaseSessionService] = None,
|
||||
artifact_service: Optional[BaseArtifactService] = None,
|
||||
metric_evaluator_registry: MetricEvaluatorRegistry = DEFAULT_METRIC_EVALUATOR_REGISTRY,
|
||||
session_service: BaseSessionService = InMemorySessionService(),
|
||||
artifact_service: BaseArtifactService = InMemoryArtifactService(),
|
||||
eval_set_results_manager: Optional[EvalSetResultsManager] = None,
|
||||
session_id_supplier: Callable[[], str] = _get_session_id,
|
||||
):
|
||||
self._root_agent = root_agent
|
||||
self._eval_sets_manager = eval_sets_manager
|
||||
metric_evaluator_registry = (
|
||||
metric_evaluator_registry or DEFAULT_METRIC_EVALUATOR_REGISTRY
|
||||
)
|
||||
session_service = session_service or InMemorySessionService()
|
||||
artifact_service = artifact_service or InMemoryArtifactService()
|
||||
self._metric_evaluator_registry = metric_evaluator_registry
|
||||
self._session_service = session_service
|
||||
self._artifact_service = artifact_service
|
||||
|
||||
Reference in New Issue
Block a user