Merge branch 'MVP' into MVP

This commit is contained in:
Liu Zhicong
2023-09-17 18:30:26 -07:00
committed by GitHub
34 changed files with 1542 additions and 555 deletions
+17 -12
View File
@@ -10,26 +10,28 @@ import stability_sdk.interfaces.gooseai.generation.generation_pb2 as generation
from .compute_task import ComputeTask, ComputeTaskResult, ComputeTaskState, ComputeTaskType
from .compute_node import ComputeNode
from .storage import AIStorage,UserConfig
logger = logging.getLogger(__name__)
class Stability_ComputeNode(ComputeNode):
_instanace = None
def __new__(cls):
if cls._instanace is None:
cls._instanace = super(Stability_ComputeNode, cls).__new__(cls)
cls._instanace.is_start = False
return cls._instanace
@classmethod
def get_instance(cls):
if cls._instance is None:
cls._instance = Stability_ComputeNode()
return cls._instance
@classmethod
def declare_user_config(cls):
user_config = AIStorage.get_instance().get_user_config()
user_config.add_user_config("stability_api_key",False,None,"STABILITY_API_KEY")
def __init__(self) -> None:
super().__init__()
if self.is_start is True:
logger.warn("Stability_ComputeNode is already start")
return
self.is_start = True
self.is_start = False
self.node_id = "stability_node"
self.api_key = ""
self.engine = "stable-diffusion-512-v2-1"
@@ -88,8 +90,8 @@ class Stability_ComputeNode(ComputeNode):
for resp in answers:
for artifact in resp.artifacts:
logger.info("artifact:", artifact.id,
artifact.type, artifact.finish_reason)
logger.info(f"artifact:{artifact.id},{artifact.type},{artifact.finish_reason}")
if artifact.finish_reason == generation.FILTER:
logging.warn("request activated the API's safety filters")
if artifact.type == generation.ARTIFACT_IMAGE:
@@ -108,6 +110,9 @@ class Stability_ComputeNode(ComputeNode):
return None
def start(self):
if self.is_start:
return
self.is_start = True
async def _run_task_loop():
while True:
logger.info("stability_node is waiting for task...")