Spaces:
Sleeping
Sleeping
| # ------------------------------------------------------------------------ | |
| # RF-DETR | |
| # Copyright (c) 2025 Roboflow. All Rights Reserved. | |
| # Licensed under the Apache License, Version 2.0 [see LICENSE for details] | |
| # ------------------------------------------------------------------------ | |
| # Modified from LW-DETR (https://github.com/Atten4Vis/LW-DETR) | |
| # Copyright (c) 2024 Baidu. All Rights Reserved. | |
| # ------------------------------------------------------------------------ | |
| """ | |
| CustomOpSymbolicRegistry class | |
| """ | |
| from copy import deepcopy | |
| import onnx | |
| import torch | |
| import torch.nn as nn | |
| import torch.nn.functional as F | |
| from torch.onnx import register_custom_op_symbolic | |
| from torch.onnx.symbolic_helper import parse_args | |
| from torch.onnx.symbolic_helper import _get_tensor_dim_size, _get_tensor_sizes | |
| from torch.autograd import Function | |
| class CustomOpSymbolicRegistry: | |
| # _SYMBOLICS = {} | |
| _OPTIMIZER = [] | |
| def optimizer(cls, fn): | |
| cls._OPTIMIZER.append(fn) | |
| def register_optimizer(): | |
| def optimizer_wrapper(fn): | |
| CustomOpSymbolicRegistry.optimizer(fn) | |
| return fn | |
| return optimizer_wrapper |