Globals - Partager des valeurs entre les nœuds¶
- class manta_light.globals.Globals(host: str, port: int, task_id: str, chunk_size: int = 1048576)¶
Classe qui gère la manipulation des globals (getter et setter)
- Paramètres:
host (str) – Hôte du Manager
port (int) – Port du Manager
task_id (str) – ID de la tâche
chunk_size (int) – Taille du chunk
- __getitem__(tag: str) → dict¶
Obtenir les résultats d’une tâche
- Paramètres:
tag (str) – La balise du résultat à obtenir
- Renvoie:
La réponse du service world
- Type renvoyé:
dict
Exemples
À l’intérieur d’une classe
Task
, vous pouvez accéder aux globals définis par unSwarm
en utilisant l’attributself.world
défini automatiquement parTask
:>>> weights = self.world.globals["global_model_params"]
- async _get_global(service: WorldStub, request: GlobalTag) → GlobalValue¶
Obtenir un global à partir de la base de données
- Paramètres:
service (WorldStub) – Service
request (GlobalTag) – Tag du global
- Renvoie:
Valeur du global
- Type renvoyé:
GlobalValue
- async async_get(tag: str)¶
Obtenir les résultats des tâches
- Paramètres:
tag (str) – La balise du résultat à obtenir
- Renvoie:
La réponse du service world
- Type renvoyé:
dict
Exemples
Identique à
__getitem__
, mais asynchrone.>>> weights = await self.world.globals.async_get( ... "global_model_params" ... )
- async async_set(tag: str, result: dict)¶
Définir le résultat d’une tâche
- Paramètres:
tag (str) – La balise du résultat à définir
result (dict) – Le résultat à définir
Exemples
Identique à
__setitem__
, mais asynchrone.>>> await self.world.globals.async_set( ... "global_model_params", ... new_weights ... )