Integration of sentence-transformer local text embedding
This commit is contained in:
@@ -17,17 +17,26 @@ class LocalSentenceTransformer_ComputeNode(Queue_ComputeNode):
|
|||||||
def __init__(self, model_name: str = "all-MiniLM-L6-v2"):
|
def __init__(self, model_name: str = "all-MiniLM-L6-v2"):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
logger.info(
|
self.node_id = "local_sentence_transformer_node"
|
||||||
f"LocalSentenceTransformer_ComputeNode init, model_name: {model_name}"
|
|
||||||
)
|
|
||||||
self.model_name = model_name
|
self.model_name = model_name
|
||||||
|
self.model = None
|
||||||
|
|
||||||
|
def initial(self) -> bool:
|
||||||
|
logger.info(
|
||||||
|
f"LocalSentenceTransformer_ComputeNode init, model_name: {self.model_name}"
|
||||||
|
)
|
||||||
|
|
||||||
|
assert self.model_name is not None
|
||||||
|
assert self.model is None
|
||||||
try:
|
try:
|
||||||
from sentence_transformers import SentenceTransformer
|
from sentence_transformers import SentenceTransformer
|
||||||
|
|
||||||
self.model = SentenceTransformer(self.model)
|
self.model = SentenceTransformer(self.model)
|
||||||
except Exception as err:
|
except Exception as err:
|
||||||
logger.error(f"load model {self.model} failed: {err}")
|
logger.error(f"load model {self.model} failed: {err}")
|
||||||
|
return False
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
async def execute_task(
|
async def execute_task(
|
||||||
self, task: ComputeTask
|
self, task: ComputeTask
|
||||||
|
|||||||
@@ -137,6 +137,7 @@ class AIOS_Shell:
|
|||||||
return False
|
return False
|
||||||
ComputeKernel.get_instance().add_compute_node(open_ai_node)
|
ComputeKernel.get_instance().add_compute_node(open_ai_node)
|
||||||
|
|
||||||
|
|
||||||
if await AIStorage.get_instance().is_feature_enable("llama"):
|
if await AIStorage.get_instance().is_feature_enable("llama"):
|
||||||
llama_ai_node = LocalLlama_ComputeNode()
|
llama_ai_node = LocalLlama_ComputeNode()
|
||||||
if await llama_ai_node.initial() is True:
|
if await llama_ai_node.initial() is True:
|
||||||
@@ -168,6 +169,14 @@ class AIOS_Shell:
|
|||||||
await AIStorage.get_instance.set_feature_init_result("aigc",False)
|
await AIStorage.get_instance.set_feature_init_result("aigc",False)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
local_st_compute_node = LocalSentenceTransformer_ComputeNode()
|
||||||
|
if local_st_compute_node.initial() is not True:
|
||||||
|
logger.error("local sentence transformer node initial failed!")
|
||||||
|
else:
|
||||||
|
ComputeKernel.get_instance().add_compute_node(local_st_compute_node)
|
||||||
|
|
||||||
|
|
||||||
await ComputeKernel.get_instance().start()
|
await ComputeKernel.get_instance().start()
|
||||||
|
|
||||||
AIBus().get_default_bus().register_unhandle_message_handler(self._handle_no_target_msg)
|
AIBus().get_default_bus().register_unhandle_message_handler(self._handle_no_target_msg)
|
||||||
|
|||||||
Reference in New Issue
Block a user