QConfigMapping
-
class torch.ao.quantization.qconfig_mapping.QConfigMapping[исходный код] -
Сопоставление операций модели с
torch.ao.quantization.QConfig.Пользователь может задавать QConfig с помощью следующих методов (в порядке возрастания приоритета сопоставления):
set_global: задает глобальный (по умолчанию) QConfigset_object_type: задает QConfig для заданного типа модуля, функции или имени методаset_module_name_regex: задает QConfig для модулей, соответствующих заданной строке регулярного выраженияset_module_name: задает QConfig для модулей, соответствующих заданному имени модуляset_module_name_object_type_order: задает QConfig для модулей, соответствующих сочетанию заданного имени модуля, типа объекта и индекса, по которому встречается модульПример использования:
qconfig_mapping = QConfigMapping() .set_global(global_qconfig) .set_object_type(torch.nn.Linear, qconfig1) .set_object_type(torch.nn.ReLU, qconfig1) .set_module_name_regex("foo.*bar.*conv[0-9]+", qconfig1) .set_module_name_regex("foo.*", qconfig2) .set_module_name("module1", qconfig1) .set_module_name("module2", qconfig2) .set_module_name_object_type_order("foo.bar", torch.nn.functional.linear, 0, qconfig3)-
classmethod from_dict(qconfig_dict)[исходный код] -
Создает
QConfigMappingиз словаря со следующими ключами (все необязательные):“” (для глобального QConfig)
“object_type”
“module_name_regex”
“module_name”
“module_name_object_type_order”
Предполагается, что значения в этом словаре представляют собой списки кортежей.
- Тип возвращаемого значения:
-
set_global(global_qconfig)[исходный код] -
Задает глобальный (по умолчанию) QConfig.
- Тип возвращаемого значения:
-
set_module_name(module_name, qconfig)[исходный код] -
Задает QConfig для модулей, соответствующих заданному имени модуля. Если QConfig для существующего имени модуля уже задан, новый QConfig заменит старый.
- Тип возвращаемого значения:
-
set_module_name_object_type_order(module_name, object_type, index, qconfig)[исходный код] -
Задает QConfig для модулей, соответствующих сочетанию заданного имени модуля, типа объекта и индекса, по которому встречается модуль.
Если QConfig для существующей комбинации (имя модуля, тип объекта, индекс) уже задан, новый QConfig заменит старый.
- Тип возвращаемого значения:
-
set_module_name_regex(module_name_regex, qconfig)[исходный код] -
Задает QConfig для модулей, соответствующих заданной строке регулярного выражения.
Регулярные выражения сопоставляются в том порядке, в котором они зарегистрированы с помощью этого метода. Поэтому вызывающему коду следует сначала регистрировать более конкретные шаблоны, например:
qconfig_mapping = QConfigMapping() .set_module_name_regex("foo.*bar.*conv[0-9]+", qconfig1) .set_module_name_regex("foo.*bar.*", qconfig2) .set_module_name_regex("foo.*", qconfig3)В этом примере “foo.bar.conv0” будет соответствовать qconfig1, “foo.bar.linear” — qconfig2, а “foo.baz.relu” — qconfig3.
Если QConfig для существующего регулярного выражения имени модуля уже задан, новый QConfig заменит старый, сохранив порядок первоначальной регистрации регулярных выражений.
- Тип возвращаемого значения:
-
set_object_type(object_type, qconfig)[исходный код] -
Задает QConfig для заданного типа модуля, функции или имени метода. Если QConfig для существующего типа объекта уже задан, новый QConfig заменит старый.
- Тип возвращаемого значения:
-
to_dict()[исходный код] -
Преобразует этот
QConfigMappingв словарь со следующими ключами:“” (для глобального QConfig)
“object_type”
“module_name_regex”
“module_name”
“module_name_object_type_order”
Значения в этом словаре представляют собой списки кортежей.
-
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.ao.quantization.qconfig_mapping.QConfigMapping.html