_nn.pyi 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. # @generated by tools/pyi/gen_pyi.py from torch/_C/_nn.pyi.in
  2. # mypy: disable-error-code="type-arg"
  3. from collections.abc import Sequence
  4. from typing import Literal, overload
  5. from torch import memory_format, Tensor
  6. from torch.types import _bool, _device, _dtype, _int, _size
  7. # Defined in tools/autograd/templates/python_nn_functions.cpp
  8. def adaptive_avg_pool2d(input: Tensor, output_size: _int | _size) -> Tensor: ...
  9. def adaptive_avg_pool3d(input: Tensor, output_size: _int | _size) -> Tensor: ...
  10. def adaptive_max_pool2d(
  11. input: Tensor,
  12. output_size: _int | _size,
  13. ) -> tuple[Tensor, Tensor]: ...
  14. def adaptive_max_pool3d(
  15. input: Tensor,
  16. output_size: _int | _size,
  17. ) -> tuple[Tensor, Tensor]: ...
  18. def avg_pool2d(
  19. input: Tensor,
  20. kernel_size: _int | _size,
  21. stride: _int | _size | None = None,
  22. padding: _int | _size = 0,
  23. ceil_mode: bool = False,
  24. count_include_pad: bool = True,
  25. divisor_override: int | None = None,
  26. ) -> Tensor: ...
  27. def avg_pool3d(
  28. input: Tensor,
  29. kernel_size: _int | _size,
  30. stride: _int | _size | None = None,
  31. padding: _int | _size = 0,
  32. ceil_mode: bool = False,
  33. count_include_pad: bool = True,
  34. divisor_override: int | None = None,
  35. ) -> Tensor: ...
  36. def binary_cross_entropy(
  37. input: Tensor,
  38. target: Tensor,
  39. weight: Tensor | None = None,
  40. reduction: str = ...,
  41. ) -> Tensor: ...
  42. def col2im(
  43. input: Tensor,
  44. output_size: _int | _size,
  45. kernel_size: _int | _size,
  46. dilation: _int | _size,
  47. stride: _int | _size | None = None,
  48. padding: _int | _size = 0,
  49. ) -> Tensor: ...
  50. def cross_entropy_loss(
  51. input: Tensor,
  52. target: Tensor,
  53. weight: Tensor | None = None,
  54. reduction: str = ...,
  55. ignore_index: int = -100,
  56. label_smoothing: float = 0.0,
  57. ) -> Tensor: ...
  58. def elu(
  59. input: Tensor,
  60. alpha: float = 1.0,
  61. scale: float = 1.0,
  62. input_scale: float = 1.0,
  63. ) -> Tensor: ...
  64. def elu_(input: Tensor, alpha: float = ...) -> Tensor: ...
  65. def fractional_max_pool2d(
  66. input: Tensor,
  67. kernel_size: _int | _size,
  68. output_size: _int | _size,
  69. _random_samples: Tensor,
  70. ) -> tuple[Tensor, Tensor]: ...
  71. def fractional_max_pool3d(
  72. input: Tensor,
  73. kernel_size: _int | _size,
  74. output_size: _int | _size,
  75. _random_samples: Tensor,
  76. ) -> tuple[Tensor, Tensor]: ...
  77. def gelu(input: Tensor, approximate: str = ...) -> Tensor: ...
  78. def glu(input: Tensor, dim: int = -1) -> Tensor: ...
  79. def hardsigmoid(input: Tensor, *, out: Tensor | None = None) -> Tensor: ...
  80. def hardsigmoid_(input: Tensor) -> Tensor: ...
  81. def hardswish(input: Tensor) -> Tensor: ...
  82. def hardswish_(input: Tensor) -> Tensor: ...
  83. def hardtanh(
  84. input: Tensor,
  85. min_val: float = ...,
  86. max_val: float = ...,
  87. *,
  88. out: Tensor | None = None,
  89. ) -> Tensor: ...
  90. def hardtanh_(
  91. input: Tensor,
  92. min_val: float = ...,
  93. max_val: float = ...,
  94. ) -> Tensor: ...
  95. def huber_loss(
  96. input: Tensor,
  97. target: Tensor,
  98. reduction: str = ...,
  99. delta: float = 1.0,
  100. ) -> Tensor: ...
  101. def leaky_relu(
  102. input: Tensor,
  103. negative_slope: float = ...,
  104. *,
  105. out: Tensor | None = None,
  106. ) -> Tensor: ...
  107. def leaky_relu_(input: Tensor, negative_slope: float = ...) -> Tensor: ...
  108. def linear(
  109. input: Tensor,
  110. weight: Tensor,
  111. bias: Tensor | None = None,
  112. ) -> Tensor: ...
  113. def log_sigmoid(input: Tensor) -> Tensor: ...
  114. def max_pool2d_with_indices(
  115. input: Tensor,
  116. kernel_size: _int | _size,
  117. stride: _int | _size | None = None,
  118. padding: _int | _size = 0,
  119. dilation: _int | _size = 1,
  120. ceil_mode: bool = False,
  121. ) -> tuple[Tensor, Tensor]: ...
  122. def max_pool3d_with_indices(
  123. input: Tensor,
  124. kernel_size: _int | _size,
  125. stride: _int | _size | None = None,
  126. padding: _int | _size = 0,
  127. dilation: _int | _size = 1,
  128. ceil_mode: bool = False,
  129. ) -> tuple[Tensor, Tensor]: ...
  130. def max_unpool2d(
  131. input: Tensor,
  132. indices: Tensor,
  133. output_size: Sequence[int] | None,
  134. ) -> Tensor: ...
  135. def max_unpool3d(
  136. input: Tensor,
  137. indices: Tensor,
  138. output_size: Sequence[int] | None,
  139. stride: _int | _size,
  140. padding: _int | _size,
  141. ) -> Tensor: ...
  142. def one_hot(tensor: Tensor, num_classes: int = ...) -> Tensor: ...
  143. def pad(
  144. input: Tensor,
  145. pad: Sequence[int],
  146. mode: str = ...,
  147. value: float | None = None,
  148. ) -> Tensor: ...
  149. def scaled_dot_product_attention(
  150. query: Tensor,
  151. key: Tensor,
  152. value: Tensor,
  153. attn_mask: Tensor | None = None,
  154. dropout_p: float = 0.0,
  155. is_causal: bool = False,
  156. scale: float | None = None,
  157. enable_gqa: bool = False,
  158. ) -> Tensor: ...
  159. def softplus(
  160. input: Tensor,
  161. beta: float = ...,
  162. threshold: float = ...,
  163. ) -> Tensor: ...
  164. def softshrink(input: Tensor, lambd: float = ...) -> Tensor: ...
  165. # Defined in aten/src/ATen/native/mkldnn/Linear.cpp
  166. def mkldnn_linear(input: Tensor, weight: Tensor, bias: Tensor | None) -> Tensor: ...
  167. # Defined at aten/src/ATen/native/mkldnn/MKLDNNConversions.cpp
  168. def mkldnn_reorder_conv2d_weight(
  169. self: Tensor,
  170. padding: list,
  171. stride: list,
  172. dilatation: list,
  173. groups: int,
  174. ) -> Tensor: ...
  175. def mkldnn_reorder_conv3d_weight(
  176. self: Tensor,
  177. padding: list,
  178. stride: list,
  179. dilatation: list,
  180. groups: int,
  181. ) -> Tensor: ...
  182. # Defined in aten/src/ATen/native/mkldnn/Prelu.cpp
  183. def mkldnn_prelu(input: Tensor, weight: Tensor) -> Tensor: ...
  184. # Defined at tools/autograd/templates/python_nn_functions.cpp
  185. @overload
  186. def _parse_to(
  187. device: _device,
  188. dtype: _dtype,
  189. non_blocking: _bool,
  190. copy: _bool,
  191. *,
  192. memory_format: memory_format,
  193. ) -> tuple[_device, _dtype, _bool, memory_format]: ...
  194. @overload
  195. def _parse_to(
  196. dtype: _dtype,
  197. non_blocking: _bool,
  198. copy: _bool,
  199. *,
  200. memory_format: memory_format,
  201. ) -> tuple[_device, _dtype, _bool, memory_format]: ...
  202. @overload
  203. def _parse_to(
  204. tensor: Tensor,
  205. non_blocking: _bool,
  206. copy: _bool,
  207. *,
  208. memory_format: memory_format,
  209. ) -> tuple[_device, _dtype, _bool, memory_format]: ...
  210. # Defined in aten/src/ATen/native/PackedSequence.cpp
  211. def pad_sequence(
  212. sequences: list[Tensor] | tuple[Tensor, ...],
  213. batch_first: bool = False,
  214. padding_value: float = 0.0,
  215. padding_side: Literal["left", "right"] = "right",
  216. ) -> Tensor: ...
  217. # Upsample functions used by torch.nn.functional.interpolate
  218. def upsample_nearest1d(
  219. input: Tensor,
  220. output_size: Sequence[int] | None,
  221. scale_factors: Sequence[float] | None,
  222. ) -> Tensor: ...
  223. def upsample_nearest2d(
  224. input: Tensor,
  225. output_size: Sequence[int] | None,
  226. scale_factors: Sequence[float] | None,
  227. ) -> Tensor: ...
  228. def upsample_nearest3d(
  229. input: Tensor,
  230. output_size: Sequence[int] | None,
  231. scale_factors: Sequence[float] | None,
  232. ) -> Tensor: ...
  233. def _upsample_nearest_exact1d(
  234. input: Tensor,
  235. output_size: Sequence[int] | None,
  236. scale_factors: Sequence[float] | None,
  237. ) -> Tensor: ...
  238. def _upsample_nearest_exact2d(
  239. input: Tensor,
  240. output_size: Sequence[int] | None,
  241. scale_factors: Sequence[float] | None,
  242. ) -> Tensor: ...
  243. def _upsample_nearest_exact3d(
  244. input: Tensor,
  245. output_size: Sequence[int] | None,
  246. scale_factors: Sequence[float] | None,
  247. ) -> Tensor: ...
  248. def upsample_linear1d(
  249. input: Tensor,
  250. output_size: Sequence[int] | None,
  251. align_corners: bool,
  252. scale_factors: Sequence[float] | None,
  253. ) -> Tensor: ...
  254. def _upsample_bilinear2d_aa(
  255. input: Tensor,
  256. output_size: Sequence[int] | None,
  257. align_corners: bool,
  258. scale_factors: Sequence[float] | None,
  259. ) -> Tensor: ...
  260. def upsample_bilinear2d(
  261. input: Tensor,
  262. output_size: Sequence[int] | None,
  263. align_corners: bool,
  264. scale_factors: Sequence[float] | None,
  265. ) -> Tensor: ...
  266. def upsample_trilinear3d(
  267. input: Tensor,
  268. output_size: Sequence[int] | None,
  269. align_corners: bool,
  270. scale_factors: Sequence[float] | None,
  271. ) -> Tensor: ...
  272. def _upsample_bicubic2d_aa(
  273. input: Tensor,
  274. output_size: Sequence[int] | None,
  275. align_corners: bool,
  276. scale_factors: Sequence[float] | None,
  277. ) -> Tensor: ...
  278. def upsample_bicubic2d(
  279. input: Tensor,
  280. output_size: Sequence[int] | None,
  281. align_corners: bool,
  282. scale_factors: Sequence[float] | None,
  283. ) -> Tensor: ...
  284. def flatten_dense_tensors(tensors: list[Tensor]) -> Tensor: ...
  285. def unflatten_dense_tensors(flat: Tensor, tensors: list[Tensor]) -> list[Tensor]: ...