### What problem does this PR solve? as title ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)tags/v0.8.0
| @@ -136,8 +136,11 @@ def set(): | |||
| tenant_id = DocumentService.get_tenant_id(req["doc_id"]) | |||
| if not tenant_id: | |||
| return get_data_error_result(retmsg="Tenant not found!") | |||
| embd_id = DocumentService.get_embd_id(req["doc_id"]) | |||
| embd_mdl = TenantLLMService.model_instance( | |||
| tenant_id, LLMType.EMBEDDING.value) | |||
| tenant_id, LLMType.EMBEDDING.value, embd_id) | |||
| e, doc = DocumentService.get_by_id(req["doc_id"]) | |||
| if not e: | |||
| return get_data_error_result(retmsg="Document not found!") | |||
| @@ -182,6 +182,19 @@ class DocumentService(CommonService): | |||
| return | |||
| return docs[0]["tenant_id"] | |||
| @classmethod | |||
| @DB.connection_context() | |||
| def get_embd_id(cls, doc_id): | |||
| docs = cls.model.select( | |||
| Knowledgebase.embd_id).join( | |||
| Knowledgebase, on=( | |||
| Knowledgebase.id == cls.model.kb_id)).where( | |||
| cls.model.id == doc_id, Knowledgebase.status == StatusEnum.VALID.value) | |||
| docs = docs.dicts() | |||
| if not docs: | |||
| return | |||
| return docs[0]["embd_id"] | |||
| @classmethod | |||
| @DB.connection_context() | |||
| def get_doc_id_by_doc_name(cls, doc_name): | |||