Для создания декоратора с аргументами нужно использовать дополнительную обертку. Внешняя функция будет принимать аргументы декоратора, средняя — саму декорируемую функцию, а внутренняя — аргументы декорируемой функции.
python
При вызове @decorator_with_args("привет", 123) сначала выполняется decorator_with_args("привет", 123). Эта функция возвращает actual_decorator. Затем @ применяет actual_decorator к my_function. В итоге, my_function заменяется функцией wrapper.