fix: 修复选择不可用的本地模型进行向量化,状态一直是排队中 (#1736)

This commit is contained in:
shaohuzhang1 2024-12-02 15:54:49 +08:00 committed by GitHub
parent 54bdc10b2e
commit 433ae5daf5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -17,7 +17,7 @@ from django.db.models import QuerySet
from common.config.embedding_config import ModelManage from common.config.embedding_config import ModelManage
from common.event import ListenerManagement, UpdateProblemArgs, UpdateEmbeddingDatasetIdArgs, \ from common.event import ListenerManagement, UpdateProblemArgs, UpdateEmbeddingDatasetIdArgs, \
UpdateEmbeddingDocumentIdArgs UpdateEmbeddingDocumentIdArgs
from dataset.models import Document, Status from dataset.models import Document, Status, TaskType, State
from ops import celery_app from ops import celery_app
from setting.models import Model from setting.models import Model
from setting.models_provider import get_model from setting.models_provider import get_model
@ -66,8 +66,8 @@ def embedding_by_document(document_id, model_id):
""" """
def exception_handler(e): def exception_handler(e):
QuerySet(Document).filter(id=document_id).update( ListenerManagement.update_status(QuerySet(Document).filter(id=document_id), TaskType.EMBEDDING,
**{'status': Status.error, 'update_time': datetime.datetime.now()}) State.FAILURE)
max_kb_error.error( max_kb_error.error(
f'获取向量模型失败:{str(e)}{traceback.format_exc()}') f'获取向量模型失败:{str(e)}{traceback.format_exc()}')
@ -102,7 +102,6 @@ def embedding_by_dataset(dataset_id, model_id):
max_kb.info(f"数据集文档:{[d.name for d in document_list]}") max_kb.info(f"数据集文档:{[d.name for d in document_list]}")
for document in document_list: for document in document_list:
try: try:
print(document.id, model_id)
embedding_by_document.delay(document.id, model_id) embedding_by_document.delay(document.id, model_id)
except Exception as e: except Exception as e:
pass pass