利用nicegui开发ai工具示例

在这里插入图片描述

from fastapi import FastAPI
import uvicorn
from nicegui import ui


class PipRequirement:
    def __init__(self):
        ui.label("依赖安装与依赖展示")


class BasicSettings:
    def __init__(self):
        self.project_select = ui.select(["test"], label="项目选择").props('filled color=green')
        ui.separator()
        # self.model_project_name= ui.input(placeholder="")
        self.model_name = ui.input(placeholder="yolov5", label="模型名称").props('filled color=green')
        self.model_name_on_jfrog = ui.input(placeholder="yolov5-op13-fp32", label="模型jfrog名称").props(
            'filled color=green')
        self.model_name_on_xnas = ui.input(placeholder="pytorch_model_tops_engine.bin", label="模型xnas名称").props(
            'filled color=green')
        self.jfrog_dir = ui.input(
            placeholder="enflame_model_zoo/official/aigc/xx/xx",
            label="模型jfrog上传onnx的路径").props('filled color=green')
        self.xnas_dir = ui.input(placeholder="inference/algo_test/xx/xx", label="模型xnas上传engine的路径").props(
            'filled color=green')
        self.save_btn = ui.button("保存基本配置").props('inline color=green').style(
            "width: 100%;")
        self.clone_btn = ui.button("从当前项目中克隆出新项目").props('inline color=green').style(
            "width: 100%;")


class ModelInstance:
    def __init__(self):
        example = """
from controlnet_aux import LineartDetector\n
model = LineartDetector.from_pretrained("lllyasviel/Annotators").model        
"""
        project_select = ui.select(["test"], label="项目选择").props('filled color=green')
        ui.separator()
        with ui.label("示例代码参考"):
            ui.code(content=example)
        editor = ui.editor(placeholder='# 请在这里写模型实例,要求必须含有model')
        save_btn = ui.button("保存模型实例").style(
            "width: 100%;")


class MainPage:

    def __init__(self):
        with ui.header() \
                .style('box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1)'):
            with ui.row().classes('max-[1050px]:hidden'):
                ui.button("重置数据").props("text").classes(replace='text-lg text-white')
                ui.button("ai 模型转换可视化工具").classes(replace='text-lg text-white').disable()

        with ui.tabs().classes('w-full') as tabs:
            basic_settings_ = ui.tab('基本设置')
            model_instance_ = ui.tab('模型实例配置')
            model_onnx_export_ = ui.tab('模型导出onnx')
            model_onnx_topsideas_ = ui.tab('模型onnx精度验证topsideas')
            model_onnx_build_engine_ = ui.tab('模型onnx编图engine')
            model_onnx_upload_ = ui.tab('模型onn及weight上传jfrog以及开发者文档上传')
            model_engine_upload_ = ui.tab('模型engine上传xnas')
            env_data_ = ui.tab('环境依赖展示')

        with ui.tab_panels(tabs, value=basic_settings_).classes(
                'w-full h-full') as tab_panels:
            with ui.tab_panel(basic_settings_):
                BasicSettings()
            with ui.tab_panel(model_instance_):
                ModelInstance()
            with ui.tab_panel(model_onnx_export_):
                ui.label('model_onnx_export tab')
            with ui.tab_panel(model_onnx_topsideas_):
                ui.label('model_onnx_test tab')
            with ui.tab_panel(model_onnx_build_engine_):
                ui.label('model_onnx_test tab')
            with ui.tab_panel(model_onnx_upload_):
                ui.label('model_onnx_test tab')
            with ui.tab_panel(model_engine_upload_):
                ui.label('model_onnx_test tab')
            with ui.tab_panel(env_data_):
                ui.label('model_onnx_test tab')


# app = FastAPI()


# frontend(app)
# if __name__ == '__main__':
#     uvicorn.run("main:app", reload=True)
MainPage()
ui.run(reload=False)

```
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值