Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

infer time benchmark #24

Closed
ArtemisDicoTiar opened this issue Jul 19, 2021 · 11 comments
Closed

infer time benchmark #24

ArtemisDicoTiar opened this issue Jul 19, 2021 · 11 comments
Assignees
Labels
enhancement New feature or request

Comments

@ArtemisDicoTiar
Copy link
Member

현재 main.infer 실행에 대략적으로 측정되는 시간에는 모델 로드 시간이 포함되어 있다.
실제로 디플로이시에는 모델로드는 데몬이 최초 실행될때에만 실행되기 때문에 실질적인 infer시간에는 모델로드가 빠져야 맞을 듯하다.

벤치마킹 툴이 여러개 있는 거 같다. 찾아보고 실험해보자.

@ArtemisDicoTiar ArtemisDicoTiar self-assigned this Jul 19, 2021
@ArtemisDicoTiar ArtemisDicoTiar changed the title infer benchmark infer time benchmark Jul 19, 2021
@ArtemisDicoTiar ArtemisDicoTiar added the enhancement New feature or request label Jul 19, 2021
@ArtemisDicoTiar
Copy link
Member Author

방법이 생각보다 꽤 간단한거 같다.
기본 라이브러리에 이미 밴치마킹에 필요한 툴이 추가되어 있다. (cProfile)
아래 코드를 실행하면 된다.

import cProfile
cProfile.run('main()')

@ArtemisDicoTiar
Copy link
Member Author

ArtemisDicoTiar commented Jul 19, 2021

cProfile result
### desc: 왜 하필이면 오늘이야 ###
0: (가는 날이 장날, 0.7219)
1: (산넘어 산, 0.2652)
2: (갈수록 태산, 0.0123)
3: (등잔 밑이 어둡다, 0.0003)
4: (꿩 대신 닭, 0.0002)
5: (핑계 없는 무덤 없다, 0.0000)
6: (원숭이도 나무에서 떨어진다, 0.0000)
7: (소문난 잔치에 먹을 것 없다, 0.0000)
8: (고래 싸움에 새우 등 터진다, 0.0000)
9: (서당개 삼 년이면 풍월을 읊는다, 0.0000)

         188016 function calls (185352 primitive calls) in 5.656 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
      2/1    0.000    0.000    0.001    0.001 <frozen importlib._bootstrap>:1002(_find_and_load)
        1    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1033(_handle_fromlist)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:112(release)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:152(__init__)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:156(__enter__)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:160(__exit__)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:166(_get_module_lock)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:185(cb)
      2/1    0.000    0.000    0.001    0.001 <frozen importlib._bootstrap>:220(_call_with_frames_removed)
       44    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:231(_verbose_message)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:35(_new_module)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:351(__init__)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:385(cached)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:398(parent)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:406(has_location)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:486(_init_module_attrs)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:558(module_from_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:58(__init__)
      2/1    0.000    0.000    0.001    0.001 <frozen importlib._bootstrap>:659(_load_unlocked)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:736(find_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:811(find_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:87(acquire)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:874(__enter__)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:878(__exit__)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:901(_find_spec)
      2/1    0.000    0.000    0.001    0.001 <frozen importlib._bootstrap>:967(_find_and_load_unlocked)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1006(__init__)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1031(get_filename)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1036(get_data)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1077(path_stats)
       42    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:121(_path_join)
       42    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:123(<listcomp>)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:127(_path_split)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:129(<genexpr>)
       10    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1337(_path_importer_cache)
       12    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:135(_path_stat)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1374(_get_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1406(find_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:145(_path_is_mode_type)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1500(_get_spec)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:1505(find_spec)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:154(_path_isfile)
        4    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:361(cache_from_source)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:491(_get_cached)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:523(_check_name_wrapper)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:560(_classify_pyc)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:593(_validate_timestamp_pyc)
        8    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:64(_relax_case)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:645(_compile_bytecode)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:696(spec_from_file_location)
        6    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:79(_unpack_uint32)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:841(create_module)
      2/1    0.000    0.000    0.001    0.001 <frozen importlib._bootstrap_external>:844(exec_module)
        2    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap_external>:916(get_code)
        8    0.000    0.000    0.000    0.000 <string>:1(<lambda>)
        1    0.070    0.070    5.656    5.656 <string>:1(<module>)
        1    0.000    0.000    0.000    0.000 <string>:2(__init__)
       38    0.000    0.000    0.000    0.000 _VF.py:25(__getattr__)
      204    0.000    0.000    0.000    0.000 __future__.py:18(get_overwrite_module_params_on_conversion)
        1    0.000    0.000    0.001    0.001 __init__.py:103(load)
        2    0.000    0.000    0.000    0.000 __init__.py:1043(__init__)
       12    0.000    0.000    0.000    0.000 __init__.py:1060(__setitem__)
        4    0.000    0.000    0.000    0.000 __init__.py:1276(disable)
       19    0.000    0.000    0.000    0.000 __init__.py:1424(debug)
        9    0.000    0.000    0.000    0.000 __init__.py:1436(info)
        1    0.000    0.000    0.001    0.001 __init__.py:154(safe_load)
        4    0.000    0.000    0.000    0.000 __init__.py:1675(getEffectiveLevel)
       28    0.000    0.000    0.000    0.000 __init__.py:1689(isEnabledFor)
        2    0.000    0.000    0.000    0.000 __init__.py:183(dumps)
        4    0.000    0.000    0.000    0.000 __init__.py:218(_acquireLock)
        4    0.000    0.000    0.000    0.000 __init__.py:227(_releaseLock)
        1    0.000    0.000    0.000    0.000 __init__.py:244(detect_encoding)
        6    0.000    0.000    0.000    0.000 __init__.py:271(is_tensor)
        3    0.000    0.000    0.000    0.000 __init__.py:274(load)
        7    0.000    0.000    0.000    0.000 __init__.py:299(loads)
       26    0.000    0.000    0.000    0.000 __init__.py:31(__get__)
        1    0.000    0.000    0.000    0.000 __init__.py:43(normalize_encoding)
        1    0.000    0.000    0.000    0.000 __init__.py:46(is_available)
        1    0.000    0.000    0.000    0.000 __init__.py:70(search_function)
        2    0.000    0.000    0.000    0.000 _bootlocale.py:33(getpreferredencoding)
        8    0.000    0.000    0.000    0.000 _collections.py:141(__init__)
       96    0.000    0.000    0.000    0.000 _collections.py:156(__getitem__)
       72    0.000    0.000    0.000    0.000 _collections.py:187(__iter__)
       64    0.000    0.000    0.000    0.000 _collections.py:215(add)
        8    0.000    0.000    0.000    0.000 _collections.py:231(extend)
       16    0.000    0.000    0.000    0.000 _collections.py:47(__init__)
        8    0.000    0.000    0.000    0.000 _collections.py:54(__getitem__)
        8    0.000    0.000    0.000    0.000 _collections.py:61(__setitem__)
       16    0.000    0.000    0.010    0.001 _collections.py:92(clear)
       59    0.000    0.000    0.000    0.000 _collections_abc.py:409(__subclasshook__)
        1    0.000    0.000    0.000    0.000 _collections_abc.py:504(__subclasshook__)
      126    0.000    0.000    0.000    0.000 _collections_abc.py:759(get)
       48    0.000    0.000    0.000    0.000 _collections_abc.py:766(__contains__)
       64    0.000    0.000    0.000    0.000 _collections_abc.py:778(items)
        2    0.000    0.000    0.000    0.000 _collections_abc.py:78(_check_methods)
       64    0.000    0.000    0.000    0.000 _collections_abc.py:801(__init__)
       16    0.000    0.000    0.000    0.000 _collections_abc.py:804(__len__)
     1216    0.001    0.000    0.003    0.000 _collections_abc.py:848(__iter__)
       74    0.000    0.000    0.001    0.000 _collections_abc.py:932(update)
        1    0.000    0.000    0.000    0.000 _collections_abc.py:98(__subclasshook__)
       40    0.000    0.000    0.000    0.000 _internal_utils.py:14(to_native_string)
        8    0.000    0.000    0.000    0.000 _internal_utils.py:30(unicode_is_ascii)
      612    0.000    0.000    0.000    0.000 _jit_internal.py:881(is_scripting)
      112    0.000    0.000    0.000    0.000 _policybase.py:281(_sanitize_header)
       64    0.000    0.000    0.000    0.000 _policybase.py:293(header_source_parse)
      112    0.000    0.000    0.000    0.000 _policybase.py:311(header_fetch_parse)
        1    0.000    0.000    0.000    0.000 _tensor.py:541(__rsub__)
        2    0.000    0.000    0.000    0.000 _tensor.py:615(__hash__)
      204    0.000    0.000    0.000    0.000 _tensor.py:967(grad)
      610    0.001    0.000    0.008    0.000 _utils.py:130(_rebuild_tensor)
      610    0.001    0.000    0.009    0.000 _utils.py:136(_rebuild_tensor_v2)
        1    0.000    0.000    0.000    0.000 _utils.py:158(_validate_loaded_sparse_tensors)
        2    0.000    0.000    0.000    0.000 _virtualenv.py:54(find_spec)
      255    0.000    0.000    0.001    0.000 abc.py:117(__instancecheck__)
    87/34    0.000    0.000    0.000    0.000 abc.py:121(__subclasscheck__)
       12    0.000    0.000    0.001    0.000 activation.py:1246(__init__)
       12    0.000    0.000    0.001    0.000 activation.py:1255(forward)
       16    0.000    0.000    0.000    0.000 adapters.py:113(__init__)
       16    0.000    0.000    0.000    0.000 adapters.py:146(init_poolmanager)
        8    0.000    0.000    0.000    0.000 adapters.py:203(cert_verify)
        8    0.000    0.000    0.001    0.000 adapters.py:255(build_response)
        8    0.000    0.000    0.002    0.000 adapters.py:292(get_connection)
       16    0.000    0.000    0.010    0.001 adapters.py:319(close)
        8    0.000    0.000    0.000    0.000 adapters.py:329(request_url)
        8    0.000    0.000    0.000    0.000 adapters.py:358(add_headers)
        8    0.000    0.000    2.641    0.330 adapters.py:394(send)
       16    0.000    0.000    0.000    0.000 adapters.py:58(__init__)
        8    0.000    0.000    2.703    0.338 api.py:16(request)
        8    0.000    0.000    2.703    0.338 api.py:92(head)
        1    0.000    0.000    0.000    0.000 argparse.py:1079(__init__)
        2    0.000    0.000    0.000    0.000 argparse.py:1288(__init__)
        4    0.000    0.000    0.000    0.000 argparse.py:1292(__eq__)
        3    0.000    0.000    0.000    0.000 argparse.py:1303(__init__)
       37    0.000    0.000    0.000    0.000 argparse.py:1356(register)
        8    0.000    0.000    0.000    0.000 argparse.py:1360(_registry_get)
        3    0.000    0.000    0.000    0.000 argparse.py:1385(add_argument)
        2    0.000    0.000    0.000    0.000 argparse.py:1436(add_argument_group)
        3    0.000    0.000    0.000    0.000 argparse.py:1446(_add_action)
        3    0.000    0.000    0.000    0.000 argparse.py:1526(_get_optional_kwargs)
        3    0.000    0.000    0.000    0.000 argparse.py:1560(_pop_action_class)
        3    0.000    0.000    0.000    0.000 argparse.py:1564(_get_handler)
        3    0.000    0.000    0.000    0.000 argparse.py:1573(_check_conflict)
        3    0.000    0.000    0.000    0.000 argparse.py:161(__init__)
        2    0.000    0.000    0.000    0.000 argparse.py:1613(__init__)
        3    0.000    0.000    0.000    0.000 argparse.py:1635(_add_action)
        1    0.000    0.000    0.001    0.001 argparse.py:1686(__init__)
        3    0.000    0.000    0.000    0.000 argparse.py:1797(_add_action)
        1    0.000    0.000    0.000    0.000 argparse.py:1809(_get_positional_actions)
        1    0.000    0.000    0.000    0.000 argparse.py:1810(<listcomp>)
        1    0.000    0.000    0.000    0.000 argparse.py:1817(parse_args)
        1    0.000    0.000    0.000    0.000 argparse.py:1824(parse_known_args)
        1    0.000    0.000    0.000    0.000 argparse.py:1863(_parse_known_args)
        1    0.000    0.000    0.000    0.000 argparse.py:2008(consume_positionals)
        3    0.000    0.000    0.000    0.000 argparse.py:203(__init__)
        1    0.000    0.000    0.000    0.000 argparse.py:2160(_match_arguments_partial)
        2    0.000    0.000    0.000    0.000 argparse.py:2468(_get_value)
        3    0.000    0.000    0.000    0.000 argparse.py:2534(_get_formatter)
        3    0.000    0.000    0.000    0.000 argparse.py:571(_metavar_formatter)
        3    0.000    0.000    0.000    0.000 argparse.py:580(format)
        3    0.000    0.000    0.000    0.000 argparse.py:587(_format_args)
        1    0.000    0.000    0.000    0.000 argparse.py:609(<listcomp>)
        3    0.000    0.000    0.000    0.000 argparse.py:814(__init__)
        2    0.000    0.000    0.000    0.000 argparse.py:899(__init__)
        1    0.000    0.000    0.000    0.000 auto_factory.py:336(_get_model_class)
        1    0.000    0.000    1.818    1.818 auto_factory.py:367(from_config)
        1    0.000    0.000    0.000    0.000 builders.py:16(<listcomp>)
        1    0.000    0.000    0.001    0.001 builders.py:46(build_vocab2subwords)
        1    0.000    0.000    0.004    0.004 builders.py:9(build_X)
        8    0.000    0.000    0.000    0.000 client.py:1003(_send_output)
        8    0.000    0.000    0.000    0.000 client.py:1057(putrequest)
        8    0.000    0.000    0.000    0.000 client.py:1184(_encode_request)
        8    0.000    0.000    0.000    0.000 client.py:1188(_validate_method)
        8    0.000    0.000    0.000    0.000 client.py:1197(_validate_path)
        8    0.000    0.000    0.000    0.000 client.py:1205(_validate_host)
       40    0.000    0.000    0.000    0.000 client.py:1213(putheader)
        8    0.000    0.000    0.000    0.000 client.py:1241(endheaders)
        8    0.000    0.000    0.001    0.000 client.py:1254(request)
        8    0.000    0.000    0.001    0.000 client.py:1259(_send_request)
       40    0.000    0.000    0.000    0.000 client.py:1261(<genexpr>)
        8    0.000    0.000    0.682    0.085 client.py:1305(getresponse)
        8    0.000    0.000    0.000    0.000 client.py:204(_read_headers)
        8    0.000    0.000    0.002    0.000 client.py:222(parse_headers)
        8    0.000    0.000    0.000    0.000 client.py:246(__init__)
        8    0.000    0.000    0.680    0.085 client.py:276(_read_status)
        8    0.000    0.000    0.682    0.085 client.py:309(begin)
        8    0.000    0.000    0.000    0.000 client.py:381(_check_close)
        8    0.000    0.000    0.000    0.000 client.py:410(_close_conn)
       16    0.000    0.000    0.000    0.000 client.py:415(close)
        8    0.000    0.000    0.000    0.000 client.py:427(flush)
       32    0.000    0.000    0.000    0.000 client.py:438(isclosed)
        8    0.000    0.000    0.000    0.000 client.py:448(read)
        8    0.000    0.000    0.000    0.000 client.py:788(_get_content_length)
        8    0.000    0.000    0.000    0.000 client.py:820(__init__)
        8    0.000    0.000    0.000    0.000 client.py:866(_get_hostport)
        8    0.000    0.000    0.001    0.000 client.py:930(close)
        8    0.000    0.000    0.000    0.000 client.py:944(send)
       48    0.000    0.000    0.000    0.000 client.py:982(_output)
        1    0.000    0.000    0.662    0.662 cloud_io.py:25(load)
        1    0.000    0.000    0.000    0.000 cloud_io.py:36(get_filesystem)
        8    0.000    0.000    0.000    0.000 codecs.py:260(__init__)
        8    0.000    0.000    0.000    0.000 codecs.py:309(__init__)
       41    0.000    0.000    0.001    0.000 codecs.py:319(decode)
        3    0.000    0.000    0.000    0.000 codecs.py:331(getstate)
        1    0.000    0.000    0.000    0.000 codecs.py:94(__new__)
        1    0.000    0.000    0.000    0.000 composer.py:117(compose_mapping_node)
        1    0.000    0.000    0.000    0.000 composer.py:13(__init__)
        1    0.000    0.000    0.000    0.000 composer.py:29(get_single_node)
        1    0.000    0.000    0.000    0.000 composer.py:50(compose_document)
      5/1    0.000    0.000    0.000    0.000 composer.py:63(compose_node)
        4    0.000    0.000    0.000    0.000 composer.py:88(compose_scalar_node)
        1    0.000    0.000    0.000    0.000 config.py:66(apply_config)
        2    0.000    0.000    0.706    0.353 configuration_auto.py:368(from_pretrained)
        4    0.000    0.000    0.000    0.000 configuration_bert.py:120(__init__)
        6    0.000    0.000    0.000    0.000 configuration_utils.py:204(__init__)
        2    0.000    0.000    0.000    0.000 configuration_utils.py:301(name_or_path)
        1    0.000    0.000    0.000    0.000 configuration_utils.py:309(use_return_dict)
        6    0.000    0.000    0.000    0.000 configuration_utils.py:324(num_labels)
        6    0.000    0.000    0.000    0.000 configuration_utils.py:327(<dictcomp>)
        2    0.000    0.000    0.705    0.352 configuration_utils.py:449(get_config_dict)
        2    0.000    0.000    0.002    0.001 configuration_utils.py:534(from_dict)
        2    0.000    0.000    0.000    0.000 configuration_utils.py:555(<genexpr>)
        2    0.000    0.000    0.000    0.000 configuration_utils.py:588(_dict_from_json_file)
        2    0.000    0.000    0.001    0.001 configuration_utils.py:597(__repr__)
        2    0.000    0.000    0.001    0.001 configuration_utils.py:600(to_diff_dict)
        6    0.000    0.000    0.001    0.000 configuration_utils.py:630(to_dict)
        2    0.000    0.000    0.001    0.001 configuration_utils.py:646(to_json_string)
        8    0.000    0.000    0.000    0.000 connection.py:101(_set_socket_options)
        8    0.000    0.000    0.000    0.000 connection.py:109(allowed_gai_family)
        8    0.000    0.000    0.000    0.000 connection.py:110(__init__)
       24    0.000    0.000    0.000    0.000 connection.py:127(host)
        8    0.000    0.000    0.000    0.000 connection.py:146(host)
        8    0.000    0.000    0.056    0.007 connection.py:156(_new_conn)
        8    0.000    0.000    0.000    0.000 connection.py:187(_is_using_tunnel)
        8    0.000    0.000    0.000    0.000 connection.py:203(putrequest)
       40    0.000    0.000    0.000    0.000 connection.py:216(putheader)
       80    0.000    0.000    0.000    0.000 connection.py:218(<genexpr>)
        8    0.000    0.000    0.002    0.000 connection.py:226(request)
       16    0.000    0.000    0.000    0.000 connection.py:232(<genexpr>)
        8    0.000    0.000    0.000    0.000 connection.py:292(__init__)
        8    0.000    0.000    0.000    0.000 connection.py:318(set_cert)
        8    0.000    0.000    1.950    0.244 connection.py:351(connect)
        8    0.000    0.000    0.056    0.007 connection.py:38(create_connection)
        8    0.000    0.000    0.000    0.000 connection.py:510(_match_hostname)
        8    0.000    0.000    1.950    0.244 connectionpool.py:1002(_validate_conn)
        8    0.000    0.000    0.000    0.000 connectionpool.py:1052(_normalize_host)
        8    0.000    0.000    0.001    0.000 connectionpool.py:168(__init__)
        8    0.000    0.000    0.000    0.000 connectionpool.py:243(_get_conn)
        8    0.000    0.000    0.000    0.000 connectionpool.py:282(_put_conn)
        8    0.000    0.000    0.000    0.000 connectionpool.py:310(_validate_conn)
       16    0.000    0.000    0.000    0.000 connectionpool.py:320(_get_timeout)
        8    0.000    0.000    2.635    0.329 connectionpool.py:357(_make_request)
        8    0.008    0.001    0.010    0.001 connectionpool.py:479(close)
        8    0.000    0.000    2.637    0.330 connectionpool.py:518(urlopen)
        8    0.000    0.000    0.000    0.000 connectionpool.py:74(__init__)
        8    0.000    0.000    0.001    0.000 connectionpool.py:882(__init__)
        8    0.000    0.000    0.000    0.000 connectionpool.py:931(_prepare_conn)
        8    0.000    0.000    0.000    0.000 connectionpool.py:966(_new_conn)
        4    0.000    0.000    0.000    0.000 constructor.py:117(construct_scalar)
        1    0.000    0.000    0.000    0.000 constructor.py:132(construct_mapping)
        4    0.000    0.000    0.000    0.000 constructor.py:173(construct_scalar)
        1    0.000    0.000    0.000    0.000 constructor.py:180(flatten_mapping)
        1    0.000    0.000    0.000    0.000 constructor.py:215(construct_mapping)
        1    0.000    0.000    0.000    0.000 constructor.py:237(construct_yaml_int)
        1    0.000    0.000    0.000    0.000 constructor.py:24(__init__)
        1    0.000    0.000    0.000    0.000 constructor.py:270(construct_yaml_float)
        2    0.000    0.000    0.000    0.000 constructor.py:402(construct_yaml_str)
        2    0.000    0.000    0.000    0.000 constructor.py:410(construct_yaml_map)
        1    0.000    0.000    0.001    0.001 constructor.py:47(get_single_data)
        1    0.000    0.000    0.000    0.000 constructor.py:54(construct_document)
        5    0.000    0.000    0.000    0.000 constructor.py:67(construct_object)
        1    0.000    0.000    0.000    0.000 container.py:167(__init__)
        1    0.000    0.000    0.000    0.000 container.py:202(__len__)
        1    0.000    0.000    0.000    0.000 container.py:206(__iter__)
        1    0.000    0.000    0.000    0.000 container.py:210(__iadd__)
        1    0.000    0.000    0.000    0.000 container.py:239(extend)
       16    0.000    0.000    0.000    0.000 contextlib.py:112(__enter__)
       16    0.000    0.000    0.000    0.000 contextlib.py:121(__exit__)
       16    0.000    0.000    0.000    0.000 contextlib.py:242(helper)
       16    0.000    0.000    0.000    0.000 contextlib.py:86(__init__)
        1    0.000    0.000    0.000    0.000 convert_slow_tokenizer.py:65(__init__)
        1    0.012    0.012    0.012    0.012 convert_slow_tokenizer.py:73(converted)
        1    0.000    0.000    0.012    0.012 convert_slow_tokenizer.py:805(convert_slow_tokenizer)
       48    0.000    0.000    0.000    0.000 cookiejar.py:1219(vals_sorted_by_key)
       48    0.000    0.000    0.000    0.000 cookiejar.py:1223(deepvalues)
       32    0.000    0.000    0.000    0.000 cookiejar.py:1258(__init__)
        8    0.000    0.000    0.000    0.000 cookiejar.py:1287(_cookies_for_request)
        8    0.000    0.000    0.000    0.000 cookiejar.py:1294(_cookie_attrs)
        8    0.000    0.000    0.000    0.000 cookiejar.py:1353(add_cookie_header)
       16    0.000    0.000    0.000    0.000 cookiejar.py:1596(make_cookies)
       16    0.000    0.000    0.000    0.000 cookiejar.py:1677(extract_cookies)
        8    0.000    0.000    0.000    0.000 cookiejar.py:1731(clear_expired_cookies)
       48    0.000    0.000    0.000    0.000 cookiejar.py:1750(__iter__)
       24    0.000    0.000    0.000    0.000 cookiejar.py:44(_debug)
       32    0.000    0.000    0.000    0.000 cookiejar.py:877(__init__)
       16    0.000    0.000    0.000    0.000 cookies.py:104(__init__)
       32    0.000    0.000    0.000    0.000 cookies.py:111(info)
       16    0.000    0.000    0.001    0.000 cookies.py:118(extract_cookies_to_jar)
        8    0.000    0.000    0.000    0.000 cookies.py:135(get_cookie_header)
       16    0.000    0.000    0.000    0.000 cookies.py:348(update)
       24    0.000    0.000    0.000    0.000 cookies.py:37(__init__)
       24    0.000    0.000    0.000    0.000 cookies.py:508(cookiejar_from_dict)
       24    0.000    0.000    0.000    0.000 cookies.py:521(<listcomp>)
       16    0.000    0.000    0.000    0.000 cookies.py:529(merge_cookies)
        8    0.000    0.000    0.000    0.000 cookies.py:81(get_new_headers)
   857/12    0.001    0.000    0.001    0.000 copy.py:128(deepcopy)
      825    0.000    0.000    0.000    0.000 copy.py:182(_deepcopy_atomic)
        2    0.000    0.000    0.000    0.000 copy.py:200(_deepcopy_list)
    29/11    0.000    0.000    0.001    0.000 copy.py:226(_deepcopy_dict)
       32    0.000    0.000    0.000    0.000 copy.py:242(_keep_alive)
        1    0.000    0.000    0.000    0.000 copy.py:258(_reconstruct)
        2    0.000    0.000    0.000    0.000 copy.py:263(<genexpr>)
        1    0.000    0.000    0.000    0.000 copyreg.py:103(_slotnames)
        1    0.000    0.000    0.000    0.000 copyreg.py:94(__newobj__)
        1    0.000    0.000    0.000    0.000 core.py:471(get_compression)
        2    0.000    0.000    0.000    0.000 dataclasses.py:1024(fields)
       13    0.000    0.000    0.000    0.000 dataclasses.py:1039(<genexpr>)
        7    0.000    0.000    0.000    0.000 decoder.py:332(decode)
        7    0.000    0.000    0.000    0.000 decoder.py:343(raw_decode)
        1    0.000    0.000    0.000    0.000 deepspeed.py:269(is_deepspeed_zero3_enabled)
        1    0.000    0.000    0.001    0.001 device_dtype_mixin.py:176(__update_properties)
      221    0.000    0.000    0.000    0.000 device_dtype_mixin.py:178(apply_fn)
        1    0.000    0.000    0.000    0.000 device_dtype_mixin.py:24(__init__)
        1    0.000    0.000    0.000    0.000 device_dtype_mixin.py:38(device)
        1    0.000    0.000    0.004    0.004 device_dtype_mixin.py:48(to)
        1    0.000    0.000    0.000    0.000 dircache.py:27(__init__)
       37    0.000    0.000    0.001    0.000 dropout.py:12(__init__)
       37    0.000    0.000    0.000    0.000 dropout.py:57(forward)
        2    0.000    0.000    0.000    0.000 encoder.py:104(__init__)
        2    0.000    0.000    0.000    0.000 encoder.py:182(encode)
        2    0.000    0.000    0.000    0.000 encoder.py:204(iterencode)
        8    0.000    0.000    0.000    0.000 encoder.py:223(floatstr)
        2    0.000    0.000    0.000    0.000 encoder.py:259(_make_iterencode)
        8    0.000    0.000    0.000    0.000 encoder.py:277(_iterencode_list)
      212    0.000    0.000    0.000    0.000 encoder.py:333(_iterencode_dict)
      212    0.000    0.000    0.000    0.000 encoder.py:413(_iterencode)
        4    0.000    0.000    0.000    0.000 enum.py:1017(_decompose)
       16    0.000    0.000    0.000    0.000 enum.py:1040(<lambda>)
      204    0.000    0.000    0.000    0.000 enum.py:358(__call__)
        4    0.000    0.000    0.000    0.000 enum.py:434(__iter__)
       52    0.000    0.000    0.000    0.000 enum.py:438(<genexpr>)
      204    0.000    0.000    0.000    0.000 enum.py:670(__new__)
       58    0.000    0.000    0.000    0.000 enum.py:792(value)
        4    0.000    0.000    0.000    0.000 enum.py:928(_missing_)
        4    0.000    0.000    0.000    0.000 enum.py:938(_create_pseudo_member_)
       40    0.000    0.000    0.000    0.000 enum.py:971(__or__)
        8    0.000    0.000    0.000    0.000 enum.py:977(__and__)
       17    0.000    0.000    0.000    0.000 error.py:6(__init__)
        1    0.000    0.000    0.000    0.000 events.py:22(__init__)
        1    0.000    0.000    0.000    0.000 events.py:37(__init__)
        1    0.000    0.000    0.000    0.000 events.py:46(__init__)
        2    0.000    0.000    0.000    0.000 events.py:5(__init__)
        1    0.000    0.000    0.000    0.000 events.py:55(__init__)
        4    0.000    0.000    0.000    0.000 events.py:65(__init__)
        3    0.000    0.000    0.000    0.000 exceptions.py:17(__init__)
        8    0.000    0.000    0.000    0.000 feedparser.py:101(push)
       16    0.000    0.000    0.000    0.000 feedparser.py:122(pushlines)
       16    0.000    0.000    0.000    0.000 feedparser.py:125(__iter__)
       88    0.000    0.000    0.000    0.000 feedparser.py:128(__next__)
        8    0.000    0.000    0.000    0.000 feedparser.py:139(__init__)
        8    0.000    0.000    0.001    0.000 feedparser.py:173(feed)
       16    0.000    0.000    0.001    0.000 feedparser.py:178(_call_parse)
        8    0.000    0.000    0.000    0.000 feedparser.py:184(close)
        8    0.000    0.000    0.000    0.000 feedparser.py:197(_new_message)
        8    0.000    0.000    0.000    0.000 feedparser.py:210(_pop_message)
       16    0.000    0.000    0.001    0.000 feedparser.py:218(_parsegen)
        8    0.000    0.000    0.000    0.000 feedparser.py:471(_parse_headers)
        8    0.000    0.000    0.000    0.000 feedparser.py:53(__init__)
        8    0.000    0.000    0.000    0.000 feedparser.py:70(close)
       88    0.000    0.000    0.000    0.000 feedparser.py:78(readline)
       11    0.000    0.000    0.000    0.000 file_utils.py:1162(is_remote_url)
        8    0.000    0.000    0.000    0.000 file_utils.py:1167(hf_bucket_url)
        5    0.000    0.000    0.000    0.000 file_utils.py:1202(url_to_filename)
        8    0.000    0.000    2.704    0.338 file_utils.py:1281(cached_path)
        8    0.000    0.000    0.000    0.000 file_utils.py:1409(http_user_agent)
       26    0.000    0.000    0.000    0.000 file_utils.py:1426(<genexpr>)
        8    0.000    0.000    2.704    0.338 file_utils.py:1458(get_from_cache)
        2    0.000    0.000    0.000    0.000 file_utils.py:1658(is_torch_fx_proxy)
        2    0.000    0.000    0.000    0.000 file_utils.py:1666(is_tensor)
        2    0.000    0.000    0.000    0.000 file_utils.py:1751(__post_init__)
       11    0.000    0.000    0.000    0.000 file_utils.py:1756(<genexpr>)
       11    0.000    0.000    0.000    0.000 file_utils.py:1761(<genexpr>)
      4/2    0.000    0.000    0.000    0.000 file_utils.py:1803(__getitem__)
        2    0.000    0.000    0.000    0.000 file_utils.py:1805(<dictcomp>)
       11    0.000    0.000    0.000    0.000 file_utils.py:1810(__setattr__)
        2    0.000    0.000    0.000    0.000 file_utils.py:1816(__setitem__)
        2    0.000    0.000    0.000    0.000 file_utils.py:1822(to_tuple)
        4    0.000    0.000    0.000    0.000 file_utils.py:1826(<genexpr>)
       12    0.000    0.000    0.000    0.000 file_utils.py:261(is_offline_mode)
       12    0.000    0.000    0.000    0.000 file_utils.py:265(is_torch_available)
        2    0.000    0.000    0.000    0.000 file_utils.py:287(is_torch_fx_available)
        8    0.000    0.000    0.000    0.000 file_utils.py:291(is_tf_available)
        8    0.000    0.000    0.000    0.000 file_utils.py:422(is_training_run_on_sagemaker)
       16    0.000    0.000    0.000    0.000 fnmatch.py:25(fnmatch)
        2    0.000    0.000    0.000    0.000 fnmatch.py:44(_compile_pattern)
       16    0.000    0.000    0.000    0.000 fnmatch.py:70(fnmatchcase)
        2    0.000    0.000    0.000    0.000 fnmatch.py:80(translate)
       37    0.000    0.000    0.000    0.000 functional.py:1151(dropout)
       13    0.000    0.000    0.002    0.000 functional.py:1543(gelu)
       13    0.000    0.000    0.001    0.000 functional.py:1649(softmax)
       74    0.000    0.000    0.086    0.001 functional.py:1831(linear)
        3    0.000    0.000    0.000    0.000 functional.py:1949(embedding)
       26    0.000    0.000    0.002    0.000 functional.py:2331(layer_norm)
        1    0.000    0.000    0.000    0.000 functional.py:4089(_pad)
       45    0.000    0.000    0.001    0.000 genericpath.py:16(exists)
        4    0.000    0.000    0.000    0.000 genericpath.py:27(isfile)
       24    0.000    0.000    0.000    0.000 genericpath.py:39(isdir)
        3    0.000    0.000    0.000    0.000 gettext.py:211(_expand_lang)
        3    0.000    0.000    0.000    0.000 gettext.py:542(find)
        3    0.000    0.000    0.000    0.000 gettext.py:583(translation)
        3    0.000    0.000    0.000    0.000 gettext.py:664(dgettext)
        3    0.000    0.000    0.000    0.000 gettext.py:741(gettext)
      612    0.001    0.000    0.001    0.000 grad_mode.py:119(__init__)
      612    0.001    0.000    0.001    0.000 grad_mode.py:124(__enter__)
      612    0.001    0.000    0.002    0.000 grad_mode.py:128(__exit__)
     1224    0.001    0.000    0.002    0.000 grad_mode.py:213(__init__)
       24    0.000    0.000    0.000    0.000 hooks.py:17(default_hooks)
       24    0.000    0.000    0.000    0.000 hooks.py:18(<dictcomp>)
        8    0.000    0.000    0.000    0.000 hooks.py:23(dispatch_hook)
       32    0.000    0.000    0.000    0.000 idna.py:147(encode)
        1    0.000    0.000    0.000    0.000 idna.py:300(getregentry)
        1    0.146    0.146    5.585    5.585 infer.py:15(main)
       73    0.000    0.000    0.002    0.000 init.py:12(_no_grad_uniform_)
       73    0.000    0.000    0.002    0.000 init.py:122(uniform_)
        3    0.000    0.000    0.137    0.046 init.py:138(normal_)
        3    0.000    0.000    0.137    0.046 init.py:17(_no_grad_normal_)
       26    0.000    0.000    0.000    0.000 init.py:189(ones_)
       26    0.000    0.000    0.000    0.000 init.py:202(zeros_)
      147    0.000    0.000    0.001    0.000 init.py:278(_calculate_fan_in_and_fan_out)
       74    0.000    0.000    0.000    0.000 init.py:350(_calculate_correct_fan)
       74    0.001    0.000    0.574    0.008 init.py:360(kaiming_uniform_)
       26    0.000    0.000    0.000    0.000 init.py:57(_no_grad_fill_)
       26    0.000    0.000    0.000    0.000 init.py:62(_no_grad_zero_)
       74    0.000    0.000    0.000    0.000 init.py:67(calculate_gain)
        1    0.000    0.000    0.000    0.000 inspect.py:1067(getargs)
        1    0.000    0.000    0.000    0.000 inspect.py:1129(getfullargspec)
        1    0.000    0.000    0.000    0.000 inspect.py:1223(getargvalues)
        1    0.000    0.000    0.000    0.000 inspect.py:1546(currentframe)
       34    0.000    0.000    0.000    0.000 inspect.py:159(isfunction)
       12    0.000    0.000    0.000    0.000 inspect.py:1838(_signature_bound_method)
       17    0.000    0.000    0.001    0.000 inspect.py:2150(_signature_from_function)
    29/17    0.000    0.000    0.001    0.000 inspect.py:2244(_signature_from_callable)
       49    0.000    0.000    0.000    0.000 inspect.py:2515(__init__)
       68    0.000    0.000    0.000    0.000 inspect.py:2565(name)
       17    0.000    0.000    0.000    0.000 inspect.py:2569(default)
        9    0.000    0.000    0.000    0.000 inspect.py:2573(annotation)
       61    0.000    0.000    0.000    0.000 inspect.py:2577(kind)
        1    0.000    0.000    0.000    0.000 inspect.py:261(iscode)
       29    0.000    0.000    0.000    0.000 inspect.py:2798(__init__)
       66    0.000    0.000    0.000    0.000 inspect.py:2847(<genexpr>)
       16    0.000    0.000    0.001    0.000 inspect.py:2876(from_callable)
       29    0.000    0.000    0.000    0.000 inspect.py:2882(parameters)
        1    0.000    0.000    0.000    0.000 inspect.py:2886(return_annotation)
       12    0.000    0.000    0.000    0.000 inspect.py:2890(replace)
       16    0.000    0.000    0.001    0.000 inspect.py:3128(signature)
       16    0.000    0.000    0.000    0.000 inspect.py:494(unwrap)
       16    0.000    0.000    0.000    0.000 inspect.py:514(_is_wrapper)
        1    0.000    0.000    0.000    0.000 lightning.py:1616(save_hyperparameters)
        1    0.000    0.000    0.000    0.000 lightning.py:1687(_set_hparams)
        4    0.000    0.000    0.000    0.000 lightning.py:1831(hparams)
        1    0.000    0.000    0.000    0.000 lightning.py:79(__init__)
       74    0.001    0.000    0.583    0.008 linear.py:75(__init__)
       74    0.001    0.000    0.577    0.008 linear.py:88(reset_parameters)
       74    0.000    0.000    0.086    0.001 linear.py:95(forward)
        1    0.000    0.000    0.000    0.000 loader.py:33(__init__)
        1    0.000    0.000    0.000    0.000 loaders.py:31(load_conf)
        1    0.000    0.000    0.000    0.000 local.py:140(_open)
        2    0.000    0.000    0.000    0.000 local.py:171(_strip_protocol)
        2    0.000    0.000    0.000    0.000 local.py:185(make_path_posix)
        1    0.000    0.000    0.000    0.000 local.py:225(__init__)
        1    0.000    0.000    0.000    0.000 local.py:237(_open)
        1    0.000    0.000    0.000    0.000 local.py:30(__init__)
        1    0.000    0.000    0.000    0.000 local.py:319(closed)
        1    0.000    0.000    0.000    0.000 local.py:333(__enter__)
        1    0.000    0.000    0.000    0.000 local.py:337(__exit__)
        3    0.000    0.000    0.000    0.000 locale.py:386(normalize)
       16    0.000    0.000    0.000    0.000 message.py:120(__init__)
       16    0.000    0.000    0.000    0.000 message.py:181(is_multipart)
        8    0.000    0.000    0.000    0.000 message.py:213(get_payload)
       32    0.000    0.000    0.000    0.000 message.py:29(_splitparam)
        8    0.000    0.000    0.000    0.000 message.py:303(set_payload)
        8    0.000    0.000    0.000    0.000 message.py:451(items)
        8    0.000    0.000    0.000    0.000 message.py:459(<listcomp>)
       64    0.000    0.000    0.000    0.000 message.py:462(get)
       64    0.000    0.000    0.000    0.000 message.py:479(set_raw)
       32    0.000    0.000    0.000    0.000 message.py:497(get_all)
       32    0.000    0.000    0.000    0.000 message.py:564(get_content_type)
       24    0.000    0.000    0.000    0.000 message.py:588(get_content_maintype)
        1    0.000    0.000    1.818    1.818 modeling_bert.py:1278(__init__)
        1    0.000    0.000    0.000    0.000 modeling_bert.py:1292(get_output_embeddings)
        1    0.000    0.000    0.138    0.138 modeling_bert.py:170(__init__)
        1    0.000    0.000    0.000    0.000 modeling_bert.py:190(forward)
       12    0.000    0.000    0.118    0.010 modeling_bert.py:228(__init__)
       36    0.000    0.000    0.001    0.000 modeling_bert.py:252(transpose_for_scores)
       12    0.002    0.000    0.026    0.002 modeling_bert.py:257(forward)
       12    0.000    0.000    0.041    0.003 modeling_bert.py:353(__init__)
       12    0.000    0.000    0.008    0.001 modeling_bert.py:359(forward)
       12    0.000    0.000    0.160    0.013 modeling_bert.py:367(__init__)
       12    0.000    0.000    0.034    0.003 modeling_bert.py:391(forward)
       12    0.000    0.000    0.156    0.013 modeling_bert.py:416(__init__)
       12    0.000    0.000    0.026    0.002 modeling_bert.py:424(forward)
       12    0.000    0.000    0.155    0.013 modeling_bert.py:431(__init__)
       12    0.004    0.000    0.027    0.002 modeling_bert.py:437(forward)
       12    0.000    0.000    0.471    0.039 modeling_bert.py:445(__init__)
       12    0.000    0.000    0.089    0.007 modeling_bert.py:458(forward)
       12    0.000    0.000    0.053    0.004 modeling_bert.py:521(feed_forward_chunk)
        1    0.000    0.000    0.471    0.471 modeling_bert.py:528(__init__)
        1    0.000    0.000    0.471    0.471 modeling_bert.py:531(<listcomp>)
        1    0.000    0.000    0.089    0.089 modeling_bert.py:533(forward)
        1    0.000    0.000    0.003    0.003 modeling_bert.py:640(__init__)
        1    0.000    0.000    0.001    0.001 modeling_bert.py:649(forward)
        1    0.000    0.000    0.121    0.121 modeling_bert.py:657(__init__)
        1    0.000    0.000    0.015    0.015 modeling_bert.py:670(forward)
        1    0.000    0.000    0.121    0.121 modeling_bert.py:677(__init__)
        1    0.000    0.000    0.015    0.015 modeling_bert.py:681(forward)
      433    0.003    0.000    1.081    0.002 modeling_bert.py:719(_init_weights)
        1    0.000    0.000    1.098    1.098 modeling_bert.py:856(__init__)
        1    0.000    0.000    0.000    0.000 modeling_bert.py:867(get_input_embeddings)
        1    0.000    0.000    0.090    0.090 modeling_bert.py:881(forward)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:127(get_parameter_dtype)
       12    0.000    0.000    0.054    0.005 modeling_utils.py:1935(apply_chunking_to_forward)
       24    0.000    0.000    0.000    0.000 modeling_utils.py:1973(<genexpr>)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:203(dtype)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:242(get_extended_attention_mask)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:302(get_head_mask)
        2    0.000    0.000    0.000    0.000 modeling_utils.py:455(__init__)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:474(get_input_embeddings)
        1    0.000    0.000    0.000    0.000 modeling_utils.py:500(get_output_embeddings)
        2    0.000    0.000    0.005    0.002 modeling_utils.py:515(tie_weights)
        1    0.000    0.000    0.005    0.005 modeling_utils.py:604(_tie_or_clone_weights)
        2    0.000    0.000    1.088    0.544 modeling_utils.py:792(init_weights)
        1    0.000    0.000    0.000    0.000 models.py:103(<listcomp>)
       10    0.000    0.000    0.000    0.000 models.py:108(<lambda>)
        8    0.000    0.000    0.000    0.000 models.py:175(register_hook)
        8    0.000    0.000    0.000    0.000 models.py:184(<genexpr>)
        1    0.000    0.000    0.001    0.001 models.py:22(__init__)
        8    0.000    0.000    0.000    0.000 models.py:226(__init__)
        8    0.000    0.000    0.000    0.000 models.py:293(__init__)
        8    0.000    0.000    0.002    0.000 models.py:310(prepare)
        1    0.000    0.000    0.105    0.105 models.py:33(forward)
        8    0.000    0.000    0.000    0.000 models.py:342(prepare_method)
        8    0.000    0.000    0.001    0.000 models.py:358(prepare_url)
        8    0.000    0.000    0.000    0.000 models.py:444(prepare_headers)
        8    0.000    0.000    0.000    0.000 models.py:455(prepare_body)
        1    0.000    0.000    0.106    0.106 models.py:46(S_word)
        8    0.000    0.000    0.000    0.000 models.py:524(prepare_content_length)
        8    0.000    0.000    0.000    0.000 models.py:537(prepare_auth)
        8    0.000    0.000    0.000    0.000 models.py:559(prepare_cookies)
        8    0.000    0.000    0.000    0.000 models.py:579(prepare_hooks)
        1    0.000    0.000    0.106    0.106 models.py:59(S_word_probs)
        8    0.000    0.000    0.000    0.000 models.py:599(__init__)
        8    0.000    0.000    0.000    0.000 models.py:61(path_url)
        8    0.000    0.000    0.000    0.000 models.py:710(is_redirect)
        8    0.000    0.000    0.000    0.000 models.py:732(iter_content)
        8    0.000    0.000    0.000    0.000 models.py:749(generate)
        8    0.000    0.000    0.001    0.000 models.py:818(content)
        8    0.000    0.000    0.000    0.000 models.py:82(_encode_params)
        1    0.000    0.000    0.000    0.000 models.py:91(__init__)
        8    0.000    0.000    0.000    0.000 models.py:920(raise_for_status)
        1    0.000    0.000    0.109    0.109 models.py:95(wisdomify)
        1    0.000    0.000    0.000    0.000 models.py:97(<listcomp>)
    229/3    0.001    0.000    0.105    0.035 module.py:1045(_call_impl)
     1548    0.001    0.000    0.002    0.000 module.py:1117(__getattr__)
     3695    0.006    0.000    0.014    0.000 module.py:1133(__setattr__)
      413    0.000    0.000    0.000    0.000 module.py:1134(remove_from)
      221    0.016    0.000    0.089    0.000 module.py:1276(_load_from_state_dict)
      221    0.000    0.000    0.000    0.000 module.py:1312(<dictcomp>)
      221    0.000    0.000    0.000    0.000 module.py:1314(<dictcomp>)
        1    0.000    0.000    0.090    0.090 module.py:1354(load_state_dict)
    221/1    0.001    0.000    0.090    0.090 module.py:1384(load)
        2    0.000    0.000    0.000    0.000 module.py:1410(_named_members)
        2    0.000    0.000    0.000    0.000 module.py:1423(parameters)
        2    0.000    0.000    0.000    0.000 module.py:1447(named_parameters)
        3    0.000    0.000    0.000    0.000 module.py:1468(<lambda>)
     2187    0.001    0.000    0.003    0.000 module.py:1521(children)
     2187    0.002    0.000    0.002    0.000 module.py:1530(named_children)
      9/4    0.000    0.000    0.000    0.000 module.py:1577(named_modules)
    221/1    0.000    0.000    0.001    0.001 module.py:1622(train)
        1    0.000    0.000    0.001    0.001 module.py:1644(eval)
      233    0.002    0.000    0.008    0.000 module.py:250(__init__)
        2    0.000    0.000    0.000    0.000 module.py:270(register_buffer)
      206    0.005    0.000    0.006    0.000 module.py:322(register_parameter)
       12    0.000    0.000    0.000    0.000 module.py:361(add_module)
    221/1    0.001    0.000    0.003    0.003 module.py:528(_apply)
      204    0.000    0.000    0.000    0.000 module.py:532(compute_should_use_set_data)
    654/3    0.001    0.000    1.085    0.362 module.py:577(apply)
        1    0.000    0.000    0.003    0.003 module.py:752(to)
      206    0.000    0.000    0.000    0.000 module.py:846(convert)
        1    0.000    0.000    0.001    0.001 netrc.py:1(<module>)
        1    0.000    0.000    0.000    0.000 netrc.py:10(NetrcParseError)
        1    0.000    0.000    0.000    0.000 netrc.py:22(netrc)
        4    0.000    0.000    0.000    0.000 nodes.py:27(__init__)
        1    0.000    0.000    0.000    0.000 nodes.py:36(__init__)
       26    0.000    0.000    0.003    0.000 normalization.py:148(__init__)
       26    0.000    0.000    0.001    0.000 normalization.py:167(reset_parameters)
       26    0.000    0.000    0.002    0.000 normalization.py:172(forward)
        8    0.000    0.000    0.000    0.000 os.py:200(makedirs)
     1154    0.001    0.000    0.002    0.000 os.py:674(__getitem__)
     1056    0.000    0.000    0.001    0.000 os.py:697(__iter__)
     1154    0.000    0.000    0.001    0.000 os.py:754(encode)
     2080    0.000    0.000    0.001    0.000 os.py:758(decode)
      205    0.000    0.000    0.000    0.000 parameter.py:129(is_lazy)
      203    0.000    0.000    0.001    0.000 parameter.py:23(__new__)
      222    0.000    0.000    0.000    0.000 parse.py:103(_noop)
        8    0.000    0.000    0.000    0.000 parse.py:1105(_splitport)
      222    0.000    0.000    0.000    0.000 parse.py:114(_coerce_args)
        8    0.000    0.000    0.000    0.000 parse.py:151(username)
       64    0.000    0.000    0.000    0.000 parse.py:159(hostname)
        8    0.000    0.000    0.000    0.000 parse.py:189(_userinfo)
       64    0.000    0.000    0.000    0.000 parse.py:201(_hostinfo)
        8    0.000    0.000    0.000    0.000 parse.py:336(geturl)
       91    0.000    0.000    0.001    0.000 parse.py:372(urlparse)
        6    0.000    0.000    0.000    0.000 parse.py:411(_splitnetloc)
        7    0.000    0.000    0.000    0.000 parse.py:419(_checknetloc)
       99    0.000    0.000    0.001    0.000 parse.py:437(urlsplit)
       16    0.000    0.000    0.000    0.000 parse.py:494(urlunparse)
       16    0.000    0.000    0.000    0.000 parse.py:505(urlunsplit)
        8    0.000    0.000    0.000    0.000 parse.py:644(unquote)
        8    0.000    0.000    0.000    0.000 parse.py:819(quote)
        8    0.000    0.000    0.000    0.000 parse.py:890(quote_from_bytes)
        8    0.000    0.000    0.000    0.000 parse.py:912(urlencode)
        5    0.000    0.000    0.000    0.000 parser.py:107(peek_event)
       10    0.000    0.000    0.000    0.000 parser.py:114(get_event)
        1    0.000    0.000    0.000    0.000 parser.py:127(parse_stream_start)
        1    0.000    0.000    0.000    0.000 parser.py:139(parse_implicit_document_start)
        1    0.000    0.000    0.000    0.000 parser.py:159(parse_document_start)
        8    0.000    0.000    0.000    0.000 parser.py:17(__init__)
        1    0.000    0.000    0.000    0.000 parser.py:190(parse_document_end)
        1    0.000    0.000    0.000    0.000 parser.py:264(parse_block_node)
        4    0.000    0.000    0.000    0.000 parser.py:270(parse_block_node_or_indentless_sequence)
        5    0.000    0.000    0.000    0.000 parser.py:273(parse_node)
        8    0.000    0.000    0.001    0.000 parser.py:41(parse)
        1    0.000    0.000    0.000    0.000 parser.py:422(parse_block_mapping_first_key)
        3    0.000    0.000    0.000    0.000 parser.py:427(parse_block_mapping_key)
        2    0.000    0.000    0.000    0.000 parser.py:446(parse_block_mapping_value)
        8    0.000    0.000    0.001    0.000 parser.py:59(parsestr)
        1    0.000    0.000    0.000    0.000 parser.py:81(__init__)
        1    0.000    0.000    0.000    0.000 parser.py:89(dispose)
       17    0.000    0.000    0.000    0.000 parser.py:94(check_event)
        2    0.000    0.000    0.000    0.000 parsing.py:104(parse_class_init_keys)
        4    0.000    0.000    0.000    0.000 parsing.py:120(_get_first_if_any)
        1    0.000    0.000    0.000    0.000 parsing.py:131(get_init_args)
        1    0.000    0.000    0.000    0.000 parsing.py:138(<listcomp>)
        1    0.000    0.000    0.000    0.000 parsing.py:141(<dictcomp>)
        1    0.000    0.000    0.000    0.000 parsing.py:143(<dictcomp>)
        1    0.000    0.000    0.000    0.000 parsing.py:186(save_hyperparameters)
        1    0.000    0.000    0.000    0.000 parsing.py:216(<listcomp>)
        1    0.000    0.000    0.000    0.000 parsing.py:219(<listcomp>)
        2    0.000    0.000    0.000    0.000 parsing.py:248(__getattr__)
       16    0.000    0.000    0.000    0.000 poolmanager.py:170(__init__)
        8    0.000    0.000    0.010    0.001 poolmanager.py:173(<lambda>)
        8    0.000    0.000    0.001    0.000 poolmanager.py:188(_new_pool)
       16    0.000    0.000    0.010    0.001 poolmanager.py:215(clear)
        8    0.000    0.000    0.001    0.000 poolmanager.py:224(connection_from_host)
        8    0.000    0.000    0.001    0.000 poolmanager.py:247(connection_from_context)
        8    0.000    0.000    0.001    0.000 poolmanager.py:262(connection_from_pool_key)
        8    0.000    0.000    0.002    0.000 poolmanager.py:286(connection_from_url)
        8    0.000    0.000    0.000    0.000 poolmanager.py:302(_merge_pool_kwargs)
        8    0.000    0.000    0.000    0.000 poolmanager.py:78(_default_key_normalizer)
        8    0.000    0.000    0.000    0.000 posixpath.py:100(split)
        1    0.000    0.000    0.000    0.000 posixpath.py:140(basename)
       24    0.000    0.000    0.000    0.000 posixpath.py:228(expanduser)
       30    0.000    0.000    0.000    0.000 posixpath.py:41(_get_sep)
       32    0.000    0.000    0.000    0.000 posixpath.py:52(normcase)
        5    0.000    0.000    0.000    0.000 posixpath.py:71(join)
        8    0.000    0.000    0.000    0.000 proxy.py:4(connection_requires_http_tunnel)
        8    0.000    0.000    0.000    0.000 queue.py:12(_init)
       88    0.000    0.000    0.000    0.000 queue.py:122(put)
      184    0.000    0.000    0.000    0.000 queue.py:15(_qsize)
       96    0.000    0.000    0.001    0.000 queue.py:154(get)
       88    0.000    0.000    0.000    0.000 queue.py:18(_put)
       88    0.000    0.000    0.000    0.000 queue.py:21(_get)
        8    0.000    0.000    0.000    0.000 queue.py:34(__init__)
       24    0.000    0.000    0.000    0.000 re.py:188(match)
       13    0.000    0.000    0.001    0.000 re.py:250(compile)
       20    0.000    0.000    0.000    0.000 re.py:270(escape)
       37    0.000    0.000    0.001    0.000 re.py:289(_compile)
       17    0.000    0.000    0.000    0.000 reader.py:114(get_mark)
        1    0.000    0.000    0.000    0.000 reader.py:122(determine_encoding)
        1    0.000    0.000    0.000    0.000 reader.py:138(check_printable)
        4    0.000    0.000    0.000    0.000 reader.py:146(update)
        2    0.000    0.000    0.000    0.000 reader.py:177(update_raw)
        1    0.000    0.000    0.000    0.000 reader.py:59(__init__)
       73    0.000    0.000    0.000    0.000 reader.py:87(peek)
       12    0.000    0.000    0.000    0.000 reader.py:94(prefix)
       14    0.000    0.000    0.000    0.000 reader.py:99(forward)
       16    0.000    0.000    0.003    0.000 request.py:2486(getproxies_environment)
        8    0.000    0.000    0.036    0.005 request.py:2554(_proxy_bypass_macosx_sysconf)
       16    0.000    0.000    0.000    0.000 request.py:2570(ip2num)
        8    0.000    0.000    0.041    0.005 request.py:2622(proxy_bypass_macosx_sysconf)
        8    0.000    0.000    0.001    0.000 request.py:2626(getproxies_macosx_sysconf)
        8    0.000    0.000    0.043    0.005 request.py:2636(proxy_bypass)
        8    0.000    0.000    0.003    0.000 request.py:2649(getproxies)
       24    0.000    0.000    0.000    0.000 request.py:40(__init__)
        8    0.000    0.000    0.000    0.000 request.py:98(set_file_position)
        5    0.000    0.000    0.000    0.000 resolver.py:114(ascend_resolver)
        5    0.000    0.000    0.000    0.000 resolver.py:143(resolve)
        1    0.000    0.000    0.000    0.000 resolver.py:21(__init__)
        5    0.000    0.000    0.000    0.000 resolver.py:91(descend_resolver)
        8    0.000    0.000    0.000    0.000 response.py:195(__init__)
       16    0.000    0.000    0.000    0.000 response.py:251(<genexpr>)
        8    0.000    0.000    0.000    0.000 response.py:275(release_conn)
        8    0.000    0.000    0.000    0.000 response.py:317(_init_length)
        8    0.000    0.000    0.000    0.000 response.py:343(<listcomp>)
        8    0.000    0.000    0.000    0.000 response.py:369(_init_decoder)
        8    0.000    0.000    0.000    0.000 response.py:40(assert_header_parsing)
       16    0.000    0.000    0.000    0.000 response.py:425(_error_catcher)
        8    0.000    0.000    0.000    0.000 response.py:481(read)
        8    0.000    0.000    0.000    0.000 response.py:555(stream)
        8    0.000    0.000    0.001    0.000 response.py:581(from_httplib)
        8    0.000    0.000    0.000    0.000 response.py:617(getheader)
        8    0.000    0.000    0.000    0.000 response.py:635(closed)
       16    0.000    0.000    0.000    0.000 response.py:9(is_fp_closed)
       16    0.000    0.000    0.000    0.000 retry.py:225(__init__)
       16    0.000    0.000    0.000    0.000 retry.py:283(<listcomp>)
        8    0.000    0.000    0.000    0.000 retry.py:430(_is_method_retryable)
        8    0.000    0.000    0.000    0.000 retry.py:450(is_retry)
      608    0.000    0.000    0.000    0.000 saving.py:135(<lambda>)
        1    0.000    0.000    0.091    0.091 saving.py:160(_load_model_state)
        1    0.000    0.000    0.000    0.000 saving.py:166(<listcomp>)
        5    0.000    0.000    0.000    0.000 saving.py:167(<lambda>)
        1    0.000    0.000    0.000    0.000 saving.py:197(<dictcomp>)
        1    0.000    0.000    0.000    0.000 saving.py:209(on_load_checkpoint)
        1    0.000    0.000    0.000    0.000 saving.py:249(_convert_loaded_hparams)
        1    0.000    0.000    0.753    0.753 saving.py:56(load_from_checkpoint)
       42    0.000    0.000    0.000    0.000 scanner.py:113(check_token)
        8    0.000    0.000    0.000    0.000 scanner.py:125(peek_token)
        4    0.000    0.000    0.000    0.000 scanner.py:1270(scan_plain)
        4    0.000    0.000    0.000    0.000 scanner.py:1311(scan_plain_spaces)
       12    0.000    0.000    0.000    0.000 scanner.py:135(get_token)
        9    0.000    0.000    0.000    0.000 scanner.py:1416(scan_line_break)
       69    0.000    0.000    0.000    0.000 scanner.py:145(need_more_tokens)
        7    0.000    0.000    0.000    0.000 scanner.py:156(fetch_more_tokens)
       56    0.000    0.000    0.000    0.000 scanner.py:264(next_possible_simple_key)
       63    0.000    0.000    0.000    0.000 scanner.py:279(stale_possible_simple_keys)
        4    0.000    0.000    0.000    0.000 scanner.py:295(save_possible_simple_key)
        3    0.000    0.000    0.000    0.000 scanner.py:312(remove_possible_simple_key)
        8    0.000    0.000    0.000    0.000 scanner.py:325(unwind_indent)
        2    0.000    0.000    0.000    0.000 scanner.py:349(add_indent)
        1    0.000    0.000    0.000    0.000 scanner.py:359(fetch_stream_start)
        1    0.000    0.000    0.000    0.000 scanner.py:371(fetch_stream_end)
        2    0.000    0.000    0.000    0.000 scanner.py:38(__init__)
        1    0.000    0.000    0.000    0.000 scanner.py:48(__init__)
        2    0.000    0.000    0.000    0.000 scanner.py:545(fetch_value)
        4    0.000    0.000    0.000    0.000 scanner.py:668(fetch_plain)
        2    0.000    0.000    0.000    0.000 scanner.py:721(check_value)
        4    0.000    0.000    0.000    0.000 scanner.py:731(check_plain)
        7    0.000    0.000    0.000    0.000 scanner.py:752(scan_to_next_token)
        1    0.000    0.000    0.000    0.000 serialization.py:193(_is_path)
        2    0.000    0.000    0.000    0.000 serialization.py:199(__init__)
        2    0.000    0.000    0.000    0.000 serialization.py:202(__enter__)
        2    0.000    0.000    0.000    0.000 serialization.py:205(__exit__)
        1    0.000    0.000    0.000    0.000 serialization.py:218(__init__)
        1    0.000    0.000    0.000    0.000 serialization.py:228(_open_file_like)
        1    0.000    0.000    0.000    0.000 serialization.py:241(__init__)
        1    0.000    0.000    0.000    0.000 serialization.py:296(_check_seekable)
        1    0.000    0.000    0.000    0.000 serialization.py:314(_check_dill_version)
        1    0.000    0.000    0.000    0.000 serialization.py:45(_is_zipfile)
        1    0.000    0.000    0.662    0.662 serialization.py:502(load)
     1218    0.000    0.000    0.001    0.000 serialization.py:803(_maybe_decode_ascii)
        1    0.000    0.000    0.000    0.000 serialization.py:815(_get_restore_location)
      608    0.001    0.000    0.001    0.000 serialization.py:829(restore_location)
        1    0.000    0.000    0.661    0.661 serialization.py:836(_load)
      608    0.643    0.001    0.644    0.001 serialization.py:841(load_tensor)
      610    0.002    0.000    0.647    0.001 serialization.py:848(persistent_load)
        1    0.000    0.000    0.000    0.000 serialization.py:869(UnpicklerWrapper)
        5    0.000    0.000    0.000    0.000 serialization.py:873(find_class)
        1    0.000    0.000    0.000    0.000 serialization.py:889(_is_torchscript_zip)
        8    0.000    0.000    0.000    0.000 sessions.py:144(resolve_redirects)
        8    0.000    0.000    0.001    0.000 sessions.py:362(__init__)
        8    0.000    0.000    0.000    0.000 sessions.py:424(__enter__)
        8    0.000    0.000    0.010    0.001 sessions.py:427(__exit__)
        8    0.000    0.000    0.004    0.001 sessions.py:430(prepare_request)
        8    0.000    0.000    2.692    0.337 sessions.py:470(request)
       56    0.000    0.000    0.001    0.000 sessions.py:50(merge_setting)
        8    0.000    0.000    2.642    0.330 sessions.py:626(send)
        8    0.000    0.000    0.046    0.006 sessions.py:701(merge_environment_settings)
        8    0.000    0.000    0.000    0.000 sessions.py:730(get_adapter)
       24    0.000    0.000    0.000    0.000 sessions.py:74(<listcomp>)
        8    0.000    0.000    0.010    0.001 sessions.py:744(close)
       16    0.000    0.000    0.000    0.000 sessions.py:749(mount)
       16    0.000    0.000    0.000    0.000 sessions.py:755(<listcomp>)
        8    0.000    0.000    0.000    0.000 sessions.py:81(merge_hooks)
        8    0.000    0.000    0.000    0.000 sessions.py:98(get_redirect_target)
        1    0.000    0.000    0.000    0.000 shlex.py:1(<module>)
        1    0.000    0.000    0.000    0.000 shlex.py:19(shlex)
        3    0.000    0.000    0.000    0.000 shutil.py:1323(get_terminal_size)
       88    0.000    0.000    0.000    0.000 six.py:1015(ensure_text)
       16    0.000    0.000    0.000    0.000 six.py:642(itervalues)
       40    0.000    0.000    0.000    0.000 six.py:992(ensure_str)
       16    0.000    0.000    0.000    0.000 socket.py:220(__init__)
        8    0.000    0.000    0.000    0.000 socket.py:302(makefile)
        8    0.000    0.000    0.000    0.000 socket.py:487(_decref_socketios)
        8    0.000    0.000    0.000    0.000 socket.py:493(_real_close)
        8    0.000    0.000    0.001    0.000 socket.py:497(close)
        8    0.000    0.000    0.000    0.000 socket.py:503(detach)
        8    0.000    0.000    0.000    0.000 socket.py:513(family)
        8    0.000    0.000    0.000    0.000 socket.py:519(type)
        8    0.000    0.000    0.000    0.000 socket.py:678(__init__)
        8    0.000    0.000    0.680    0.085 socket.py:690(readinto)
       16    0.000    0.000    0.000    0.000 socket.py:729(readable)
        8    0.000    0.000    0.000    0.000 socket.py:767(close)
        8    0.000    0.000    0.004    0.001 socket.py:936(getaddrinfo)
       32    0.000    0.000    0.000    0.000 socket.py:99(_intenum_converter)
        3    0.000    0.000    0.137    0.046 sparse.py:120(__init__)
        3    0.000    0.000    0.137    0.046 sparse.py:148(reset_parameters)
        3    0.000    0.000    0.000    0.000 sparse.py:152(_fill_padding_idx_with_zero)
        3    0.000    0.000    0.000    0.000 sparse.py:157(forward)
        1    0.000    0.000    0.000    0.000 spec.py:121(__init__)
        1    0.000    0.000    0.000    0.000 spec.py:59(__call__)
        1    0.000    0.000    0.000    0.000 spec.py:61(<genexpr>)
        1    0.000    0.000    0.000    0.000 spec.py:927(open)
       10    0.000    0.000    0.000    0.000 sre_compile.py:249(_compile_charset)
       10    0.000    0.000    0.000    0.000 sre_compile.py:276(_optimize_charset)
        2    0.000    0.000    0.000    0.000 sre_compile.py:411(_mk_bitmap)
        2    0.000    0.000    0.000    0.000 sre_compile.py:413(<listcomp>)
       13    0.000    0.000    0.000    0.000 sre_compile.py:423(_simple)
        2    0.000    0.000    0.000    0.000 sre_compile.py:432(_generate_overlap_table)
       18    0.000    0.000    0.000    0.000 sre_compile.py:453(_get_iscased)
     12/8    0.000    0.000    0.000    0.000 sre_compile.py:461(_get_literal_prefix)
        6    0.000    0.000    0.000    0.000 sre_compile.py:492(_get_charset_prefix)
        8    0.000    0.000    0.000    0.000 sre_compile.py:536(_compile_info)
       16    0.000    0.000    0.000    0.000 sre_compile.py:595(isstring)
        8    0.000    0.000    0.000    0.000 sre_compile.py:598(_code)
       13    0.000    0.000    0.000    0.000 sre_compile.py:65(_combine_flags)
     29/8    0.000    0.000    0.000    0.000 sre_compile.py:71(_compile)
        8    0.000    0.000    0.001    0.000 sre_compile.py:759(compile)
       30    0.000    0.000    0.000    0.000 sre_parse.py:111(__init__)
       62    0.000    0.000    0.000    0.000 sre_parse.py:160(__len__)
        4    0.000    0.000    0.000    0.000 sre_parse.py:162(__delitem__)
      193    0.000    0.000    0.000    0.000 sre_parse.py:164(__getitem__)
       13    0.000    0.000    0.000    0.000 sre_parse.py:168(__setitem__)
       56    0.000    0.000    0.000    0.000 sre_parse.py:172(append)
    33/12    0.000    0.000    0.000    0.000 sre_parse.py:174(getwidth)
        8    0.000    0.000    0.000    0.000 sre_parse.py:224(__init__)
      106    0.000    0.000    0.000    0.000 sre_parse.py:233(__next)
       55    0.000    0.000    0.000    0.000 sre_parse.py:249(match)
       84    0.000    0.000    0.000    0.000 sre_parse.py:254(get)
       37    0.000    0.000    0.000    0.000 sre_parse.py:286(tell)
        1    0.000    0.000    0.000    0.000 sre_parse.py:295(_class_escape)
       17    0.000    0.000    0.000    0.000 sre_parse.py:355(_escape)
        2    0.000    0.000    0.000    0.000 sre_parse.py:432(_uniq)
     15/8    0.000    0.000    0.001    0.000 sre_parse.py:435(_parse_sub)
     16/9    0.000    0.000    0.000    0.000 sre_parse.py:493(_parse)
        8    0.000    0.000    0.000    0.000 sre_parse.py:76(__init__)
       24    0.000    0.000    0.000    0.000 sre_parse.py:81(groups)
        4    0.000    0.000    0.000    0.000 sre_parse.py:84(opengroup)
        2    0.000    0.000    0.000    0.000 sre_parse.py:861(_parse_flags)
        8    0.000    0.000    0.000    0.000 sre_parse.py:921(fix_flags)
        8    0.000    0.000    0.001    0.000 sre_parse.py:937(parse)
        4    0.000    0.000    0.000    0.000 sre_parse.py:96(closegroup)
       40    0.000    0.000    0.000    0.000 ssl.py:1078(_checkClosed)
       16    0.000    0.000    0.000    0.000 ssl.py:1082(_check_connected)
        8    0.000    0.000    0.680    0.085 ssl.py:1090(read)
        8    0.000    0.000    0.000    0.000 ssl.py:1120(getpeercert)
        8    0.000    0.000    0.000    0.000 ssl.py:1166(send)
        8    0.000    0.000    0.000    0.000 ssl.py:1193(sendall)
        8    0.000    0.000    0.680    0.085 ssl.py:1230(recv_into)
        8    0.001    0.000    0.001    0.000 ssl.py:1298(_real_close)
        8    0.000    0.000    1.838    0.230 ssl.py:1302(do_handshake)
        8    0.000    0.000    0.000    0.000 ssl.py:1372(version)
        8    0.000    0.000    0.000    0.000 ssl.py:275(_dnsname_match)
        8    0.000    0.000    0.000    0.000 ssl.py:324(_inet_paton)
        8    0.000    0.000    0.000    0.000 ssl.py:371(match_hostname)
        8    0.000    0.000    0.002    0.000 ssl.py:482(__new__)
        8    0.000    0.000    0.000    0.000 ssl.py:486(_encode_hostname)
        8    0.000    0.000    1.839    0.230 ssl.py:494(wrap_socket)
        8    0.000    0.000    0.000    0.000 ssl.py:544(set_alpn_protocols)
        8    0.000    0.000    0.000    0.000 ssl.py:596(options)
        8    0.000    0.000    0.000    0.000 ssl.py:600(options)
       16    0.000    0.000    0.000    0.000 ssl.py:710(verify_mode)
       16    0.000    0.000    0.000    0.000 ssl.py:718(verify_mode)
        8    0.000    0.000    1.839    0.230 ssl.py:983(_create)
       16    0.000    0.000    0.000    0.000 ssl_.py:211(resolve_cert_reqs)
        8    0.000    0.000    0.000    0.000 ssl_.py:234(resolve_ssl_version)
        8    0.000    0.000    0.003    0.000 ssl_.py:250(create_urllib3_context)
        8    0.000    0.000    0.000    0.000 ssl_.py:325(disable_check_hostname)
        8    0.000    0.000    1.890    0.236 ssl_.py:355(ssl_wrap_socket)
        8    0.000    0.000    0.000    0.000 ssl_.py:457(is_ipaddress)
        8    0.000    0.000    1.839    0.230 ssl_.py:481(_ssl_wrap_socket_impl)
      608    0.000    0.000    0.000    0.000 storage.py:13(__init__)
       56    0.000    0.000    0.001    0.000 structures.py:42(__init__)
      232    0.000    0.000    0.000    0.000 structures.py:48(__setitem__)
      154    0.000    0.000    0.000    0.000 structures.py:53(__getitem__)
       48    0.000    0.000    0.000    0.000 structures.py:59(__iter__)
      216    0.000    0.000    0.000    0.000 structures.py:60(<genexpr>)
       24    0.000    0.000    0.000    0.000 structures.py:62(__len__)
       16    0.000    0.000    0.000    0.000 structures.py:82(copy)
       24    0.000    0.000    0.000    0.000 threading.py:228(__init__)
      184    0.000    0.000    0.000    0.000 threading.py:256(__enter__)
      184    0.000    0.000    0.000    0.000 threading.py:259(__exit__)
      176    0.000    0.000    0.000    0.000 threading.py:271(_is_owned)
      176    0.000    0.000    0.000    0.000 threading.py:351(notify)
       48    0.000    0.000    0.000    0.000 threading.py:82(RLock)
       32    0.000    0.000    0.000    0.000 timeout.py:102(__init__)
       96    0.000    0.000    0.000    0.000 timeout.py:119(_validate_timeout)
        8    0.000    0.000    0.000    0.000 timeout.py:165(from_float)
       16    0.000    0.000    0.000    0.000 timeout.py:181(clone)
        8    0.000    0.000    0.000    0.000 timeout.py:195(start_connect)
       24    0.000    0.000    0.000    0.000 timeout.py:220(connect_timeout)
        8    0.000    0.000    0.000    0.000 timeout.py:238(read_timeout)
        1    0.000    0.000    0.334    0.334 tokenization_auto.py:335(get_tokenizer_config)
        1    0.000    0.000    2.377    2.377 tokenization_auto.py:448(from_pretrained)
        1    0.005    0.005    0.029    0.029 tokenization_bert.py:164(__init__)
        1    0.006    0.006    0.006    0.006 tokenization_bert.py:199(<listcomp>)
       10    0.000    0.000    0.000    0.000 tokenization_bert.py:235(_convert_token_to_id)
        1    0.000    0.000    0.000    0.000 tokenization_bert.py:372(__init__)
        1    0.000    0.000    0.000    0.000 tokenization_bert.py:504(__init__)
        1    0.009    0.009    0.018    0.018 tokenization_bert.py:97(load_vocab)
        1    0.000    0.000    0.012    0.012 tokenization_bert_fast.py:163(__init__)
        1    0.000    0.000    0.000    0.000 tokenization_utils.py:130(__init__)
        1    0.000    0.000    0.000    0.000 tokenization_utils.py:167(_add_tokens)
        1    0.000    0.000    0.000    0.000 tokenization_utils.py:193(<listcomp>)
        1    0.000    0.000    0.000    0.000 tokenization_utils.py:209(<genexpr>)
        1    0.000    0.000    0.000    0.000 tokenization_utils.py:210(<dictcomp>)
       10    0.000    0.000    0.000    0.000 tokenization_utils.py:374(convert_tokens_to_ids)
       10    0.000    0.000    0.000    0.000 tokenization_utils.py:396(_convert_token_to_id_with_added_voc)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1040(unk_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1044(sep_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1048(pad_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1052(cls_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1056(mask_token)
        1    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1094(sep_token_id)
        4    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1104(pad_token_id)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1114(pad_token_type_id)
        1    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1121(cls_token_id)
        4    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1198(special_tokens_map_extended)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1215(all_special_tokens)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1222(<listcomp>)
        4    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1225(all_special_tokens_extended)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1440(__init__)
        1    0.002    0.002    1.710    1.710 tokenization_utils_base.py:1525(from_pretrained)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1702(<genexpr>)
      2/1    0.000    0.000    0.042    0.042 tokenization_utils_base.py:1723(_from_pretrained)
      6/2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1759(convert_added_tokens)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:1766(<dictcomp>)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:184(__init__)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:2098(_get_padding_truncation_strategies)
        2    0.000    0.000    0.005    0.002 tokenization_utils_base.py:2226(__call__)
        4    0.000    0.000    0.000    0.000 tokenization_utils_base.py:223(__getitem__)
        3    0.000    0.000    0.000    0.000 tokenization_utils_base.py:2263(_is_valid_text_input)
        2    0.000    0.000    0.005    0.002 tokenization_utils_base.py:2444(batch_encode_plus)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:262(items)
       11    0.000    0.000    0.000    0.000 tokenization_utils_base.py:3179(_eventual_warn_about_too_long_sequence)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:639(convert_to_tensors)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:783(__init__)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:813(sanitize_special_tokens)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:898(add_tokens)
       21    0.000    0.000    0.000    0.000 tokenization_utils_base.py:968(unk_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:978(sep_token)
        8    0.000    0.000    0.000    0.000 tokenization_utils_base.py:989(pad_token)
        2    0.000    0.000    0.000    0.000 tokenization_utils_base.py:999(cls_token)
        1    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:159(backend_tokenizer)
       11    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:173(_convert_encoding)
        6    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:220(convert_tokens_to_ids)
        6    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:242(_convert_token_to_id_with_added_voc)
        1    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:251(_add_tokens)
        2    0.000    0.000    0.003    0.002 tokenization_utils_fast.py:304(set_truncation_and_padding)
        2    0.000    0.000    0.004    0.002 tokenization_utils_fast.py:351(_batch_encode_plus)
        2    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:397(<listcomp>)
        6    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:419(<listcomp>)
        2    0.000    0.000    0.000    0.000 tokenization_utils_fast.py:421(<listcomp>)
        1    0.000    0.000    0.012    0.012 tokenization_utils_fast.py:80(__init__)
        7    0.000    0.000    0.000    0.000 tokens.py:3(__init__)
        1    0.000    0.000    0.000    0.000 tokens.py:33(__init__)
        4    0.000    0.000    0.000    0.000 tokens.py:98(__init__)
       58    0.000    0.000    0.000    0.000 types.py:171(__get__)
        2    0.000    0.000    0.000    0.000 typing.py:128(_type_convert)
        2    0.000    0.000    0.000    0.000 typing.py:137(_type_check)
        1    0.000    0.000    0.000    0.000 typing.py:189(_collect_type_vars)
        1    0.000    0.000    0.000    0.000 typing.py:216(_deduplicate)
        1    0.000    0.000    0.000    0.000 typing.py:230(_remove_dups_flatten)
        2    0.000    0.000    0.000    0.000 typing.py:269(inner)
        1    0.000    0.000    0.000    0.000 typing.py:350(__getitem__)
        1    0.000    0.000    0.000    0.000 typing.py:431(Union)
        3    0.000    0.000    0.000    0.000 typing.py:463(<genexpr>)
        7    0.000    0.000    0.000    0.000 typing.py:655(_is_dunder)
        1    0.000    0.000    0.000    0.000 typing.py:667(__init__)
        7    0.000    0.000    0.000    0.000 typing.py:703(__setattr__)
        1    0.000    0.000    0.000    0.000 typing.py:729(__init__)
        3    0.000    0.000    0.000    0.000 typing.py:733(<genexpr>)
       40    0.001    0.000    0.001    0.000 url.py:210(_encode_invalid_chars)
       24    0.000    0.000    0.000    0.000 url.py:244(_remove_path_dot_segments)
       32    0.000    0.000    0.000    0.000 url.py:274(_normalize_host)
       24    0.000    0.000    0.000    0.000 url.py:297(<listcomp>)
       48    0.000    0.000    0.000    0.000 url.py:302(_idna_encode)
       48    0.000    0.000    0.000    0.000 url.py:303(<listcomp>)
        8    0.000    0.000    0.000    0.000 url.py:320(_encode_target)
       24    0.000    0.000    0.002    0.000 url.py:330(parse_url)
      144    0.000    0.000    0.000    0.000 url.py:413(ensure_type)
       24    0.000    0.000    0.000    0.000 url.py:91(__new__)
        8    0.000    0.000    0.001    0.000 utils.py:169(get_netrc_auth)
       24    0.000    0.000    0.000    0.000 utils.py:176(<genexpr>)
        8    0.000    0.000    0.000    0.000 utils.py:234(extract_zipped_paths)
        1    0.000    0.000    0.000    0.000 utils.py:268(tokenize)
        2    0.000    0.000    0.000    0.000 utils.py:284(stringify_path)
       56    0.000    0.000    0.000    0.000 utils.py:293(to_key_val_list)
        8    0.000    0.000    0.000    0.000 utils.py:461(_parse_content_type_header)
        8    0.000    0.000    0.000    0.000 utils.py:486(get_encoding_from_headers)
      120    0.000    0.000    0.000    0.000 utils.py:51(_has_surrogates)
        8    0.000    0.000    0.000    0.000 utils.py:529(iter_slices)
        8    0.000    0.000    0.000    0.000 utils.py:580(unquote_unreserved)
        8    0.000    0.000    0.000    0.000 utils.py:604(requote_uri)
       16    0.000    0.000    0.000    0.000 utils.py:687(set_environ)
        8    0.000    0.000    0.043    0.005 utils.py:709(should_bypass_proxies)
        8    0.000    0.000    0.000    0.000 utils.py:717(<lambda>)
        8    0.000    0.000    0.046    0.006 utils.py:770(get_environ_proxies)
       16    0.000    0.000    0.000    0.000 utils.py:782(select_proxy)
        8    0.000    0.000    0.000    0.000 utils.py:808(default_user_agent)
        8    0.000    0.000    0.000    0.000 utils.py:817(default_headers)
        8    0.000    0.000    0.000    0.000 utils.py:921(get_auth_from_url)
       32    0.000    0.000    0.000    0.000 utils.py:942(check_header_validity)
        1    0.000    0.000    0.000    0.000 version.py:106(__gt__)
        2    0.000    0.000    0.000    0.000 version.py:292(__init__)
        8    0.000    0.000    0.000    0.000 version.py:303(<genexpr>)
        6    0.000    0.000    0.000    0.000 version.py:441(_parse_letter_version)
        2    0.000    0.000    0.000    0.000 version.py:482(_parse_local_version)
        2    0.000    0.000    0.000    0.000 version.py:49(parse)
        2    0.000    0.000    0.000    0.000 version.py:495(_cmpkey)
        4    0.000    0.000    0.000    0.000 version.py:511(<lambda>)
      158    0.002    0.000    0.002    0.000 {built-in method __new__ of type object at 0x10ae9d420}
      255    0.000    0.000    0.000    0.000 {built-in method _abc._abc_instancecheck}
    87/34    0.000    0.000    0.000    0.000 {built-in method _abc._abc_subclasscheck}
       41    0.001    0.000    0.001    0.000 {built-in method _codecs.utf_8_decode}
      204    0.000    0.000    0.000    0.000 {built-in method _has_compatible_shallow_copy_type}
       11    0.000    0.000    0.000    0.000 {built-in method _hashlib.openssl_sha256}
        2    0.000    0.000    0.000    0.000 {built-in method _imp._fix_co_filename}
       12    0.000    0.000    0.000    0.000 {built-in method _imp.acquire_lock}
        2    0.000    0.000    0.000    0.000 {built-in method _imp.is_builtin}
        2    0.000    0.000    0.000    0.000 {built-in method _imp.is_frozen}
       12    0.000    0.000    0.000    0.000 {built-in method _imp.release_lock}
       64    0.000    0.000    0.000    0.000 {built-in method _json.encode_basestring_ascii}
        2    0.000    0.000    0.000    0.000 {built-in method _locale.nl_langinfo}
      203    0.001    0.000    0.001    0.000 {built-in method _make_subclass}
        8    0.001    0.000    0.001    0.000 {built-in method _scproxy._get_proxies}
        8    0.005    0.001    0.005    0.001 {built-in method _scproxy._get_proxy_settings}
        8    0.004    0.001    0.004    0.001 {built-in method _socket.getaddrinfo}
        8    0.035    0.004    0.035    0.004 {built-in method _socket.gethostbyname}
        8    0.000    0.000    0.000    0.000 {built-in method _socket.inet_aton}
        8    0.000    0.000    0.000    0.000 {built-in method _socket.inet_pton}
        8    0.000    0.000    0.000    0.000 {built-in method _sre.compile}
       16    0.000    0.000    0.000    0.000 {built-in method _stat.S_ISDIR}
        1    0.000    0.000    0.000    0.000 {built-in method _stat.S_ISREG}
       12    0.000    0.000    0.000    0.000 {built-in method _thread.allocate_lock}
        5    0.000    0.000    0.000    0.000 {built-in method _thread.get_ident}
        1    0.000    0.000    0.000    0.000 {built-in method arange}
        4    0.000    0.000    0.000    0.000 {built-in method builtins.__build_class__}
        1    0.000    0.000    0.000    0.000 {built-in method builtins.__import__}
       25    0.000    0.000    0.000    0.000 {built-in method builtins.all}
       96    0.000    0.000    0.000    0.000 {built-in method builtins.any}
       37    0.000    0.000    0.000    0.000 {built-in method builtins.callable}
      3/1    0.000    0.000    5.656    5.656 {built-in method builtins.exec}
      303    0.000    0.000    0.000    0.000 {built-in method builtins.getattr}
      726    0.000    0.000    0.001    0.000 {built-in method builtins.hasattr}
      955    0.000    0.000    0.000    0.000 {built-in method builtins.id}
    15029    0.002    0.000    0.003    0.000 {built-in method builtins.isinstance}
        1    0.000    0.000    0.000    0.000 {built-in method builtins.issubclass}
       18    0.000    0.000    0.000    0.000 {built-in method builtins.iter}
3027/2980    0.000    0.000    0.000    0.000 {built-in method builtins.len}
        9    0.000    0.000    0.000    0.000 {built-in method builtins.max}
       77    0.000    0.000    0.000    0.000 {built-in method builtins.min}
       42    0.000    0.000    0.000    0.000 {built-in method builtins.next}
     1881    0.000    0.000    0.000    0.000 {built-in method builtins.ord}
       11    0.000    0.000    0.000    0.000 {built-in method builtins.print}
       30    0.000    0.000    0.000    0.000 {built-in method builtins.setattr}
       52    0.000    0.000    0.000    0.000 {built-in method builtins.sorted}
        1    0.000    0.000    0.000    0.000 {built-in method builtins.vars}
        1    0.000    0.000    0.000    0.000 {built-in method constant_pad_nd}
       37    0.000    0.000    0.000    0.000 {built-in method dropout}
        3    0.000    0.000    0.000    0.000 {built-in method embedding}
      202    0.001    0.000    0.001    0.000 {built-in method empty}
        6    0.000    0.000    0.000    0.000 {built-in method from_bytes}
        4    0.000    0.000    0.000    0.000 {built-in method fromkeys}
        2    0.000    0.000    0.000    0.000 {built-in method io.open_code}
        9    0.000    0.000    0.000    0.000 {built-in method io.open}
       26    0.002    0.000    0.002    0.000 {built-in method layer_norm}
        2    0.000    0.000    0.000    0.000 {built-in method marshal.loads}
      381    0.000    0.000    0.000    0.000 {built-in method math.sqrt}
       24    0.001    0.000    0.001    0.000 {built-in method matmul}
       76    0.000    0.000    0.000    0.000 {built-in method posix.fspath}
        3    0.000    0.000    0.000    0.000 {built-in method posix.get_terminal_size}
        1    0.000    0.000    0.000    0.000 {built-in method posix.getpid}
        8    0.000    0.000    0.000    0.000 {built-in method posix.mkdir}
       85    0.001    0.000    0.001    0.000 {built-in method posix.stat}
        1    0.000    0.000    0.000    0.000 {built-in method rsub}
        1    0.000    0.000    0.000    0.000 {built-in method stack}
        1    0.000    0.000    0.000    0.000 {built-in method sys._getframe}
       16    0.000    0.000    0.000    0.000 {built-in method sys.getrecursionlimit}
      616    0.004    0.000    0.004    0.000 {built-in method tensor}
        8    0.000    0.000    0.000    0.000 {built-in method time.monotonic}
       48    0.000    0.000    0.000    0.000 {built-in method time.time}
        8    0.000    0.000    0.000    0.000 {built-in method today}
       26    0.000    0.000    0.000    0.000 {built-in method torch._C._get_cudnn_enabled}
      229    0.000    0.000    0.000    0.000 {built-in method torch._C._get_tracing_state}
      296    0.000    0.000    0.000    0.000 {built-in method torch._C._has_torch_function_unary}
       78    0.000    0.000    0.000    0.000 {built-in method torch._C._has_torch_function_variadic}
      234    0.001    0.000    0.001    0.000 {built-in method torch._C._log_api_usage_once}
        2    0.000    0.000    0.000    0.000 {built-in method torch._C._nn._parse_to}
       13    0.002    0.000    0.002    0.000 {built-in method torch._C._nn.gelu}
       74    0.086    0.001    0.086    0.001 {built-in method torch._C._nn.linear}
     1224    0.000    0.000    0.000    0.000 {built-in method torch._C._set_grad_enabled}
        1    0.000    0.000    0.000    0.000 {built-in method torch._C.get_default_dtype}
     1836    0.000    0.000    0.000    0.000 {built-in method torch._C.is_grad_enabled}
        2    0.000    0.000    0.000    0.000 {built-in method zeros}
        8    0.000    0.000    0.000    0.000 {function HTTPResponse.flush at 0x130f51dc0}
       24    0.000    0.000    0.000    0.000 {function SocketIO.close at 0x130de3d30}
        5    0.000    0.000    0.000    0.000 {function _load.<locals>.UnpicklerWrapper.find_class at 0x133e550d0}
        8    0.000    0.000    0.000    0.000 {function socket.close at 0x130de3280}
        8    0.000    0.000    0.000    0.000 {function socket.detach at 0x130de3310}
        1    0.000    0.000    0.000    0.000 {method '__enter__' of '_io._IOBase' objects}
      184    0.000    0.000    0.000    0.000 {method '__enter__' of '_thread.lock' objects}
       11    0.000    0.000    0.000    0.000 {method '__exit__' of '_io._IOBase' objects}
       32    0.000    0.000    0.000    0.000 {method '__exit__' of '_thread.RLock' objects}
      188    0.000    0.000    0.000    0.000 {method '__exit__' of '_thread.lock' objects}
       16    0.000    0.000    0.000    0.000 {method '__exit__' of 'memoryview' objects}
        1    0.000    0.000    0.000    0.000 {method '__getstate__' of 'tokenizers.normalizers.Normalizer' objects}
        1    0.000    0.000    0.000    0.000 {method '__reduce_ex__' of 'object' objects}
        8    0.000    0.000    0.000    0.000 {method '_checkClosed' of '_io._IOBase' objects}
        8    0.000    0.000    0.000    0.000 {method '_checkReadable' of '_io._IOBase' objects}
        8    0.000    0.000    0.000    0.000 {method '_set_alpn_protocols' of '_ssl._SSLContext' objects}
        8    0.000    0.000    0.000    0.000 {method '_wrap_socket' of '_ssl._SSLContext' objects}
       36    0.000    0.000    0.000    0.000 {method 'acquire' of '_thread.RLock' objects}
      176    0.000    0.000    0.000    0.000 {method 'acquire' of '_thread.lock' objects}
     1096    0.000    0.000    0.000    0.000 {method 'add' of 'set' objects}
        1    0.000    0.000    0.000    0.000 {method 'add_special_tokens' of 'tokenizers.Tokenizer' objects}
        8    0.000    0.000    0.000    0.000 {method 'append' of 'bytearray' objects}
       88    0.000    0.000    0.000    0.000 {method 'append' of 'collections.deque' objects}
     1030    0.000    0.000    0.000    0.000 {method 'append' of 'list' objects}
        8    0.000    0.000    0.000    0.000 {method 'cast' of 'memoryview' objects}
       16    0.000    0.000    0.000    0.000 {method 'clear' of 'collections.OrderedDict' objects}
        1    0.000    0.000    0.000    0.000 {method 'clear' of 'list' objects}
        8    0.000    0.000    0.000    0.000 {method 'close' of '_io.BufferedReader' objects}
        8    0.051    0.006    0.051    0.006 {method 'connect' of '_socket.socket' objects}
       12    0.000    0.000    0.000    0.000 {method 'contiguous' of 'torch._C._TensorBase' objects}
        1    0.000    0.000    0.000    0.000 {method 'copy' of 'collections.OrderedDict' objects}
       32    0.000    0.000    0.000    0.000 {method 'copy' of 'dict' objects}
      205    0.060    0.000    0.060    0.000 {method 'copy_' of 'torch._C._TensorBase' objects}
       32    0.000    0.000    0.000    0.000 {method 'count' of 'bytes' objects}
       40    0.000    0.000    0.000    0.000 {method 'count' of 'str' objects}
       32    0.000    0.000    0.000    0.000 {method 'decode' of 'bytearray' objects}
     3661    0.000    0.000    0.000    0.000 {method 'decode' of 'bytes' objects}
      297    0.000    0.000    0.000    0.000 {method 'dim' of 'torch._C._TensorBase' objects}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}
        1    0.000    0.000    0.000    0.000 {method 'discard' of 'set' objects}
        8    1.838    0.230    1.838    0.230 {method 'do_handshake' of '_ssl._SSLSocket' objects}
        2    0.002    0.001    0.002    0.001 {method 'enable_padding' of 'tokenizers.Tokenizer' objects}
        1    0.002    0.002    0.002    0.002 {method 'enable_truncation' of 'tokenizers.Tokenizer' objects}
1525/1509    0.000    0.000    0.000    0.000 {method 'encode' of 'str' objects}
        2    0.001    0.000    0.001    0.000 {method 'encode_batch' of 'tokenizers.Tokenizer' objects}
       14    0.000    0.000    0.000    0.000 {method 'end' of 're.Match' objects}
       49    0.000    0.000    0.000    0.000 {method 'endswith' of 'str' objects}
        1    0.000    0.000    0.000    0.000 {method 'expand' of 'torch._C._TensorBase' objects}
        8    0.000    0.000    0.000    0.000 {method 'extend' of 'bytearray' objects}
       16    0.000    0.000    0.000    0.000 {method 'extend' of 'collections.deque' objects}
       33    0.000    0.000    0.000    0.000 {method 'extend' of 'list' objects}
        3    0.000    0.000    0.000    0.000 {method 'fileno' of '_io.TextIOWrapper' objects}
        8    0.000    0.000    0.000    0.000 {method 'fileno' of '_socket.socket' objects}
       78    0.001    0.000    0.001    0.000 {method 'fill_' of 'torch._C._TensorBase' objects}
       20    0.000    0.000    0.000    0.000 {method 'find' of 'bytearray' objects}
      125    0.000    0.000    0.000    0.000 {method 'find' of 'str' objects}
      262    0.000    0.000    0.000    0.000 {method 'format' of 'str' objects}
       48    0.000    0.000    0.000    0.000 {method 'fullmatch' of 're.Pattern' objects}
        1    0.000    0.000    0.000    0.000 {method 'gather' of 'torch._C._TensorBase' objects}
    12783    0.001    0.000    0.001    0.000 {method 'get' of 'dict' objects}
        1    0.000    0.000    0.000    0.000 {method 'get' of 'mappingproxy' objects}
        8    0.000    0.000    0.000    0.000 {method 'getpeercert' of '_ssl._SSLSocket' objects}
        8    0.000    0.000    0.000    0.000 {method 'getpeername' of '_socket.socket' objects}
        8    0.000    0.000    0.000    0.000 {method 'getsockopt' of '_socket.socket' objects}
       24    0.000    0.000    0.000    0.000 {method 'gettimeout' of '_socket.socket' objects}
       36    0.000    0.000    0.000    0.000 {method 'group' of 're.Match' objects}
       48    0.000    0.000    0.000    0.000 {method 'groups' of 're.Match' objects}
       11    0.000    0.000    0.000    0.000 {method 'hexdigest' of '_hashlib.HASH' objects}
        4    0.000    0.000    0.000    0.000 {method 'insert' of 'list' objects}
        2    0.000    0.000    0.000    0.000 {method 'is_complex' of 'torch._C._TensorBase' objects}
      206    0.000    0.000    0.000    0.000 {method 'is_floating_point' of 'torch._C._TensorBase' objects}
        4    0.000    0.000    0.000    0.000 {method 'isalnum' of 'str' objects}
        6    0.000    0.000    0.000    0.000 {method 'isascii' of 'str' objects}
       49    0.000    0.000    0.000    0.000 {method 'isidentifier' of 'str' objects}
     2241    0.000    0.000    0.000    0.000 {method 'items' of 'collections.OrderedDict' objects}
      653    0.000    0.000    0.000    0.000 {method 'items' of 'dict' objects}
       88    0.000    0.000    0.001    0.000 {method 'join' of 'bytes' objects}
      266    0.000    0.000    0.000    0.000 {method 'join' of 'str' objects}
      236    0.000    0.000    0.000    0.000 {method 'keys' of 'collections.OrderedDict' objects}
       73    0.000    0.000    0.000    0.000 {method 'keys' of 'dict' objects}
        2    0.000    0.000    0.000    0.000 {method 'keys' of 'mappingproxy' objects}
        1    0.005    0.005    0.661    0.661 {method 'load' of '_pickle.Unpickler' objects}
        8    0.051    0.006    0.051    0.006 {method 'load_verify_locations' of '_ssl._SSLContext' objects}
     2113    0.000    0.000    0.000    0.000 {method 'lower' of 'str' objects}
       75    0.000    0.000    0.000    0.000 {method 'lstrip' of 'str' objects}
      285    0.000    0.000    0.000    0.000 {method 'match' of 're.Pattern' objects}
        1    0.000    0.000    0.000    0.000 {method 'no_truncation' of 'tokenizers.Tokenizer' objects}
      155    1.213    0.008    1.213    0.008 {method 'normal_' of 'torch._C._TensorBase' objects}
      224    0.000    0.000    0.000    0.000 {method 'partition' of 'str' objects}
       48    0.000    0.000    0.000    0.000 {method 'permute' of 'torch._C._TensorBase' objects}
        8    0.000    0.000    0.000    0.000 {method 'pop' of 'collections.OrderedDict' objects}
       88    0.000    0.000    0.000    0.000 {method 'pop' of 'collections.deque' objects}
      490    0.000    0.000    0.000    0.000 {method 'pop' of 'dict' objects}
       27    0.000    0.000    0.000    0.000 {method 'pop' of 'list' objects}
        8    0.000    0.000    0.000    0.000 {method 'pop' of 'set' objects}
       72    0.000    0.000    0.000    0.000 {method 'popleft' of 'collections.deque' objects}
        6    0.000    0.000    0.000    0.000 {method 'read' of '_io.BufferedReader' objects}
       16    0.000    0.000    0.000    0.000 {method 'read' of '_io.StringIO' objects}
        8    0.000    0.000    0.000    0.000 {method 'read' of '_io.TextIOWrapper' objects}
        8    0.680    0.085    0.680    0.085 {method 'read' of '_ssl._SSLSocket' objects}
       80    0.000    0.000    0.680    0.009 {method 'readline' of '_io.BufferedReader' objects}
       17    0.003    0.000    0.004    0.000 {method 'readlines' of '_io._IOBase' objects}
       36    0.000    0.000    0.000    0.000 {method 'release' of '_thread.RLock' objects}
        1    0.000    0.000    0.000    0.000 {method 'repeat' of 'torch._C._TensorBase' objects}
      600    0.000    0.000    0.000    0.000 {method 'replace' of 'str' objects}
        3    0.000    0.000    0.000    0.000 {method 'reverse' of 'list' objects}
       13    0.000    0.000    0.000    0.000 {method 'rfind' of 'str' objects}
      104    0.000    0.000    0.000    0.000 {method 'rpartition' of 'str' objects}
        8    0.000    0.000    0.000    0.000 {method 'rstrip' of 'bytes' objects}
    30202    0.004    0.000    0.004    0.000 {method 'rstrip' of 'str' objects}
       99    0.000    0.000    0.000    0.000 {method 'search' of 're.Pattern' objects}
        4    0.000    0.000    0.000    0.000 {method 'seek' of '_io.BufferedReader' objects}
       32    0.000    0.000    0.000    0.000 {method 'seek' of '_io.StringIO' objects}
      610    0.003    0.000    0.003    0.000 {method 'set_' of 'torch._C._TensorBase' objects}
        8    0.000    0.000    0.000    0.000 {method 'set_ciphers' of '_ssl._SSLContext' objects}
       64    0.000    0.000    0.000    0.000 {method 'setdefault' of 'collections.OrderedDict' objects}
       87    0.000    0.000    0.000    0.000 {method 'setdefault' of 'dict' objects}
        8    0.000    0.000    0.000    0.000 {method 'setsockopt' of '_socket.socket' objects}
       32    0.000    0.000    0.000    0.000 {method 'settimeout' of '_socket.socket' objects}
      345    0.000    0.000    0.000    0.000 {method 'size' of 'torch._C._TensorBase' objects}
       13    0.001    0.000    0.001    0.000 {method 'softmax' of 'torch._C._TensorBase' objects}
       12    0.000    0.000    0.000    0.000 {method 'sort' of 'list' objects}
       32    0.000    0.000    0.000    0.000 {method 'split' of 'bytes' objects}
     1925    0.001    0.000    0.001    0.000 {method 'split' of 'str' objects}
        3    0.000    0.000    0.000    0.000 {method 'startswith' of 'bytes' objects}
    45546    0.010    0.000    0.010    0.000 {method 'startswith' of 'str' objects}
      608    0.000    0.000    0.000    0.000 {method 'storage' of 'torch._C._TensorBase' objects}
       80    0.000    0.000    0.000    0.000 {method 'strip' of 'str' objects}
       32    0.000    0.000    0.000    0.000 {method 'subn' of 're.Pattern' objects}
        1    0.000    0.000    0.000    0.000 {method 'sum' of 'torch._C._TensorBase' objects}
        3    0.000    0.000    0.000    0.000 {method 'tell' of '_io.BufferedReader' objects}
      209    0.000    0.000    0.000    0.000 {method 'to' of 'torch._C._TensorBase' objects}
        6    0.000    0.000    0.000    0.000 {method 'token_to_id' of 'tokenizers.Tokenizer' objects}
        1    0.000    0.000    0.000    0.000 {method 'tolist' of 'torch._C._TensorBase' objects}
        2    0.000    0.000    0.000    0.000 {method 'translate' of 'bytearray' objects}
       20    0.000    0.000    0.000    0.000 {method 'translate' of 'str' objects}
       12    0.000    0.000    0.000    0.000 {method 'transpose' of 'torch._C._TensorBase' objects}
       16    0.000    0.000    0.000    0.000 {method 'truncate' of '_io.StringIO' objects}
      147    0.573    0.004    0.573    0.004 {method 'uniform_' of 'torch._C._TensorBase' objects}
        1    0.000    0.000    0.000    0.000 {method 'union' of 'set' objects}
       16    0.000    0.000    0.000    0.000 {method 'update' of 'collections.OrderedDict' objects}
       23    0.000    0.000    0.000    0.000 {method 'update' of 'dict' objects}
       56    0.000    0.000    0.000    0.000 {method 'upper' of 'str' objects}
      318    0.000    0.000    0.000    0.000 {method 'values' of 'collections.OrderedDict' objects}
       29    0.000    0.000    0.000    0.000 {method 'values' of 'dict' objects}
       15    0.000    0.000    0.000    0.000 {method 'values' of 'mappingproxy' objects}
        8    0.000    0.000    0.000    0.000 {method 'version' of '_ssl._SSLSocket' objects}
       48    0.000    0.000    0.000    0.000 {method 'view' of 'torch._C._TensorBase' objects}
        8    0.000    0.000    0.000    0.000 {method 'write' of '_io.StringIO' objects}
        8    0.000    0.000    0.000    0.000 {method 'write' of '_ssl._SSLSocket' objects}
      225    0.001    0.000    0.001    0.000 {method 'zero_' of 'torch._C._TensorBase' objects}

@ArtemisDicoTiar
Copy link
Member Author

필요이상의 정보가 너무 많고 함수 call이 어떤게 뭔지 모르겠다.
그냥 time으로 측정해야겠다.

@ArtemisDicoTiar
Copy link
Member Author

parser variable load 0.0006670951843261719
hparams load 0.0014159679412841797
bert mlm config load 2.2503209114074707
tokenizer instance load 4.684930086135864
vocab2subwords instance load 4.686184883117676
rd(load from checkpoint) instance load 5.557384014129639
rd instance evaluation 5.558089971542358
rd device setting 5.5601279735565186
wisdomifier load 5.560143232345581
### desc: 왜 하필이면 오늘이야 ###
0: (가는 날이 장날, 0.7219)
1: (산넘어 산, 0.2652)
2: (갈수록 태산, 0.0123)
3: (등잔 밑이 어둡다, 0.0003)
4: (꿩 대신 닭, 0.0002)
5: (핑계 없는 무덤 없다, 0.0000)
6: (원숭이도 나무에서 떨어진다, 0.0000)
7: (소문난 잔치에 먹을 것 없다, 0.0000)
8: (고래 싸움에 새우 등 터진다, 0.0000)
9: (서당개 삼 년이면 풍월을 읊는다, 0.0000)
wisdomify infer time 5.6639931201934814

@ArtemisDicoTiar
Copy link
Member Author

해당 타임 측정 위치는 푸시된 코드 참고

ArtemisDicoTiar added a commit that referenced this issue Jul 19, 2021
@ArtemisDicoTiar
Copy link
Member Author

위 time 측정 결과를 보면 코드 최초 실행보터 wisdomifier 로드까지 5.56초, "왜 하필이면 오늘이야"를 infer후 출력까지 5.664초이다.
즉 하나의 문장 처리에 필요한 시간은 0.1초로 추정된다.

→ 문장을 2~3개정도 더 넣고 테스트 해보자.

@ArtemisDicoTiar
Copy link
Member Author

Readme.md에 제시되어 있는 예시, 발표자료에 제시되어 있는 예시를 바탕으로 여러번 실행했을 때의 결과를 측정했다.
역시나 wisdomifier 로드까지 5.5초, 그 후에 각 문장을 처리하는 데에는 0.1초가량 소요되었다.
CPU만을 이용해서 infer했는데 이정도의 시간이면 이후에 GPU 혹은 병렬처리까지 사용하게 되면 0.1초보다 짧은 시간을 기대해볼 수 있을 것 같다.
다만 출력되는 속담의 종류가 늘어남에 따라 시간이 늘어날수도 있을 것 같은데 그때 다시 측정해봐야겠다.

parser variable load 0.0006747245788574219
hparams load 0.0011746883392333984
bert mlm config load 2.1239826679229736
tokenizer instance load 4.5495758056640625
vocab2subwords instance load 4.550667762756348
rd(load from checkpoint) instance load 5.428152799606323
rd instance evaluation 5.428842782974243
rd device setting 5.430838584899902
wisdomifier load 5.430851697921753
### desc: 왜 하필이면 오늘이야 ###
wisdomify infer time 5.5398218631744385
### desc: 까불지말고 침착하여라 ###
wisdomify infer time 5.640568733215332
### desc: 근처에 있을 것이라고는 전혀 예상하지 못했다 ###
wisdomify infer time 5.743545770645142
### desc: 쓸데없는 변명은 그만 둬 ###
wisdomify infer time 5.842214822769165
### desc: 커피가 없으니 홍차라도 마시자 ###
wisdomify infer time 5.945018768310547
### desc: 결과가 좋아서 기쁘다 ###
wisdomify infer time 6.037582874298096
### desc: 실제로는 별거없네 ###
wisdomify infer time 6.129047632217407
### desc: 코카콜라?? 펩시 마시자 ###
wisdomify infer time 6.232730865478516

@eubinecto
Copy link
Member

아, 그러면 모델을 로드해놓고 계속 유지하는 방법만 찾으면, inference는 빠르게 할 수 있을 듯!

@ArtemisDicoTiar
Copy link
Member Author

아, 그러면 모델을 로드해놓고 계속 유지하는 방법만 찾으면, inference는 빠르게 할 수 있을 듯!

예스예스 아마 alpha service정도 deploy하는 단계가 되면 도커내에 데몬처럼 띄워놓고 request가 오면 처리하는 식으로 될듯.
https://github.com/hanxiao/bert-as-service 이 리포에서 속도가 빠른이유도 모델을 로드 미리 데몬형태로 해놓고 각 데몬이 infer처리만 해서 그런듯.
(모델 로드까지 한 데몬을 병렬워커(n개, 리드미 예제에서는 6~8개)를 띄운후에 클라이언트에서 요청이오면 각 요청별로 워커가 담당해서 처리)

저 리포 한번 뒤적거리면서 사용해보고 괜찮으면 디플로이 단계에서 사용하면 될거 같음! :)

@eubinecto
Copy link
Member

아, 그러면 모델을 로드해놓고 계속 유지하는 방법만 찾으면, inference는 빠르게 할 수 있을 듯!

예스예스 아마 alpha service정도 deploy하는 단계가 되면 도커내에 데몬처럼 띄워놓고 request가 오면 처리하는 식으로 될듯.
https://github.com/hanxiao/bert-as-service 이 리포에서 속도가 빠른이유도 모델을 로드 미리 데몬형태로 해놓고 각 데몬이 infer처리만 해서 그런듯.
(모델 로드까지 한 데몬을 병렬워커(n개, 리드미 예제에서는 6~8개)를 띄운후에 클라이언트에서 요청이오면 각 요청별로 워커가 담당해서 처리)

저 리포 한번 뒤적거리면서 사용해보고 괜찮으면 디플로이 단계에서 사용하면 될거 같음! :)

ainize 플랫폼에 bert-as-a-service를 활용해서 version_0를 deploy하는 것이 가능할까?

@eubinecto
Copy link
Member

문제는 로드하는 부분에 있음을 확인, 이슈는 여기에서 클로징

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants