Files
param-hub-python/modules/routes/__pycache__/api_models.cpython-310.pyc
T

54 lines
5.5 KiB
Plaintext
Raw Normal View History

2026-07-10 23:59:53 +08:00
o
2026-07-11 00:34:47 +08:00
zQjã@s dZddlZddlZddlmZddlmZmZmZmZddl m
2026-07-10 23:59:53 +08:00
Z
2026-07-11 00:34:47 +08:00
ddl m Z m
Z
mZmZedeƒZe d¡d dƒZe d
¡d d ƒZejdd
2026-07-10 23:59:53 +08:00
gdddƒZejd
2026-07-11 00:34:47 +08:00
dgdddƒZejd
2026-07-10 23:59:53 +08:00
dgdddƒZejdd
gdddƒZejddgdddƒZejddd
2026-07-11 00:34:47 +08:00
gddd „ƒZdS)!u
AI模型 CRUD API
éN)Údatetime)Ú BlueprintÚrequestÚjsonifyÚResponse)Ú MODELS_FILE)Ú load_dataÚ save_dataÚparse_date_to_timestampÚ
safe_sort_keyÚ
api_modelsz /api/modelscttƒ}tj dd¡dk}|rdd|Dƒ}tj dd¡ ¡ ¡ˆr,‡fdd|Dƒ}tj dd ¡tj d
2026-07-10 23:59:53 +08:00
d ¡d k}ˆd krLt|d d
2026-07-11 00:34:47 +08:00
d}t|ƒSˆdvr[t|fdd
|d}t|ƒS)allÚ0cSsg|]
}| dd¡r|qS)ÚvisibleT)Úget©Ú.0Úrú3works/param-hub-python/modules/routes/api_models.pyÚ
2026-07-10 23:59:53 +08:00
<listcomp>ózapi_models.<locals>.<listcomp>Úcs8g|]}ˆ| dd¡ ¡vsˆ| dd¡ ¡vr|qS)ÚnamerÚ organization)rÚlowerr)ÚkeywordrrrsÿÚsortÚdefaultÚorderÚdesccSs4| dd¡ t| dd¡ƒpt| dd¡ƒpd fS)NÚ is_pinnedFÚ publish_daterÚ
created_atr)rr
©ÚxrrrÚ<lambda>s ÿÿþzapi_models.<locals>.<lambda>)Úkey)rÚ
parametersÚcontext_lengthÚmmlur$r#ÚviewsÚ
2026-07-11 00:34:47 +08:00
updated_atcs
2026-07-10 23:59:53 +08:00
t|ˆƒS)N)r r%)Úsort_byrrr'"s
2026-07-11 00:34:47 +08:00
)r(Úreverse) rrrÚargsrÚstriprÚsortedr)ÚmodelsÚ hide_hiddenr/r)rr.rr sýz/api/models/<model_id>cs<ttƒ}tfdd|Dƒdƒ}|stddiƒdfSt|ƒS)Nc3ó |] }|dˆkr|VqdS©ÚidNrr©Úmodel_idrrÚ <genexpr>)óz#api_model_detail.<locals>.<genexpr>ÚerrorúModel not foundé”)rrÚnextr©r9r3Úmodelrr8rÚapi_model_detail&s
rBÚPOST)ÚmethodscCs”t ¡}ttƒ}t ¡jdd|d<t ¡  d¡|d<| 
2026-07-10 23:59:53 +08:00
dd¡|d<| 
2026-07-11 00:34:47 +08:00
dd¡|d<| 
d d
¡|d <| 
d d ¡|d <|  |¡t t|ƒt
|ƒS)
r7ú%Y-%m-%d %H:%M:%Sr$rTr#rr,rr"F)rÚget_jsonrrÚuuidÚuuid4ÚhexrÚnowÚstrftimerÚappendr r)Údatar3rrrÚapi_create_model/s

rOÚPUTcsjt ¡}ttƒ}tfdd|Dƒdƒ}|stddiƒdfS| |¡t ¡  d¡|d<t
t|ƒt|ƒS)Nc3r5r6rrr8rrr:Br;z#api_update_model.<locals>.<genexpr>r<r=r>rFr-) rrGrrr?rÚupdaterrKrLr )r9rNr3rArr8rÚapi_update_model>s

rRÚDELETEcs0ttƒ}fdd|Dƒ}tt|ƒtddiƒS)Ncsg|]
}|dˆkr|qS)r7rrr8rrrNrz$api_delete_model.<locals>.<listcomp>ÚsuccessT)rrr r)r9r3rr8rÚapi_delete_modelKs
 rUz/api/models/<model_id>/visiblecsbttƒ}tfdd|Dƒdƒ}|stddiƒdfS| dd¡ |d<tt|ƒtd|ddœƒS) Nc3r5r6rrr8rrr:Vr;z+api_toggle_model_visible.<locals>.<genexpr>r<r=r>rT)rTr)rrr?rrr r@rr8rÚapi_toggle_model_visibleSs
rVz/api/models/exportÚGETc
Cz0ttƒ}d|t|ƒt ¡ d¡ddœ}tj|ddd}t|dd d
t ¡ d ¡d id
}|WSt yL}zt
2026-07-10 23:59:53 +08:00
dt |ƒiƒdfWYd}~Sd}~ww)u导出所有模型数æ®r3rFz1.0)ÚtypeÚitemsÚcountÚ export_timeÚversionFé)Ú ensure_asciiÚindentzapplication/jsonzContent-Dispositionz#attachment; filename=models-export-z %Y%m%d%H%M%Sz.json)ÚmimetypeÚheadersr<éôN) rrÚlenrrKrLÚjsonÚdumpsrÚ ExceptionrÚstr)r3Ú export_dataÚjson_strÚresponseÚerrrÚapi_export_models`s& ûý ÿrlú/api/models/importc
s8ztjdkrtddddidœƒWSt ¡}|rd|vr$tdd iƒd
fWStj dd ¡}ttƒ}|d}d d
d
gdœ}|D]9‰tfdd|Dƒdƒ}|rh|dkr^|  ˆ¡|dd7<q<|d 
2026-07-11 00:34:47 +08:00
ˆd¡q<| 
ˆ¡|dd7<q<t t|ƒt|ƒWSt y}ztdt
|ƒiƒdfWYd}~Sd}~ww)u导入模型数æ®rWrmrCÚmodeumerge 或 replace)ÚendpointÚmethodÚparamsrYr<u缺少 items 字段iÚmergeTr)rTÚimportedÚupdatedÚskippedc3s$|]