Merge pull request #255 from SuanmoSuanyangTechnology/fix/model_TimeBomb
fix(model)
This commit is contained in:
@@ -630,6 +630,13 @@ class ModelBaseRepository:
|
|||||||
db.add(model_base)
|
db.add(model_base)
|
||||||
return model_base
|
return model_base
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def get_by_name_and_provider(db: Session, name: str, provider: str) -> Optional['ModelBase']:
|
||||||
|
return db.query(ModelBase).filter(
|
||||||
|
ModelBase.name == name,
|
||||||
|
ModelBase.provider == provider
|
||||||
|
).first()
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def update(db: Session, model_base_id: uuid.UUID, data: dict) -> Optional['ModelBase']:
|
def update(db: Session, model_base_id: uuid.UUID, data: dict) -> Optional['ModelBase']:
|
||||||
model_base = db.query(ModelBase).filter(ModelBase.id == model_base_id).first()
|
model_base = db.query(ModelBase).filter(ModelBase.id == model_base_id).first()
|
||||||
|
|||||||
@@ -508,10 +508,7 @@ class ModelApiKeyService:
|
|||||||
)
|
)
|
||||||
if not validation_result["valid"]:
|
if not validation_result["valid"]:
|
||||||
# 记录验证失败的模型,但不抛出异常
|
# 记录验证失败的模型,但不抛出异常
|
||||||
failed_models.append({
|
failed_models.append(model_name)
|
||||||
"model_name": model_name,
|
|
||||||
"error": validation_result["error"]
|
|
||||||
})
|
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# 创建API Key
|
# 创建API Key
|
||||||
@@ -692,6 +689,9 @@ class ModelBaseService:
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def create_model_base(db: Session, data: model_schema.ModelBaseCreate):
|
def create_model_base(db: Session, data: model_schema.ModelBaseCreate):
|
||||||
|
existing = ModelBaseRepository.get_by_name_and_provider(db, data.name, data.provider)
|
||||||
|
if existing:
|
||||||
|
raise BusinessException("模型已存在", BizCode.DUPLICATE_NAME)
|
||||||
model_base = ModelBaseRepository.create(db, data.model_dump())
|
model_base = ModelBaseRepository.create(db, data.model_dump())
|
||||||
db.commit()
|
db.commit()
|
||||||
db.refresh(model_base)
|
db.refresh(model_base)
|
||||||
|
|||||||
Reference in New Issue
Block a user