318318< p class ="caption "> < span class ="caption-text "> Libraries</ span > </ p >
319319< ul >
320320< li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/audio/stable "> torchaudio</ a > </ li >
321+ < li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/data "> TorchData</ a > </ li >
322+ < li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/torchrec "> TorchRec</ a > </ li >
323+ < li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/serve "> TorchServe</ a > </ li >
321324< li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/text/stable "> torchtext</ a > </ li >
322325< li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/vision/stable "> torchvision</ a > </ li >
323- < li class ="toctree-l1 "> < a class ="reference external " href ="https://pytorch.org/serve "> TorchServe</ a > </ li >
324326< li class ="toctree-l1 "> < a class ="reference external " href ="http://pytorch.org/xla/ "> PyTorch on XLA Devices</ a > </ li >
325327</ ul >
326328< p class ="caption "> < span class ="caption-text "> Community</ span > </ p >
@@ -417,6 +419,7 @@ <h1>Source code for torch</h1><div class="highlight"><pre>
417419< span class ="kn "> import</ span > < span class ="nn "> textwrap</ span >
418420< span class ="kn "> import</ span > < span class ="nn "> ctypes</ span >
419421< span class ="kn "> import</ span > < span class ="nn "> warnings</ span >
422+ < span class ="kn "> import</ span > < span class ="nn "> inspect</ span >
420423< span class ="k "> if</ span > < span class ="n "> sys</ span > < span class ="o "> .</ span > < span class ="n "> version_info</ span > < span class ="o "> <</ span > < span class ="p "> (</ span > < span class ="mi "> 3</ span > < span class ="p "> ,):</ span >
421424 < span class ="k "> raise</ span > < span class ="ne "> Exception</ span > < span class ="p "> (</ span > < span class ="s2 "> "Python 2 has reached end-of-life and is no longer supported by PyTorch."</ span > < span class ="p "> )</ span >
422425
@@ -431,7 +434,7 @@ <h1>Source code for torch</h1><div class="highlight"><pre>
431434
432435< span class ="kn "> from</ span > < span class ="nn "> ._six</ span > < span class ="kn "> import</ span > < span class ="n "> string_classes</ span > < span class ="k "> as</ span > < span class ="n "> _string_classes</ span >
433436
434- < span class ="kn "> from</ span > < span class ="nn "> typing</ span > < span class ="kn "> import</ span > < span class ="n "> Set</ span > < span class ="p "> ,</ span > < span class ="n "> Type</ span > < span class ="p "> ,</ span > < span class ="n "> TYPE_CHECKING</ span > < span class ="p "> ,</ span > < span class ="n "> Union</ span >
437+ < span class ="kn "> from</ span > < span class ="nn "> typing</ span > < span class ="kn "> import</ span > < span class ="n "> Set</ span > < span class ="p "> ,</ span > < span class ="n "> Type</ span > < span class ="p "> ,</ span > < span class ="n "> TYPE_CHECKING</ span > < span class ="p "> ,</ span > < span class ="n "> Union</ span > < span class =" p " > , </ span > < span class =" n " > Callable </ span >
435438< span class ="kn "> import</ span > < span class ="nn "> builtins</ span >
436439
437440< span class ="n "> __all__</ span > < span class ="o "> =</ span > < span class ="p "> [</ span >
@@ -630,10 +633,15 @@ <h1>Source code for torch</h1><div class="highlight"><pre>
630633< span class ="s1 "> '''</ span > < span class ="p "> )</ span > < span class ="o "> .</ span > < span class ="n "> strip</ span > < span class ="p "> ())</ span > < span class ="kn "> from</ span > < span class ="bp "> None</ span >
631634 < span class ="k "> raise</ span > < span class ="c1 "> # If __file__ is not None the cause is unknown, so just re-raise.</ span >
632635
633-
634- < span class ="n "> __all__</ span > < span class ="o "> +=</ span > < span class ="p "> [</ span > < span class ="n "> name</ span > < span class ="k "> for</ span > < span class ="n "> name</ span > < span class ="ow "> in</ span > < span class ="nb "> dir</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="p "> )</ span >
635- < span class ="k "> if</ span > < span class ="n "> name</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ]</ span > < span class ="o "> !=</ span > < span class ="s1 "> '_'</ span > < span class ="ow "> and</ span >
636- < span class ="ow "> not</ span > < span class ="n "> name</ span > < span class ="o "> .</ span > < span class ="n "> endswith</ span > < span class ="p "> (</ span > < span class ="s1 "> 'Base'</ span > < span class ="p "> )]</ span >
636+ < span class ="k "> for</ span > < span class ="n "> name</ span > < span class ="ow "> in</ span > < span class ="nb "> dir</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="p "> ):</ span >
637+ < span class ="k "> if</ span > < span class ="n "> name</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ]</ span > < span class ="o "> !=</ span > < span class ="s1 "> '_'</ span > < span class ="ow "> and</ span > < span class ="ow "> not</ span > < span class ="n "> name</ span > < span class ="o "> .</ span > < span class ="n "> endswith</ span > < span class ="p "> (</ span > < span class ="s1 "> 'Base'</ span > < span class ="p "> ):</ span >
638+ < span class ="n "> __all__</ span > < span class ="o "> .</ span > < span class ="n "> append</ span > < span class ="p "> (</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
639+ < span class ="n "> obj</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="p "> ,</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
640+ < span class ="k "> if</ span > < span class ="p "> (</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="n "> Callable</ span > < span class ="p "> )</ span > < span class ="ow "> or</ span > < span class ="n "> inspect</ span > < span class ="o "> .</ span > < span class ="n "> isclass</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> )):</ span > < span class ="c1 "> # type: ignore[arg-type]</ span >
641+ < span class ="k "> if</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="o "> .</ span > < span class ="vm "> __module__</ span > < span class ="o "> !=</ span > < span class ="s1 "> 'torch'</ span > < span class ="p "> ):</ span >
642+ < span class ="c1 "> # TODO: fix their module from C++ side</ span >
643+ < span class ="k "> if</ span > < span class ="n "> name</ span > < span class ="ow "> not</ span > < span class ="ow "> in</ span > < span class ="p "> [</ span > < span class ="s1 "> 'DisableTorchFunction'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'Generator'</ span > < span class ="p "> ]:</ span >
644+ < span class ="n "> obj</ span > < span class ="o "> .</ span > < span class ="vm "> __module__</ span > < span class ="o "> =</ span > < span class ="s1 "> 'torch'</ span >
637645
638646< span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="n "> TYPE_CHECKING</ span > < span class ="p "> :</ span >
639647 < span class ="c1 "> # issue 38137 and python issue 43367. Submodules of a C extension are</ span >
@@ -1144,7 +1152,9 @@ <h1>Source code for torch</h1><div class="highlight"><pre>
11441152< span class ="k "> for</ span > < span class ="n "> name</ span > < span class ="ow "> in</ span > < span class ="nb "> dir</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="o "> .</ span > < span class ="n "> _VariableFunctions</ span > < span class ="p "> ):</ span >
11451153 < span class ="k "> if</ span > < span class ="n "> name</ span > < span class ="o "> .</ span > < span class ="n "> startswith</ span > < span class ="p "> (</ span > < span class ="s1 "> '__'</ span > < span class ="p "> )</ span > < span class ="ow "> or</ span > < span class ="n "> name</ span > < span class ="ow "> in</ span > < span class ="n "> PRIVATE_OPS</ span > < span class ="p "> :</ span >
11461154 < span class ="k "> continue</ span >
1147- < span class ="nb "> globals</ span > < span class ="p "> ()[</ span > < span class ="n "> name</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="o "> .</ span > < span class ="n "> _VariableFunctions</ span > < span class ="p "> ,</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
1155+ < span class ="n "> obj</ span > < span class ="o "> =</ span > < span class ="nb "> getattr</ span > < span class ="p "> (</ span > < span class ="n "> _C</ span > < span class ="o "> .</ span > < span class ="n "> _VariableFunctions</ span > < span class ="p "> ,</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
1156+ < span class ="n "> obj</ span > < span class ="o "> .</ span > < span class ="vm "> __module__</ span > < span class ="o "> =</ span > < span class ="s1 "> 'torch'</ span >
1157+ < span class ="nb "> globals</ span > < span class ="p "> ()[</ span > < span class ="n "> name</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> obj</ span >
11481158 < span class ="n "> __all__</ span > < span class ="o "> .</ span > < span class ="n "> append</ span > < span class ="p "> (</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
11491159
11501160< span class ="c1 "> ################################################################################</ span >
0 commit comments