TakeLab / spacy-udpipe

spaCy + UDPipe
MIT License
159 stars 11 forks source link

Installation on Windows with Python 3.9 fails #36

Closed BramVanroy closed 3 years ago

BramVanroy commented 3 years ago

Hello

I am trying to install spacy-udpipe on Windows with pip install spacy-udpipe on Python 3.9 but compilation fails. It does work on 3.7, however.

    Running setup.py install for ufal.udpipe ... error
    ERROR: Command errored out with exit status 1:
     command: 'C:\Users\bramv\.virtualenvs\spacy_conll-AkYdeqDT\Scripts\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\bramv\\AppData\\Local\\Temp\\pip-install-q97ncxd3\\ufal-udpipe_7e380460019c435ab2ef7e10d888e9fc\\setup.py'"'"'; __file__='"'"'C:\\Users\\bramv\\AppData\\Local\\Temp\\pip-install-q97ncxd3\\ufal-udpipe_7e380460019c435ab2ef7e10d888e9fc\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\bramv\AppData\Local\Temp\pip-record-s1_gy2u1\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\bramv\.virtualenvs\spacy_conll-AkYdeqDT\include\site\python3.9\ufal.udpipe'
         cwd: C:\Users\bramv\AppData\Local\Temp\pip-install-q97ncxd3\ufal-udpipe_7e380460019c435ab2ef7e10d888e9fc\
    Complete output (349 lines):
    running install
    running build
    running build_py
    creating build
    creating build\lib.win-amd64-3.9
    creating build\lib.win-amd64-3.9\ufal
    copying ufal\__init__.py -> build\lib.win-amd64-3.9\ufal
    copying ufal\udpipe.py -> build\lib.win-amd64-3.9\ufal
    warning: build_py: byte-compiling is disabled, skipping.

    running build_ext
    building 'ufal._udpipe' extension
    creating build\temp.win-amd64-3.9
    creating build\temp.win-amd64-3.9\Release
    creating build\temp.win-amd64-3.9\Release\udpipe
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Iudpipe/include -IC:\Users\bramv\.virtualenvs\spacy_conll-AkYdeqDT\include -Ic:\users\bramv\appdata\local\programs\python\python39\include -Ic:\users\bramv\appdata\local\programs\python\python39\include -IC:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include -IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt /EHsc /Tpudpipe/udpipe.cpp /Fobuild\temp.win-amd64-3.9\Release\udpipe/udpipe.obj -std=c++11 -fvisibility=hidden -w
    cl : Command line warning D9025 : overriding '/W3' with '/w'
    cl : Command line warning D9002 : ignoring unknown option '-std=c++11'
    cl : Command line warning D9002 : ignoring unknown option '-fvisibility=hidden'
    udpipe.cpp
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\xmemory(671): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(688): note: see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,_Ty1&,_Ty1&,unsigned __int64,bool,const ufal::udpipe::word&>(_Alloc &,_Objty *const ,_Ty1 &,_Ty1 &,unsigned __int64 &&,bool &&,const ufal::udpipe::word &)' being compiled
            with
            [
                _Alloc=std::allocator<ufal::udpipe::evaluator::evaluation_data::word_data>,
                _Ty=ufal::udpipe::evaluator::evaluation_data::word_data,
                _Ty1=size_t,
                _Objty=ufal::udpipe::evaluator::evaluation_data::word_data
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(688): note: see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,_Ty1&,_Ty1&,unsigned __int64,bool,const ufal::udpipe::word&>(_Alloc &,_Objty *const ,_Ty1 &,_Ty1 &,unsigned __int64 &&,bool &&,const ufal::udpipe::word &)' being compiled
            with
            [
                _Alloc=std::allocator<ufal::udpipe::evaluator::evaluation_data::word_data>,
                _Ty=ufal::udpipe::evaluator::evaluation_data::word_data,
                _Ty1=size_t,
                _Objty=ufal::udpipe::evaluator::evaluation_data::word_data
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(706): note: see reference to function template instantiation 'void std::vector<ufal::udpipe::evaluator::evaluation_data::word_data,std::allocator<ufal::udpipe::evaluator::evaluation_data::word_data>>::_Emplace_back_with_unused_capacity<_Ty1&,_Ty1&,_Ty,bool,const ufal::udpipe::word&>(_Ty1 &,_Ty1 &,_Ty &&,bool &&,const ufal::udpipe::word &)' being compiled
            with
            [
                _Ty1=size_t,
                _Ty=unsigned __int64
            ]
    udpipe/udpipe.cpp(1030): note: see reference to function template instantiation 'void std::vector<ufal::udpipe::evaluator::evaluation_data::word_data,std::allocator<ufal::udpipe::evaluator::evaluation_data::word_data>>::emplace_back<_Ty1&,_Ty2&,unsigned __int64,bool,const _Ty&>(_Ty1 &,_Ty2 &,unsigned __int64 &&,bool &&,const _Ty &)' being compiled
            with
            [
                _Ty1=size_t,
                _Ty2=size_t,
                _Ty=ufal::udpipe::word
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\xmemory(671): warning C4244: 'argument': conversion from '_Ty' to 'int', possible loss of data
            with
            [
                _Ty=__int64
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(688): note: see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,int&,bool&,const char*&,__int64>(_Alloc &,_Objty *const ,int &,bool &,const char *&,__int64 &&)' being compiled
            with
            [
                _Alloc=std::allocator<ufal::udpipe::morphodita::tag_filter::char_filter>,
                _Ty=ufal::udpipe::morphodita::tag_filter::char_filter,
                _Objty=ufal::udpipe::morphodita::tag_filter::char_filter
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(688): note: see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,int&,bool&,const char*&,__int64>(_Alloc &,_Objty *const ,int &,bool &,const char *&,__int64 &&)' being compiled
            with
            [
                _Alloc=std::allocator<ufal::udpipe::morphodita::tag_filter::char_filter>,
                _Ty=ufal::udpipe::morphodita::tag_filter::char_filter,
                _Objty=ufal::udpipe::morphodita::tag_filter::char_filter
            ]
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(706): note: see reference to function template instantiation 'void std::vector<ufal::udpipe::morphodita::tag_filter::char_filter,std::allocator<ufal::udpipe::morphodita::tag_filter::char_filter>>::_Emplace_back_with_unused_capacity<int&,bool&,const char*&,_Ty>(int &,bool &,const char *&,_Ty &&)' being compiled
            with
            [
                _Ty=__int64
            ]
    udpipe/udpipe.cpp(9096): note: see reference to function template instantiation 'void std::vector<ufal::udpipe::morphodita::tag_filter::char_filter,std::allocator<ufal::udpipe::morphodita::tag_filter::char_filter>>::emplace_back<int&,bool&,const char*&,__int64>(int &,bool &,const char *&,__int64 &&)' being compiled
    udpipe/udpipe.cpp(12978): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12960): note: while compiling class template member function 'bool ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::train(unsigned int,unsigned int,bool,unsigned int,unsigned int,float,float,float,float,bool,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,ufal::udpipe::utils::binary_encoder &,std::string &)'
    udpipe/udpipe.cpp(13389): note: see reference to function template instantiation 'bool ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::train(unsigned int,unsigned int,bool,unsigned int,unsigned int,float,float,float,float,bool,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,ufal::udpipe::utils::binary_encoder &,std::string &)' being compiled
    udpipe/udpipe.cpp(13388): note: see reference to class template instantiation 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>' being compiled
    udpipe/udpipe.cpp(12978): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12978): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12986): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12986): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12986): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12987): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12987): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12987): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix(gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::random_matrix'
    udpipe/udpipe.cpp(12994): error C2514: 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>': class template cannot be constructed
    udpipe/udpipe.cpp(12994): note: see declaration of 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>'
    udpipe/udpipe.cpp(12996): error C2670: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::matrix_trainer<3,16>::matrix_trainer': the function template cannot convert parameter 1 from type 'ufal::udpipe::morphodita::gru_tokenizer_network::matrix<3,16>'
    udpipe/udpipe.cpp(12996): error C2670: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::matrix_trainer<3,16>::matrix_trainer': the function template cannot convert parameter 1 from type 'ufal::udpipe::morphodita::gru_tokenizer_network::matrix<3,16>'
    udpipe/udpipe.cpp(13045): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13045): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, unsigned int)'
    udpipe/udpipe.cpp(13054): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13054): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, int)'
    udpipe/udpipe.cpp(13057): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13057): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13057): error C2530: 'embedding_dropout': references must be initialized
    udpipe/udpipe.cpp(13061): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13061): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13062): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13062): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13064): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13064): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13064): error C3536: 'embedding_dropout': cannot be used before it is initialized
    udpipe/udpipe.cpp(13064): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13065): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13065): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13065): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13067): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13067): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13067): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13068): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13068): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13068): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13069): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13069): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13069): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13069): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13072): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13072): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13074): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13074): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13074): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13075): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13075): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13075): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13076): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13076): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13076): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13076): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13076): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13076): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13080): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13080): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13080): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13084): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13084): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13114): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13114): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13114): error C2530: 'embedding_dropout': references must be initialized
    udpipe/udpipe.cpp(13119): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13119): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13122): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13122): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13128): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13128): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13128): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13129): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13129): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13130): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13130): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13132): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13132): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13132): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13135): error C3536: 'embedding_dropout': cannot be used before it is initialized
    udpipe/udpipe.cpp(13136): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13136): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13142): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13142): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13143): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13143): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13145): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13145): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13145): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13146): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13146): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13146): error C2088: '[': illegal for class
    udpipe/udpipe.cpp(13152): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13152): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13154): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13154): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>,std::allocator<gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<1,16>>>, size_t)'
    udpipe/udpipe.cpp(13230): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(13230): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix(const gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,ufal::udpipe::utils::binary_encoder &)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12948): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix'
    udpipe/udpipe.cpp(13230): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix(const gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,ufal::udpipe::utils::binary_encoder &)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12948): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix'
    udpipe/udpipe.cpp(13231): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(13231): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix(const gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,ufal::udpipe::utils::binary_encoder &)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12948): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix'
    udpipe/udpipe.cpp(13231): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix(const gru_tokenizer_network_trainer<16>::gru_tokenizer_network_implementation<16>::gru_tokenizer_network::matrix<R,C> &,ufal::udpipe::utils::binary_encoder &)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12948): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<16>::save_matrix'
    udpipe/udpipe.cpp(12978): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12960): note: while compiling class template member function 'bool ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::train(unsigned int,unsigned int,bool,unsigned int,unsigned int,float,float,float,float,bool,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,ufal::udpipe::utils::binary_encoder &,std::string &)'
    udpipe/udpipe.cpp(13393): note: see reference to function template instantiation 'bool ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::train(unsigned int,unsigned int,bool,unsigned int,unsigned int,float,float,float,float,bool,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,const std::vector<ufal::udpipe::morphodita::tokenized_sentence,std::allocator<ufal::udpipe::morphodita::tokenized_sentence>> &,ufal::udpipe::utils::binary_encoder &,std::string &)' being compiled
    udpipe/udpipe.cpp(13392): note: see reference to class template instantiation 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>' being compiled
    udpipe/udpipe.cpp(12978): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12978): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12986): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12986): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12986): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12987): error C2672: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix': no matching overloaded function found
    udpipe/udpipe.cpp(12987): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'R'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12987): error C2783: 'void ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix(gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<R,C> &,std::mt19937 &,float,float)': could not deduce template argument for 'C'
    udpipe/udpipe.cpp(12945): note: see declaration of 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::random_matrix'
    udpipe/udpipe.cpp(12994): error C2514: 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>': class template cannot be constructed
    udpipe/udpipe.cpp(12994): note: see declaration of 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>'
    udpipe/udpipe.cpp(12996): error C2670: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::matrix_trainer<3,24>::matrix_trainer': the function template cannot convert parameter 1 from type 'ufal::udpipe::morphodita::gru_tokenizer_network::matrix<3,24>'
    udpipe/udpipe.cpp(12996): error C2670: 'ufal::udpipe::morphodita::gru_tokenizer_network_trainer<24>::matrix_trainer<3,24>::matrix_trainer': the function template cannot convert parameter 1 from type 'ufal::udpipe::morphodita::gru_tokenizer_network::matrix<3,24>'
    udpipe/udpipe.cpp(13045): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13045): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, unsigned int)'
    udpipe/udpipe.cpp(13054): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13054): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, int)'
    udpipe/udpipe.cpp(13057): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13057): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13061): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13061): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13062): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13062): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13064): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13064): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13065): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13065): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13067): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13067): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13068): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13068): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13069): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13069): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13072): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13072): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13074): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13074): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13075): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13075): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13076): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13076): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13080): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13080): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13084): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13084): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13114): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13114): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13119): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13119): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13122): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1508): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept const'
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\vector(1498): note: or       '_Ty &std::vector<_Ty,_Alloc>::operator [](const allocator_traits<allocator_traits<_Alloc>::rebind_alloc<_Ty>>::size_type) noexcept'
    udpipe/udpipe.cpp(13122): note: while trying to match the argument list '(std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>, size_t)'
    udpipe/udpipe.cpp(13128): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>,std::allocator<gru_tokenizer_network_trainer<24>::gru_tokenizer_network_implementation<24>::gru_tokenizer_network::matrix<1,24>>>' (or there is no acceptable conversion)
    udpipe/udpipe.cpp(13128): fatal error C1003: error count exceeds 100; stopping compilation
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.24.28314\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'C:\Users\bramv\.virtualenvs\spacy_conll-AkYdeqDT\Scripts\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\bramv\\AppData\\Local\\Temp\\pip-install-q97ncxd3\\ufal-udpipe_7e380460019c435ab2ef7e10d888e9fc\\setup.py'"'"'; __file__='"'"'C:\\Users\\bramv\\AppData\\Local\\Temp\\pip-install-q97ncxd3\\ufal-udpipe_7e380460019c435ab2ef7e10d888e9fc\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\bramv\AppData\Local\Temp\pip-record-s1_gy2u1\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\bramv\.virtualenvs\spacy_conll-AkYdeqDT\include\site\python3.9\ufal.udpipe' Check the logs for full command output.

Any idea?

asajatovic commented 3 years ago

Hello,

obviously this seems related to the UDPipe library, for which ufal.udpipe is just a Python binding. Please check out the requirements for installing UDPipe.

BramVanroy commented 3 years ago

Right, but that is exactly the issue that I try to make.

I know that you can simply follow the manual build instructions, but it would be great if pre-built wheels are available, or if building was possible from within the setup.py - but I am not sure whether that is possible.

asajatovic commented 3 years ago

In the Actions card, in the Install dependencies step of the pipeline Python package, you can clearly see that there isn't a pre-built wheel for any Python version from 3.6+ on Linux (example) for ufal.udpipe. Based on the provided stacktrace, I suspect that your issue is somehow related to the C++ compiler, but I can't be sure until I get my hands on a Windows machine (or a Docker image), and maybe not even then. In the meantime, I suggest you try submiting an issue to the UDPipe repository and/or using Python 3.7 as you mentioned it works fine.

BramVanroy commented 3 years ago

@asajatovic Oops, my bad. I thought for a moment that I was in the udpipe repository. I'll ask there.