Fix singleton and Classbase

This commit is contained in:
streetycat
2023-12-06 08:51:23 +00:00
committed by zhangzhen
parent 29f02138a5
commit e2b6f051cb
@@ -10,10 +10,10 @@ from prompt_toolkit.formatted_text import FormattedText
from aios.storage.storage import AIStorage from aios.storage.storage import AIStorage
from aios import ComputeKernel from aios import ComputeKernel
from component.llama_node.local_llama_compute_node import LocalLlama_ComputeNode from component.llama_node.local_llama_compute_node import LocalLlama_ComputeNode
from service.aios_shell.compute_node_config import ComputeNodeConfig from compute_node_config import ComputeNodeConfig
from .local_compute_node_builder import BuildParameter, BuilderState, LocalComputeNodeBuilder, ParameterApplier from .local_compute_node_builder import BuildParameter, BuilderState, LocalComputeNodeBuilder, ParameterApplier
class BuildParameterModelPath: class BuildParameterModelPath(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
if value: if value:
if os.path.exists(value): if os.path.exists(value):
@@ -24,7 +24,7 @@ class BuildParameterModelPath:
state.next_step += 1 state.next_step += 1
class BuildParameterModelUrl: class BuildParameterModelUrl(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
if value is None: if value is None:
value = "1" value = "1"
@@ -61,13 +61,13 @@ class BuildParameterModelUrl:
except Exception as e: except Exception as e:
print_formatted_text(FormattedText([("class:error", f"Download model failed: {e}\nYou can retry it or select another one.")]), style = state.shell_style) print_formatted_text(FormattedText([("class:error", f"Download model failed: {e}\nYou can retry it or select another one.")]), style = state.shell_style)
class ParameterNodeNameApplier: class ParameterNodeNameApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
value = value or os.path.basename(state.params["model_path"]) value = value or os.path.basename(state.params["model_path"])
state.params["node_name"] = value state.params["node_name"] = value
state.next_step += 1 state.next_step += 1
class ParameterPortApplier: class ParameterPortApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
if value is None or value == "0" or value == "": if value is None or value == "0" or value == "":
value = str(random.randint(10000, 60000)) value = str(random.randint(10000, 60000))
@@ -75,25 +75,25 @@ class ParameterPortApplier:
state.params["port"] = value state.params["port"] = value
state.next_step += 1 state.next_step += 1
class ParameterNGpuLayersApplier: class ParameterNGpuLayersApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
value = value or "83" value = value or "83"
state.params["n_gpu_layers"] = value state.params["n_gpu_layers"] = value
state.next_step += 1 state.next_step += 1
class ParameterNCtxApplier: class ParameterNCtxApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
value = value or "4096" value = value or "4096"
state.params["n_ctx"] = value state.params["n_ctx"] = value
state.next_step += 1 state.next_step += 1
class ParameterChatFormatApplier: class ParameterChatFormatApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
value = value or "llama-2" value = value or "llama-2"
state.params["chat_format"] = value state.params["chat_format"] = value
state.next_step += 1 state.next_step += 1
class ParameterExternParamsApplier: class ParameterExternParamsApplier(ParameterApplier):
async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None: async def apply(self, state: BuilderState, name: str, value: str or None = None) -> str or None:
extern_params = value extern_params = value
docker_image = "" docker_image = ""