Change dgpu submodules classes name per fomos suggestion

guilles_counter_review
Guillermo Rodriguez 2025-02-03 18:31:12 -03:00
parent 933063f766
commit 88ab4d0eae
No known key found for this signature in database
GPG Key ID: 002CC5F1E6BDA53E
6 changed files with 25 additions and 30 deletions

View File

@ -4,21 +4,21 @@ from hypercorn.config import Config
from hypercorn.trio import serve from hypercorn.trio import serve
from quart_trio import QuartTrio as Quart from quart_trio import QuartTrio as Quart
from skynet.dgpu.compute import SkynetMM from skynet.dgpu.compute import ModelMngr
from skynet.dgpu.daemon import SkynetDGPUDaemon from skynet.dgpu.daemon import WorkerDaemon
from skynet.dgpu.network import SkynetGPUConnector from skynet.dgpu.network import NetConnector
async def open_dgpu_node(config: dict) -> None: async def open_dgpu_node(config: dict) -> None:
''' '''
Open a top level "GPU mgmt daemon", keep the Open a top level "GPU mgmt daemon", keep the
`SkynetDGPUDaemon._snap: dict[str, list|dict]` table `WorkerDaemon._snap: dict[str, list|dict]` table
and *maybe* serve a `hypercorn` web API. and *maybe* serve a `hypercorn` web API.
''' '''
conn = SkynetGPUConnector(config) conn = NetConnector(config)
mm = SkynetMM(config) mm = ModelMngr(config)
daemon = SkynetDGPUDaemon(mm, conn, config) daemon = WorkerDaemon(mm, conn, config)
api: Quart|None = None api: Quart|None = None
if 'api_bind' in config: if 'api_bind' in config:

View File

@ -66,8 +66,7 @@ def prepare_params_for_diffuse(
) )
# TODO, yet again - drop the redundant prefix ;) class ModelMngr:
class SkynetMM:
''' '''
(AI algo) Model manager for loading models, computing outputs, (AI algo) Model manager for loading models, computing outputs,
checking load state, and unloading when no-longer-needed/finished. checking load state, and unloading when no-longer-needed/finished.

View File

@ -17,8 +17,8 @@ from skynet.constants import (
from skynet.dgpu.errors import ( from skynet.dgpu.errors import (
DGPUComputeError, DGPUComputeError,
) )
from skynet.dgpu.compute import SkynetMM from skynet.dgpu.compute import ModelMngr
from skynet.dgpu.network import SkynetGPUConnector from skynet.dgpu.network import NetConnector
def convert_reward_to_int(reward_str): def convert_reward_to_int(reward_str):
@ -29,8 +29,7 @@ def convert_reward_to_int(reward_str):
return int(int_part + decimal_part) return int(int_part + decimal_part)
# prolly don't need the `Skynet` prefix since that's kinda implied ;p class WorkerDaemon:
class SkynetDGPUDaemon:
''' '''
The root "GPU daemon". The root "GPU daemon".
@ -40,12 +39,12 @@ class SkynetDGPUDaemon:
''' '''
def __init__( def __init__(
self, self,
mm: SkynetMM, mm: ModelMngr,
conn: SkynetGPUConnector, conn: NetConnector,
config: dict config: dict
): ):
self.mm: SkynetMM = mm self.mm: ModelMngr = mm
self.conn: SkynetGPUConnector = conn self.conn: NetConnector = conn
self.auto_withdraw = ( self.auto_withdraw = (
config['auto_withdraw'] config['auto_withdraw']
if 'auto_withdraw' in config else False if 'auto_withdraw' in config else False
@ -147,7 +146,7 @@ class SkynetDGPUDaemon:
# TODO? this func is kinda big and maybe is better at module # TODO? this func is kinda big and maybe is better at module
# level to reduce indentation? # level to reduce indentation?
# -[ ] just pass `daemon: SkynetDGPUDaemon` vs. `self` # -[ ] just pass `daemon: WorkerDaemon` vs. `self`
async def maybe_serve_one( async def maybe_serve_one(
self, self,
req: dict, req: dict,
@ -271,7 +270,7 @@ class SkynetDGPUDaemon:
# TODO, as per above on `.maybe_serve_one()`, it's likely a bit # TODO, as per above on `.maybe_serve_one()`, it's likely a bit
# more *trionic* to define this all as a module level task-func # more *trionic* to define this all as a module level task-func
# which operates on a `daemon: SkynetDGPUDaemon`? # which operates on a `daemon: WorkerDaemon`?
# #
# -[ ] keeps tasks-as-funcs style prominent # -[ ] keeps tasks-as-funcs style prominent
# -[ ] avoids so much indentation due to methods # -[ ] avoids so much indentation due to methods

View File

@ -46,10 +46,7 @@ async def failable(fn: partial, ret_fail=None):
return o.unwrap() return o.unwrap()
# TODO, again the prefix XD class NetConnector:
# -[ ] better name then `GPUConnector` ??
# |_ `Compute[Net]IO[Mngr]`
class SkynetGPUConnector:
''' '''
An API for connecting to and conducting various "high level" An API for connecting to and conducting various "high level"
network-service operations in the skynet. network-service operations in the skynet.

View File

@ -24,17 +24,17 @@ def cleos():
@pytest.fixture(scope='session') @pytest.fixture(scope='session')
def dgpu(): def dgpu():
from skynet.dgpu.network import SkynetGPUConnector from skynet.dgpu.network import NetConnector
from skynet.dgpu.compute import SkynetMM from skynet.dgpu.compute import ModelMngr
from skynet.dgpu.daemon import SkynetDGPUDaemon from skynet.dgpu.daemon import WorkerDaemon
config = load_skynet_toml(file_path='skynet.toml') config = load_skynet_toml(file_path='skynet.toml')
hf_token = load_key(config, 'skynet.dgpu.hf_token') hf_token = load_key(config, 'skynet.dgpu.hf_token')
hf_home = load_key(config, 'skynet.dgpu.hf_home') hf_home = load_key(config, 'skynet.dgpu.hf_home')
set_hf_vars(hf_token, hf_home) set_hf_vars(hf_token, hf_home)
config = config['skynet']['dgpu'] config = config['skynet']['dgpu']
conn = SkynetGPUConnector(config) conn = NetConnector(config)
mm = SkynetMM(config) mm = ModelMngr(config)
daemon = SkynetDGPUDaemon(mm, conn, config) daemon = WorkerDaemon(mm, conn, config)
yield conn, mm, daemon yield conn, mm, daemon

View File

@ -1,6 +1,6 @@
import json import json
from skynet.dgpu.compute import SkynetMM from skynet.dgpu.compute import ModelMngr
from skynet.constants import * from skynet.constants import *
from skynet.config import * from skynet.config import *