本文整理汇总了Python中fastapi.UploadFile方法的典型用法代码示例。如果您正苦于以下问题:Python fastapi.UploadFile方法的具体用法?Python fastapi.UploadFile怎么用?Python fastapi.UploadFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类fastapi
的用法示例。
在下文中一共展示了fastapi.UploadFile方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: detect_custom
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def detect_custom(model: str = Form(...), image: UploadFile = File(...)):
"""
Performs a prediction for a specified image using one of the available models.
:param model: Model name or model hash
:param image: Image file
:return: Model's Bounding boxes
"""
draw_boxes = False
predict_batch = False
try:
output = await dl_service.run_model(model, image, draw_boxes, predict_batch)
error_logging.info('request successful;' + str(output))
return output
except ApplicationError as e:
error_logging.warning(model + ';' + str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
error_logging.error(model + ' ' + str(e))
return ApiResponse(success=False, error='unexpected server error')
示例2: run_model
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def run_model(model_name: str, input_data: UploadFile = File(...)):
"""
Performs a prediction by giving both model name and image file.
:param model_name: Model name
:param input_data: An image file
:return: APIResponse containing the prediction's bounding boxes
"""
try:
output = await dl_service.run_model(model_name, input_data, draw=False, predict_batch=False)
error_logging.info('request successful;' + str(output))
return ApiResponse(data=output)
except ApplicationError as e:
error_logging.warning(model_name + ';' + str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
error_logging.error(model_name + ' ' + str(e))
return ApiResponse(success=False, error='unexpected server error')
示例3: run_model_batch
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def run_model_batch(model_name: str, input_data: List[UploadFile] = File(...)):
"""
Performs a prediction by giving both model name and image file(s).
:param model_name: Model name
:param input_data: A batch of image files or a single image file
:return: APIResponse containing prediction(s) bounding boxes
"""
try:
output = await dl_service.run_model(model_name, input_data, draw=False, predict_batch=True)
error_logging.info('request successful;' + str(output))
return ApiResponse(data=output)
except ApplicationError as e:
error_logging.warning(model_name + ';' + str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
print(e)
error_logging.error(model_name + ' ' + str(e))
return ApiResponse(success=False, error='unexpected server error')
示例4: predict_image
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def predict_image(model_name: str, input_data: UploadFile = File(...)):
"""
Draws bounding box(es) on image and returns it.
:param model_name: Model name
:param input_data: Image file
:return: Image file
"""
try:
output = await dl_service.run_model(model_name, input_data, draw=True, predict_batch=False)
error_logging.info('request successful;' + str(output))
return FileResponse("/main/result.jpg", media_type="image/jpg")
except ApplicationError as e:
error_logging.warning(model_name + ';' + str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
error_logging.error(model_name + ' ' + str(e))
return ApiResponse(success=False, error='unexpected server error')
示例5: create_site_template
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def create_site_template(
db: Session = Depends(get_db),
name: str = Form(...),
zip_file: UploadFile = File(..., alias='zipFile'),
remark: Union[str, None] = Form(None),
):
site_template_profile = dict(
name=name,
remark=remark,
zip_file_name=zip_file.filename,
zip_file_content=await zip_file.read()
)
created_data = crud_site_template.create_site_template(
db, site_template_profile
)
return dict(result=created_data)
示例6: detect_robotron
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def detect_robotron(request: Request, background_tasks: BackgroundTasks, model: str = Form(...), image: UploadFile = File(...)):
"""
Performs a prediction for a specified image using one of the available models.
:param request: Used if background tasks was enabled
:param background_tasks: Used if background tasks was enabled
:param model: Model name or model hash
:param image: Image file
:return: Model's Bounding boxes
"""
draw_boxes = False
predict_batch = False
try:
request_start = time.time()
output = await dl_service.run_model(model, image, draw_boxes, predict_batch)
# background_tasks.add_task(metrics_collector,'detect',image, output, request, request_start)
error_logging.info('request successful;' + str(output))
return output
except ApplicationError as e:
error_logging.warning(model+';'+str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
error_logging.error(model+' '+str(e))
return ApiResponse(success=False, error='unexpected server error')
示例7: run_model
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def run_model(model_name: str, input_data: UploadFile = File(...)):
"""
Performs a prediction by giving both model name and image file.
:param model_name: Model name
:param input_data: An image file
:return: APIResponse containing the prediction's bounding boxes
"""
draw_boxes = False
predict_batch = False
try:
output = await dl_service.run_model(model_name, input_data, draw_boxes, predict_batch)
error_logging.info('request successful;' + str(output))
return ApiResponse(data=output)
except ApplicationError as e:
error_logging.warning(model_name+';'+str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
error_logging.error(model_name+' '+str(e))
return ApiResponse(success=False, error='unexpected server error')
示例8: run_model_batch
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def run_model_batch(model_name: str, input_data: List[UploadFile] = File(...)):
"""
Performs a prediction by giving both model name and image file(s).
:param model_name: Model name
:param input_data: A batch of image files or a single image file
:return: APIResponse containing prediction(s) bounding boxes
"""
draw_boxes = False
predict_batch = True
try:
output = await dl_service.run_model(model_name, input_data, draw_boxes, predict_batch)
error_logging.info('request successful;' + str(output))
return ApiResponse(data=output)
except ApplicationError as e:
error_logging.warning(model_name+';'+str(e))
return ApiResponse(success=False, error=e)
except Exception as e:
print(e)
error_logging.error(model_name+' '+str(e))
return ApiResponse(success=False, error='unexpected server error')
示例9: create_upload_files
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def create_upload_files(files: List[UploadFile] = File(...)):
return {"filenames": [file.filename for file in files]}
示例10: create_upload_file
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def create_upload_file(file: UploadFile = File(...)):
return {"filename": file.filename}
示例11: create_file
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def create_file(
file: bytes = File(...), fileb: UploadFile = File(...), token: str = Form(...)
):
return {
"file_size": len(file),
"token": token,
"fileb_content_type": fileb.content_type,
}
示例12: process_pdf
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def process_pdf(file: UploadFile = File(None)):
global sectlabel_model
if sectlabel_model is None:
sectlabel_model = SectLabel()
file_handle = file.file
file_name = file.filename
file_contents = file_handle.read()
pdf_save_location = pdf_store.save_pdf_binary_string(
pdf_string=file_contents, out_filename=file_name
)
# noinspection PyTypeChecker
pdf_reader = PdfReader(filepath=pdf_save_location)
# read pdf lines
lines = pdf_reader.read_pdf()
all_labels = []
all_lines = []
for batch_lines in chunks(lines, 64):
labels = sectlabel_model.predict_for_text_batch(texts=batch_lines)
all_labels.append(labels)
all_lines.append(batch_lines)
all_lines = itertools.chain.from_iterable(all_lines)
all_lines = list(all_lines)
all_labels = itertools.chain.from_iterable(all_labels)
all_labels = list(all_labels)
response_tuples = []
for line, label in zip(all_lines, all_labels):
response_tuples.append((line, label))
# remove the saved pdf
pdf_store.delete_file(str(pdf_save_location))
return {"labels": response_tuples}
示例13: create_c2_profile
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def create_c2_profile(
db: Session = Depends(get_db),
name: str = Form(...),
profile: UploadFile = File(...),
remark: str = Form(None),
):
c2_profile_obj = C2ProfileCreate(
name=name,
remark=remark,
profile_name=profile.filename,
profile_content=await profile.read()
)
created_data = crud_c2.create(db, obj_in=c2_profile_obj)
return dict(result=created_data)
示例14: upload_site_template_file
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def upload_site_template_file(
db: Session = Depends(get_db),
*,
site_template_id: int,
zip_file: UploadFile = File(..., alias='zipFile'),
):
update_result = crud_site_template.update_site_template(
db_session=db,
template_id=site_template_id,
zip_file_name=zip_file.filename,
zip_file_content=await zip_file.read()
)
return dict(result=bool(update_result))
示例15: config_validator
# 需要导入模块: import fastapi [as 别名]
# 或者: from fastapi import UploadFile [as 别名]
def config_validator(
data: fastapi.UploadFile = fastapi.File(...),
): # pragma: no cover
try:
rules.UserConfigurationSchema(await data.read())
except Exception as e:
status = 400
message = str(e)
else:
status = 200
message = "The configuration is valid"
return responses.PlainTextResponse(message, status_code=status)