diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md deleted file mode 100644 index 4b534c6392b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ 仅参数名不一致 ]torch.autograd.function.FunctionCtx.mark_non_differentiable -### [torch.autograd.function.FunctionCtx.mark_non_differentiable](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.mark_non_differentiable.html#torch.autograd.function.FunctionCtx.mark_non_differentiable) -```python -torch.autograd.function.FunctionCtx.mark_non_differentiable(*args) -``` - -### [paddle.autograd.PyLayerContext.mark_non_differentiable](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext_cn.html#mark-non-differentiable-self-tensors) -```python -paddle.autograd.PyLayerContext.mark_non_differentiable(*tensors) -``` - -两者功能一致,仅参数名不一致,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------- | ------------ | ----------------------------- | -| args | tensors | 需要标记不需要反向的 Tensor。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.Unfold.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.Unfold.md deleted file mode 100644 index 899dec470f1..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.Unfold.md +++ /dev/null @@ -1,28 +0,0 @@ -## [ 仅参数名不一致 ]torch.nn.Unfold -### [torch.nn.Unfold](https://pytorch.org/docs/stable/generated/torch.nn.Unfold.html?highlight=nn+unfold#torch.nn.Unfold) -```python -torch.nn.Unfold(kernel_size, - dilation=1, - padding=0, - stride=1) -``` - -### [paddle.nn.Unfold](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Unfold_cn.html#unfold) -```python -paddle.nn.Unfold(kernel_sizes=[3, 3], - strides=1, - paddings=1, - dilations=1, - name=None) -``` - -其中功能一致, 仅参数名不一致,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| kernel_size | kernel_sizes | 卷积核的尺寸。 | -| dilation | dilations | 卷积膨胀。 | -| padding | paddings | 每个维度的扩展,仅参数名不一致。 | -| stride | strides | 卷积步长,仅参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.functional.log_sigmoid.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.functional.logsigmoid.md similarity index 100% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.functional.log_sigmoid.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/torch.nn.functional.logsigmoid.md diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/transformers.StoppingCriteriaList.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/transformers.StoppingCriteriaList.md deleted file mode 100644 index 330c2787468..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/args_name_diff/transformers.StoppingCriteriaList.md +++ /dev/null @@ -1,19 +0,0 @@ -## [ 仅参数名不一致 ]transformers.StoppingCriteriaList -### [transformers.StoppingCriteriaList](https://github.com/huggingface/transformers/blob/d625294d79341662784495551abdf45e6cb9372f/src/transformers/generation/stopping_criteria.py#L503) -```python -transformers.StoppingCriteriaList(input_ids: torch.LongTensor, scores: torch.FloatTensor, **kwargs) -``` - -### [paddlenlp.generation.StoppingCriteriaList](https://github.com/PaddlePaddle/PaddleNLP/blob/e336e78c338d2514ee6c937982ce5d8c960b85ff/paddlenlp/generation/stopping_criteria.py#L72) -```python -paddlenlp.generation.StoppingCriteriaList(input_ids: paddle.Tensor, scores: paddle.Tensor, **kwargs) -``` - -两者功能一致,仅参数名不一致,具体如下: - -### 参数映射 - -| transformers | PaddlePaddle | 备注 | -| ----------------- | ----------------- | --------------------------------------- | -| input_ids | input_ids | 输入(tokens) 的 id 组成的 Tensor。 | -| scores | scores | 得分组成的 Tensor,仅参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/composite_implement/torch.is_pinned.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/composite_implement/torch.Tensor.is_pinned.md similarity index 100% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/composite_implement/torch.is_pinned.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/composite_implement/torch.Tensor.is_pinned.md diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomAffine.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomAffine.md deleted file mode 100644 index ae88388597e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomAffine.md +++ /dev/null @@ -1,55 +0,0 @@ -## [ 输入参数类型不一致 ]torchvision.transforms.RandomAffine -### [torchvision.transforms.RandomAffine](https://pytorch.org/vision/main/generated/torchvision.transforms.RandomAffine.html) -```python -torchvision.transforms.RandomAffine( - degrees: Union[List[float], Tuple[float, ...], float], - translate: Optional[Tuple[float, float]] = None, - scale: Optional[Tuple[float, float]] = None, - shear: Union[List[float], Tuple[float, ...], float] = None, - interpolation: InterpolationMode = InterpolationMode.NEAREST, - fill: Union[int, float, List[float], Tuple[float, ...]] = 0, - center: Optional[Union[List[int], Tuple[int, ...]]] = None -) -``` - -### [paddle.vision.transforms.RandomAffine](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomAffine_cn.html) -```python -paddle.vision.transforms.RandomAffine( - degrees: Union[Tuple[float, float], float, int], - translate: Optional[Union[Sequence[float], float, int]] = None, - scale: Optional[Tuple[float, float]] = None, - shear: Optional[Union[Sequence[float], float, int]] = None, - interpolation: Union[str, int] = 'nearest', - fill: Union[int, List[int], Tuple[int, ...]] = 0, - center: Optional[Tuple[int, int]] = None, - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -两者功能一致但参数类型不一致,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------------ | ---------------- | ------------------------ | -| degrees | degrees | 随机旋转变换的角度大小。 | -| translate | translate | 随机水平平移和垂直平移变化的位移大小。 | -| scale | scale | 随机伸缩变换的比例大小。 | -| shear | shear | 随机剪切角度的大小范围。 | -| interpolation | interpolation | 插值的方法,PyTorch 参数为 InterpolationMode 枚举类, Paddle 参数为 int 或 string,需要转写。 | -| fill | fill | 对图像扩展时填充的像素值。 | -| center | center | 仿射变换的中心点坐标。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | - - -### 转写示例 -#### interpolation:插值的方法 -```python -# PyTorch 写法 -transform = torchvision.transforms.RandomAffine(degrees=30, translate=(0.1, 0.2), scale=(0.8, 1.2), shear=10, interpolation=torchvision.transforms.InterpolationMode.BILINEAR, fill=0, center=(100, 100)) -transformed_img = transform(img) - -# Paddle 写法 -transform = paddle.vision.transforms.RandomAffine(degrees=30, translate=(0.1, 0.2), scale=(0.8, 1.2), shear=10, interpolation='bilinear', fill=0, center=(100, 100)) -transformed_img = transform(img) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomRotation.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomRotation.md deleted file mode 100644 index 2e0e568f556..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.RandomRotation.md +++ /dev/null @@ -1,48 +0,0 @@ -## [ 输入参数类型不一致 ]torchvision.transforms.RandomRotation -### [torchvision.transforms.RandomRotation](https://pytorch.org/vision/main/generated/torchvision.transforms.RandomRotation.html) -```python -torchvision.transforms.RandomRotation( - degrees: Union[int, List[float], Tuple[float, ...]], - interpolation: InterpolationMode = InterpolationMode.NEAREST, - expand: bool = False, - center: Optional[Union[List[float], Tuple[float, ...]]] = None, - fill: Union[int, float, Tuple[int, ...]] = 0 -) -``` - -### [paddle.vision.transforms.RandomRotation](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomRotation_cn.html) -```python -paddle.vision.transforms.RandomRotation( - degrees: Union[int, List[float], Tuple[float, ...]], - interpolation: Union[str, int] = 'nearest', - expand: bool = False, - center: Optional[Tuple[int, int]] = None, - fill: int = 0, - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -两者功能一致,但输入参数类型不一致。 - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------------- | ------------------ | ----------------------------------------------- | -| degrees | degrees | 旋转角度范围。 | -| interpolation | interpolation | 插值的方法,两者类型不一致,PyTorch 为 InterpolationMode 枚举类, Paddle 为 int 或 string,需要转写。 | -| expand | expand | 是否扩展图像尺寸。 | -| center | center | 旋转的中心点坐标。 | -| fill | fill | 对图像扩展时填充的值。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | - -### 转写示例 -#### interpolation:插值的方法 -```python -# PyTorch 写法 -transform = torchvision.transforms.RandomRotation(degrees=45, interpolation=torchvision.transforms.InterpolationMode.BILINEAR, expand=True, center=(100, 100), fill=(255, 0, 0)) -rotated_img = transform(img) - -# Paddle 写法 -transform = paddle.vision.transforms.RandomRotation(degrees=45, interpolation='bilinear', expand=True, center=(100, 100), fill=(255, 0, 0)) -rotated_img = transform(img) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.affine.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.affine.md deleted file mode 100644 index 54764e9ab5a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.affine.md +++ /dev/null @@ -1,51 +0,0 @@ -## [ 输入参数类型不一致 ]torchvision.transforms.functional.affine -### [torchvision.transforms.functional.affine](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.affine.html) -```python -torchvision.transforms.functional.affine(img: Tensor, - angle: float, - translate: List[int], - scale: float, - shear: List[float], - interpolation: InterpolationMode = InterpolationMode.NEAREST, - fill: Optional[List[float]] = None, - center: Optional[List[int]] = None) -``` - -### [paddle.vision.transforms.affine](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/affine_cn.html) -```python -paddle.vision.transforms.affine( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - angle: Union[float, int], - translate: List[float], - scale: float, - shear: Union[List[float], Tuple[float, ...]], - interpolation: Union[str, int] = 'nearest', - fill: Union[int, List[int], Tuple[int, ...]] = 0, - center: Optional[Tuple[int, int]] = None -) -``` - -两者功能一致,但输入参数类型不一致,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ----------- | ------------ | ------------------------------------------------------------ | -| img | img | 输入图片。 | -| angle | angle | 旋转角度。 | -| translate | translate | 随机水平平移和垂直平移变化的位移大小。 | -| scale | scale | 控制缩放比例。 | -| shear | shear | 剪切角度值。 | -| interpolation | interpolation | 插值的方法,两者类型不一致,PyTorch 为 InterpolationMode 枚举类, Paddle 为 int 或 string,需要转写。 | -| fill | fill | 对图像扩展时填充的像素值。 | -| center | center | 仿射变换的中心点坐标 。 | - -### 转写示例 -#### interpolation:插值的方法 -```python -# PyTorch 写法 -rotated_img = torchvision.transforms.functional.affine(img, angle=30.0, translate=[10, 20], scale=1.2, shear=[10.0, 5.0], interpolation=torchvision.transforms.InterpolationMode.BILINEAR, fill=[0, 0, 0], center=[100, 100]) - -# Paddle 写法 -rotated_img = paddle.vision.transforms.affine(img=img, angle=30.0, translate=[10, 20], scale=1.2, shear=[10.0, 5.0], interpolation='bilinear', fill=[0, 0, 0], center=[100, 100]) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.perspective.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.perspective.md deleted file mode 100644 index 086695af1b1..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.perspective.md +++ /dev/null @@ -1,45 +0,0 @@ -## [ 输入参数类型不一致 ]torchvision.transforms.functional.perspective -### [torchvision.transforms.functional.perspective](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.perspective.html#perspective) -```python -torchvision.transforms.functional.perspective( - img: Tensor, - startpoints: List[List[int]], - endpoints: List[List[int]], - interpolation: InterpolationMode = InterpolationMode.BILINEAR, - fill: Optional[List[float]] = None -) -``` - -### [paddle.vision.transforms.perspective](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/transforms/perspective_cn.html#cn-api-paddle-vision-transforms-perspective) -```python -paddle.vision.transforms.perspective( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - startpoints: List[List[float]], - endpoints: List[List[float]], - interpolation: Union[str, int] = 'nearest', - fill: Union[int, List[int], Tuple[int, ...]] = 0 -) -``` - -两者功能一致,但参数类型不一致。 - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ----------------- | ----------------- | ------------ | -| img | img | 输入图片。 | -| startpoints | startpoints | 在原图上的四个角(左上、右上、右下、左下)的坐标。 | -| endpoints | endpoints | 在原图上的四个角(左上、右上、右下、左下)的坐标。 | -| interpolation | interpolation | 插值的方法,两者类型不一致,PyTorch 为 InterpolationMode 枚举类, Paddle 为 int 或 string,需要转写。 | -| fill | fill | 对图像扩展时填充的像素值。 | - - -### 转写示例 -#### interpolation:插值的方法 -```python -# PyTorch 写法 -processed_img = torchvision.transforms.functional.perspective(img, startpoints, endpoints, interpolation=torchvision.transforms.InterpolationMode.BILINEAR, fill=[0, 0, 0]) - -# Paddle 写法 -processed_img = paddle.vision.transforms.perspective(img=img, startpoints=startpoints, endpoints=endpoints, interpolation='bilinear', fill=[0, 0, 0]) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transform.functional.resize.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.resize.md similarity index 100% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transform.functional.resize.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.resize.md diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.rotate.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.rotate.md deleted file mode 100644 index 63af0e66d10..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_type_diff/torchvision.transforms.functional.rotate.md +++ /dev/null @@ -1,34 +0,0 @@ -## [ 输入参数类型不一致 ]torchvision.transforms.functional.rotate -### [torchvision.transforms.functional.rotate](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.rotate.html) -```python -torchvision.transforms.functional.rotate(img: Tensor, angle: float, interpolation: InterpolationMode = InterpolationMode.NEAREST, expand: bool = False, center: Optional[List[int]] = None, fill: Optional[List[float]] = None) -``` - -### [paddle.vision.transforms.rotate](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/transforms/rotate_cn.html#cn-api-paddle-vision-transforms-rotate) -```python -paddle.vision.transforms.rotate(img, angle, interpolation='nearest', expand=False, center=None, fill=0) -``` - -两者功能一致,但输入参数类型不一致。 - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------------------------------- | ------------------ | -------- | -| img | img | 输入图片。| -| angle | angle | 旋转角度。| -| interpolation | interpolation | 插值的方法,两者类型不一致,PyTorch 为 InterpolationMode 枚举类, Paddle 为 int 或 string,需要转写。 | -| expand | expand | 是否要对旋转后的图片进行大小扩展。| -| center | center | 旋转中心。| -| fill | fill | 旋转图像外部区域的 RGB 像素填充值。| - - -### 转写示例 -#### interpolation:插值的方法 -```python -# PyTorch 写法 -torchvision.transforms.functional.rotate(img, angle=90, interpolation=torchvision.transforms.InterpolationMode.BILINEAR) - -# Paddle 写法 -paddle.vision.transforms.rotate(img=img, angle=90, interpolation='bilinear') -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.cuda.Stream__upper.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.cuda.Stream.md similarity index 100% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.cuda.Stream__upper.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.cuda.Stream.md diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.rand.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.rand.md deleted file mode 100644 index f5a85a60955..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.rand.md +++ /dev/null @@ -1,83 +0,0 @@ -## [ 输入参数用法不一致 ]torch.rand -### [torch.rand](https://pytorch.org/docs/stable/generated/torch.rand.html?highlight=rand#torch.rand) -```python -torch.rand(*size, - *, - generator=None, - out=None, - dtype=None, - layout=torch.strided, - device=None, - requires_grad=False, - pin_memory=False) -``` - -### [paddle.rand](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/rand_cn.html#rand) -```python -paddle.rand(shape, - dtype=None, - name=None) -``` - -其中 torch 的 `size` 和 paddle 的 `shape` 用法不一致,torch 还支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| *size | shape | 表示输出形状大小,PyTorch 以可变参数方式传入,Paddle 以 list 或 tuple 的方式传入。 | -| generator | - | 用于采样的伪随机数生成器, Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | -| out | - | 表示输出的 Tensor,Paddle 无此参数。 | -| dtype | dtype | 表示数据类型。 | -| layout | - | 表示布局方式,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | -| device | - | 表示 Tensor 存放位置,Paddle 无此参数,需要转写。 | -| requires_grad | - | 表示是否不阻断梯度传导,Paddle 无此参数,需要转写。 | -| pin_memory | - | 表示是否使用锁页内存, Paddle 无此参数,需要转写。 | - - -### 转写示例 -#### *size:输出形状大小 -```python -# PyTorch 写法 -torch.rand(3, 5) - -# Paddle 写法 -paddle.rand([3, 5]) -``` - -#### out:指定输出 -```python -# PyTorch 写法 -torch.rand([3, 5], out=y) - -# Paddle 写法 -paddle.assign(paddle.rand([3, 5]), y) -``` - -#### device: Tensor 的设备 -```python -# PyTorch 写法 -torch.rand(3, 5, device=torch.device('cpu')) - -# Paddle 写法 -y = paddle.rand([3, 5]) -y.cpu() -``` - -#### requires_grad:是否需要求反向梯度,需要修改该 Tensor 的 stop_gradient 属性 -```python -# PyTorch 写法 -x = torch.rand([3, 5], requires_grad=True) - -# Paddle 写法 -x = paddle.rand([3, 5]) -x.stop_gradient = False -``` - -#### pin_memory:是否分配到固定内存上 -```python -# PyTorch 写法 -torch.rand(3, 5, pin_memory=True) - -# Paddle 写法 -paddle.rand([3, 5]).pin_memory() -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.split.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.split.md deleted file mode 100644 index a757f119d4c..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/input_args_usage_diff/torch.split.md +++ /dev/null @@ -1,38 +0,0 @@ -## [ 输入参数用法不一致 ]torch.split -### [torch.split](https://pytorch.org/docs/stable/generated/torch.split.html?highlight=torch%20split#torch.split) -```python -torch.split(tensor, - split_size_or_sections, - dim=0) -``` - -### [paddle.split](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/split_cn.html#split) -```python -paddle.split(x, - num_or_sections, - axis=0, - name=None) -``` - -其中 PyTorch 的 `split_size_or_sections` 与 Paddle 的 `num_or_sections` 用法不一致,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| tensor | x | 表示输入 Tensor ,仅参数名不一致。 | -| split_size_or_sections | num_or_sections | 当类型为 int 时,torch 表示单个块大小,paddle 表示结果有多少个块,需要转写。 | -| dim | axis | 表示需要分割的维度,仅参数名不一致。 | - - -### 转写示例 -#### split_size_or_sections:单个块大小 -```python -split_size = 2 -dim = 1 -# PyTorch 写法 -torch.split(a, split_size, dim) -# 在输入 dim 时,返回 (values, indices) - -# Paddle 写法 -paddle.split(a, a.shape[dims]/split_size, dim) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_rank.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_rank.md deleted file mode 100644 index a4e7e1a9d81..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_rank.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]fairscale.nn.model_parallel.initialize.get_model_parallel_rank -### [fairscale.nn.model_parallel.initialize.get_model_parallel_rank](https://github.com/facebookresearch/fairscale/blob/164cc0f3170b4a3951dd84dda29c3e1504ac4d6e/fairscale/nn/model_parallel/initialize.py#L155) -```python -fairscale.nn.model_parallel.initialize.get_model_parallel_rank() -``` - -### [paddle.distributed.fleet.base.topology._HYBRID_PARALLEL_GROUP.get_model_parallel_rank](https://github.com/PaddlePaddle/Paddle/blob/ddac1b431483ddc0f1ee600e799aa31fc0a75961/python/paddle/distributed/fleet/base/topology.py#L463) -```python -paddle.distributed.fleet.base.topology._HYBRID_PARALLEL_GROUP.get_model_parallel_rank() -``` - -两者功能一致,均无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_world_size.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_world_size.md deleted file mode 100644 index f7e77ed3b12..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/fairscale.nn.model_parallel.initialize.get_model_parallel_world_size.md +++ /dev/null @@ -1,11 +0,0 @@ -## [ 仅 API 调用方式不一致 ]fairscale.nn.model_parallel.initialize.get_model_parallel_world_size -### [fairscale.nn.model_parallel.initialize.get_model_parallel_world_size](https://github.com/facebookresearch/fairscale/blob/164cc0f3170b4a3951dd84dda29c3e1504ac4d6e/fairscale/nn/model_parallel/initialize.py#L150) -```python -fairscale.nn.model_parallel.initialize.get_model_parallel_world_size() -``` - -### [paddle.distributed.fleet.base.topology._HYBRID_PARALLEL_GROUP._mp_degree](https://github.com/PaddlePaddle/Paddle/blob/ddac1b431483ddc0f1ee600e799aa31fc0a75961/python/paddle/distributed/fleet/base/topology.py#L185) -```python -paddle.distributed.fleet.base.topology._HYBRID_PARALLEL_GROUP._mp_degree -``` -两者功能一致,均无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/flash_attn.__version__.split.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/flash_attn.__version__.split.md deleted file mode 100644 index 4864b6a4514..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/flash_attn.__version__.split.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]flash_attn._\_version__.split -### [flash_attn._\_version__.split](https://github.com/Dao-AILab/flash-attention/blob/72e27c6320555a37a83338178caa25a388e46121/flash_attn/__init__.py) -```python -flash_attn.__version__.split(sep=None, maxsplit=-1) -``` - -### [paddle._\_version__.split](https://github.com/PaddlePaddle/Paddle/tree/develop) -```python -paddle.__version__.split(sep=None, maxsplit=-1) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.clamp_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.clamp_.md deleted file mode 100644 index d0194099d89..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.clamp_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.clamp_ -### [torch.Tensor.clamp_](https://pytorch.org/docs/stable/generated/torch.Tensor.clamp_.html?highlight=clamp_#torch.Tensor.clamp_) -```python -torch.Tensor.clamp_(min=None, max=None) -``` - -### [paddle.Tensor.clip_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#id6) -```python -paddle.Tensor.clip_(min=None, max=None, name=None) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.col_indices.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.col_indices.md deleted file mode 100644 index 18d95da9805..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.col_indices.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.col_indices -### [torch.Tensor.col_indices](https://pytorch.org/docs/stable/generated/torch.Tensor.col_indices.html) -```python -torch.Tensor.col_indices() -``` - -### [paddle.Tensor.cols]() -```python -paddle.Tensor.cols() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.conj_physical.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.conj_physical.md deleted file mode 100644 index 0012606562e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.conj_physical.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.conj_physical -### [torch.Tensor.conj_physical](https://pytorch.org/docs/stable/generated/torch.Tensor.conj_physical.html#torch.Tensor.conj_physical) -```python -torch.Tensor.conj_physical() -``` - -### [paddle.Tensor.conj](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#conj-name-none) -```python -paddle.Tensor.conj(name=None) -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.crow_indices.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.crow_indices.md deleted file mode 100644 index 8fae880836d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.crow_indices.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.crow_indices -### [torch.Tensor.crow_indices](https://pytorch.org/docs/stable/generated/torch.Tensor.crow_indices.html) -```python -torch.Tensor.crow_indices() -``` - -### [paddle.Tensor.crows]() -```python -paddle.Tensor.crows() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.det.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.det.md deleted file mode 100644 index af2ea21c9f7..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.det.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.det -### [torch.Tensor.det](https://pytorch.org/docs/stable/generated/torch.Tensor.det.html?highlight=det#torch.Tensor.det) -```python -torch.Tensor.det() -``` - -### [paddle.linalg.det](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/linalg/det_cn.html#det) -```python -paddle.linalg.det(x, name=None) -``` - -Pytorch 为 Tensor 类方法,PaddlePaddle 为普通函数,将调用 torch.Tensor 类方法的 self Tensor 传入到 Paddle 接口中即可。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.device.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.device.md deleted file mode 100644 index 0d6a778b9c9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.device.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.device -### [torch.Tensor.device](https://pytorch.org/docs/stable/generated/torch.Tensor.device.html) -```python -torch.Tensor.device -``` - -### [paddle.Tensor.place](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#place) -```python -paddle.Tensor.place -``` - -两者功能一致,均无参数,都用来查看一个 Tensor 的设备位置。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.erf_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.erf_.md deleted file mode 100644 index 2522212c24f..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.erf_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.erf_ -### [torch.Tensor.erf_](https://pytorch.org/docs/stable/generated/torch.Tensor.erf_.html) -```python -torch.Tensor.erf_() -``` - -### [paddle.erf_]() -```python -paddle.erf_(x) -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.expm1_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.expm1_.md deleted file mode 100644 index bbb1b16a69b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.expm1_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.expm1_ -### [torch.Tensor.expm1_](https://pytorch.org/docs/stable/generated/torch.Tensor.expm1_.html) -```python -torch.Tensor.expm1_() -``` - -### [paddle.expm1_]() -```python -paddle.expm1_(x) -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix.md deleted file mode 100644 index 8467e925391..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.fix -### [torch.Tensor.fix](https://pytorch.org/docs/stable/generated/torch.Tensor.fix.html?highlight=fix#torch.Tensor.fix) -```python -torch.Tensor.fix() -``` - -### [paddle.Tensor.trunc](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#trunc-name-none) -```python -paddle.Tensor.trunc(name=None) -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix_.md deleted file mode 100644 index 319329edbf7..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.fix_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.fix_ -### [torch.Tensor.fix_](https://pytorch.org/docs/stable/generated/torch.Tensor.fix_.html) -```python -torch.Tensor.fix_() -``` - -### [paddle.Tensor.trunc_]() -```python -paddle.Tensor.trunc_() -``` - -两者功能一致,均无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.imag.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.imag.md deleted file mode 100644 index 4f2715a5bca..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.imag.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.imag -### [torch.Tensor.imag](https://pytorch.org/docs/stable/generated/torch.Tensor.imag.html) -```python -torch.Tensor.imag -``` - -### [paddle.Tensor.imag](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#imag-name-none) -```python -paddle.Tensor.imag -``` - -两者功能一致,均无参数,用于返回原复数 Tensor 的虚部数值。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_inference.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_inference.md deleted file mode 100644 index ff578646bfd..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_inference.md +++ /dev/null @@ -1,21 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.is_inference -### [torch.Tensor.is_inference](https://pytorch.org/docs/stable/generated/torch.Tensor.is_inference.html) -```python -torch.Tensor.is_inference() -``` - -### [paddle.Tensor.stop_gradient]() -```python -paddle.Tensor.stop_gradient -``` - -两者功能一致,无参数。 `is_inference` 会强制关闭梯度记录。并且不能在中途设置梯度,而 `stop_gradient` 仅为停止计算该算子梯度,可在中途重新设为 `True` ,`Paddle` 为近似实现。 - -### 转写示例 -```python -# PyTorch 写法 -x.is_inference() - -# Paddle 写法 -x.stop_gradient -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse.md deleted file mode 100644 index 344fa5dc258..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse.md +++ /dev/null @@ -1,23 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.is_sparse -### [torch.Tensor.is_sparse](https://pytorch.org/docs/stable/generated/torch.Tensor.is_sparse.html) -```python -torch.Tensor.is_sparse -``` - -### [paddle.Tensor.is_sparse](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html) -```python -paddle.Tensor.is_sparse() -``` - -两者功能一致,但使用方式不一致,前者可以直接访问属性,后者需要调用方法,具体如下: - -### 转写示例 -```python -# torch 版本可以直接访问属性 -# x = torch.rand(3) -# print(x.is_sparse) - -# Paddle 版本需要调用 -x = paddle.rand([3]) -print(x.is_sparse()) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse_csr.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse_csr.md deleted file mode 100644 index a621b5ab2c9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.is_sparse_csr.md +++ /dev/null @@ -1,21 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.is_sparse_csr -### [torch.Tensor.is_sparse_csr](https://pytorch.org/docs/stable/generated/torch.Tensor.is_sparse_csr.html) -```python -torch.Tensor.is_sparse_csr -``` - -### [paddle.Tensor.is_sparse_csr](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html) -```python -paddle.Tensor.is_sparse_csr() -``` - -两者功能一致,但使用方式不一致,前者可以直接访问属性,后者需要调用方法,具体如下: - -### 转写示例 -```python -# torch 版本可以直接访问属性 -x.is_sparse_csr - -# Paddle 版本需要调用 -x.is_sparse_csr() -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.movedim.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.movedim.md deleted file mode 100644 index a2273b00a4d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.movedim.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.movedim -### [torch.Tensor.movedim](https://pytorch.org/docs/stable/generated/torch.Tensor.movedim.html) -```python -torch.Tensor.movedim(source, destination) -``` - -### [paddle.Tensor.moveaxis](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/moveaxis_cn.html) -```python -paddle.Tensor.moveaxis(source, destination, name = None) -``` - -两者功能一致且参数用法一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma.md deleted file mode 100644 index 16785a43b35..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.mvlgamma -### [torch.Tensor.mvlgamma](https://pytorch.org/docs/stable/generated/torch.Tensor.mvlgamma.html#torch-tensor-mvlgamma) -```python -torch.Tensor.mvlgamma(p) -``` - -### [paddle.Tensor.multigammaln](https://github.com/PaddlePaddle/Paddle/blob/be090bd0bc9ac7a8595296c316b3a6ed3dc60ba6/python/paddle/tensor/math.py#L5099) -```python -paddle.Tensor.multigammaln(p, name=None) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma_.md deleted file mode 100644 index 420cb3624c6..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.mvlgamma_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.mvlgamma_ -### [torch.Tensor.mvlgamma_](https://pytorch.org/docs/stable/generated/torch.Tensor.mvlgamma_.html#torch-tensor-mvlgamma) -```python -torch.Tensor.mvlgamma_(p) -``` - -### [paddle.Tensor.multigammaln_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/multigammaln__cn.html#multigammaln) -```python -paddle.Tensor.multigammaln_(p, name=None) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative.md deleted file mode 100644 index 7b70d7a3760..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.negative -### [torch.Tensor.negative](https://pytorch.org/docs/stable/generated/torch.negative.html#torch.negative) -```python -torch.Tensor.negative() -``` - -### [paddle.Tensor.neg](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/neg_cn.html#cn-api-paddle-neg) -```python -paddle.Tensor.neg() -``` - -两者功能一致,均无参数,用于计算输入 x 的相反数并返回。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative_.md deleted file mode 100644 index c294b75b952..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.negative_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.negative_ -### [torch.Tensor.negative_](https://pytorch.org/docs/stable/generated/torch.Tensor.negative_.html) -```python -torch.Tensor.negative_() -``` - -### [paddle.Tensor.neg_]() -```python -paddle.Tensor.neg_() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.nelement.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.nelement.md deleted file mode 100644 index 5525ed9db9f..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.nelement.md +++ /dev/null @@ -1,14 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.nelement -### [torch.Tensor.nelement](https://pytorch.org/docs/stable/generated/torch.Tensor.nelement.html?highlight=nelement#torch.Tensor.nelement) -```python -torch.Tensor.nelement() -``` - -### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/fluid/layers/size_cn.html#cn-api-fluid-layers-size) -```python -paddle.Tensor.size() -``` - - - -两者功能一致,均无参数,用于返回张量的单元数量,是一个 int 型的整数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.numel.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.numel.md deleted file mode 100644 index 59e977371d9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.numel.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.numel -### [torch.Tensor.numel](https://pytorch.org/docs/stable/generated/torch.numel.html?highlight=numel#torch.numel) -```python -torch.Tensor.numel() -``` - -### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/guides/beginner/tensor_cn.html#tensor-shape) -```python -paddle.Tensor.size -``` - -两者功能一致,均无参数,用于返回张量的单元数量,是一个 int 型的整数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.positive.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.positive.md deleted file mode 100644 index 1ca198147d5..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.positive.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.positive -### [torch.Tensor.positive](https://pytorch.org/docs/stable/generated/torch.Tensor.positive.html#torch.Tensor.positive) -```python -torch.Tensor.positive() -``` - -### [paddle.positive](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/positive_cn.html#positive) -```python -paddle.positive(x) -``` - -Pytorch 为 Tensor 类方法,Paddle 为普通函数,将调用 torch.Tensor 类方法的 self Tensor 传入到 Paddle 接口中即可。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.real.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.real.md deleted file mode 100644 index 312bd67fe7a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.real.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.real -### [torch.Tensor.real](https://pytorch.org/docs/stable/generated/torch.Tensor.real.html) -```python -torch.Tensor.real -``` - -### [paddle.Tensor.real](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#real-name-none) -```python -paddle.Tensor.real -``` - -两者功能一致,均无参数,用于返回 Tensor 的实部数值。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.retain_grad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.retain_grad.md deleted file mode 100644 index 0a003bcc91f..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.retain_grad.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.retain_grad -### [torch.Tensor.retain_grad](https://pytorch.org/docs/stable/generated/torch.Tensor.retain_grad.html) -```python -torch.Tensor.retain_grad() -``` - -### [paddle.Tensor.retain_grads](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Overview_cn.html#paddle) -```python -paddle.Tensor.retain_grads() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.sparse_mask.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.sparse_mask.md deleted file mode 100644 index 8f7814e550d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.sparse_mask.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.sparse_mask -### [torch.Tensor.sparse_mask](https://pytorch.org/docs/stable/generated/torch.Tensor.sparse_mask.html) -```python -torch.Tensor.sparse_mask(mask) -``` - -### [paddle.sparse.mask_as](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/sparse/mask_as_cn.html) -```python -paddle.sparse.mask_as(x, mask, name=None) -``` - -两者功能一致,但调用方式不同,torch 通过 Tensor 类方法调用,而 paddle 是直接调用函数,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.square_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.square_.md deleted file mode 100644 index 857e6b30c80..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.square_.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.square_ -### [torch.Tensor.square_](https://pytorch.org/docs/stable/generated/torch.Tensor.square_.html) -```python -torch.Tensor.square_() -``` - -### [paddle.square_]() -```python -paddle.square_(x) -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.to_sparse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.to_sparse.md deleted file mode 100644 index 970d2a6c512..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.to_sparse.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.Tensor.to_sparse -### [torch.Tensor.to_sparse](https://pytorch.org/docs/stable/generated/torch.Tensor.to_sparse.html#torch.Tensor.to_sparse) -```python -torch.Tensor.to_sparse(sparse_dim) -``` - -### [paddle.Tensor.to_sparse_coo]() -```python -paddle.Tensor.to_sparse_coo(sparse_dim) -``` - -两者功能一致,参数用法一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.Function.forward.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.Function.forward.md deleted file mode 100644 index 504fb2b5c6e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.Function.forward.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.Function.forward -### [torch.autograd.Function.forward](https://pytorch.org/docs/stable/generated/torch.autograd.Function.forward.html#torch.autograd.Function.forward) -```python -torch.autograd.Function.forward(ctx, *args, **kwargs) -``` - -### [paddle.autograd.PyLayer.forward](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayer_cn.html#forward-ctx-args-kwargs) -```python -paddle.autograd.PyLayer.forward(ctx, *args, **kwargs) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.enable_grad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.enable_grad.md deleted file mode 100644 index 5cb1fecbde5..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.enable_grad.md +++ /dev/null @@ -1,10 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.enable_grad -### [torch.autograd.enable_grad](https://pytorch.org/docs/stable/generated/torch.enable_grad.html#enable-grad) -```python -torch.autograd.enable_grad() -``` - -### [paddle.enable_grad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/enable_grad.html#enable-grad) -```python -paddle.enable_grad() -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.md deleted file mode 100644 index 54f529aa4dd..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx -### [torch.autograd.function.FunctionCtx]() -```python -torch.autograd.function.FunctionCtx -``` - -### [paddle.autograd.PyLayerContext](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext_cn.html#pylayercontext) -```python -paddle.autograd.PyLayerContext -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.save_for_backward.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.save_for_backward.md deleted file mode 100644 index 5a63180e878..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.save_for_backward.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.save_for_backward -### [torch.autograd.function.FunctionCtx.save_for_backward](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.save_for_backward.html#torch.autograd.function.FunctionCtx.save_for_backward) -```python -torch.autograd.function.FunctionCtx.save_for_backward(*tensors) -``` - -### [paddle.autograd.PyLayerContext.save_for_backward](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext_cn.html#save-for-backward-tensors) -```python -paddle.autograd.PyLayerContext.save_for_backward(*tensors) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.set_materialize_grads.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.set_materialize_grads.md deleted file mode 100644 index ffd92e6cd48..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.function.FunctionCtx.set_materialize_grads.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.set_materialize_grads -### [torch.autograd.function.FunctionCtx.set_materialize_grads](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.set_materialize_grads.html#torch.autograd.function.FunctionCtx.set_materialize_grads) -```python -torch.autograd.function.FunctionCtx.set_materialize_grads(value) -``` - -### [paddle.autograd.PyLayerContext.set_materialize_grads](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext_cn.html#set-materialize-grads-self-value) -```python -paddle.autograd.PyLayerContext.set_materialize_grads(value) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.grad_mode.set_grad_enabled.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.grad_mode.set_grad_enabled.md deleted file mode 100644 index f47abbdf0bf..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.grad_mode.set_grad_enabled.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.grad_mode.set_grad_enabled -### [torch.autograd.grad_mode.set_grad_enabled](https://docs.pytorch.org/docs/stable/generated/torch.autograd.grad_mode.set_grad_enabled.html#torch.autograd.grad_mode.set_grad_enabled) -```python -torch.autograd.grad_mode.set_grad_enabled(mode) -``` - -### [paddle.set_grad_enabled](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/set_grad_enabled_cn.html) -```python -paddle.set_grad_enabled(mode) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.graph.saved_tensors_hooks.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.graph.saved_tensors_hooks.md deleted file mode 100644 index ff6c4e522d9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.autograd.graph.saved_tensors_hooks.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.autograd.graph.saved_tensors_hooks -### [torch.autograd.graph.saved_tensors_hooks](https://pytorch.org/docs/stable/autograd.html?highlight=saved_tensors_hooks#torch.autograd.graph.saved_tensors_hooks) -```python -torch.autograd.graph.saved_tensors_hooks(pack_hook, unpack_hook) -``` - -### [paddle.autograd.saved_tensors_hooks](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/saved_tensors_hooks_cn.html) -```python -paddle.autograd.saved_tensors_hooks(pack_hook, unpack_hook) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cuda.is_built.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cuda.is_built.md deleted file mode 100644 index bcf05bb6a1b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cuda.is_built.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.backends.cuda.is_built -### [torch.backends.cuda.is_built](https://pytorch.org/docs/stable/backends.html?highlight=torch+backends+cudnn+is_available#torch.backends.cuda.is_built) -```python -torch.backends.cuda.is_built() -``` - -### [paddle.device.is_compiled_with_cuda](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/is_compiled_with_cuda_cn.html#is-compiled-with-cuda) -```python -paddle.device.is_compiled_with_cuda() -``` - -检测是否在 cuda 环境下编译安装包。无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cudnn.version.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cudnn.version.md deleted file mode 100644 index 2b9a38727cc..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.backends.cudnn.version.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.backends.cudnn.version -### [torch.backends.cudnn.version](https://pytorch.org/docs/stable/generated/torch.backends.cudnn.version.html) -```python -torch.backends.cudnn.version() -``` - -### [paddle.device.get\_cudnn\_version](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/get_cudnn_version_cn.html#get-cudnn-version) -```python -paddle.device.get_cudnn_version() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cda.StreamContext.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cda.StreamContext.md deleted file mode 100644 index c83df4e7edd..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cda.StreamContext.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.StreamContext -### [torch.cuda.StreamContext](https://pytorch.org/docs/stable/generated/torch.cuda.StreamContext.html#torch.cuda.StreamContext) -```python -torch.cuda.StreamContext(stream) -``` - -### [paddle.device.stream_guard](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/device/stream_guard_cn.html#stream-guard) -```python -paddle.device.stream_guard(stream) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cpu.current_device.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cpu.current_device.md deleted file mode 100644 index e66413d08e0..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cpu.current_device.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cpu.current_device -### [torch.cpu.current_device](https://pytorch.org/docs/stable/generated/torch.cpu.current_device.html) -```python -torch.cpu.current_device() -``` - -### [paddle.get_device](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/get_device_cn.html#get-device) -```python -paddle.get_device() -``` - -功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.get_device_name.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.get_device_name.md deleted file mode 100644 index 02192c8d79d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.get_device_name.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.get_device_name -### [torch.cuda.get_device_name](https://pytorch.org/docs/stable/generated/torch.cuda.get_device_name.html) -```python -torch.cuda.get_device_name(device=None) -``` - -### [paddle.device.cuda.get_device_name](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/get_device_name_cn.html) -```python -paddle.device.cuda.get_device_name(device=None) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.is_bf16_supported.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.is_bf16_supported.md deleted file mode 100644 index ca2a674f51a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.is_bf16_supported.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.is_bf16_supported -### [torch.cuda.is_bf16_supported](https://pytorch.org/docs/stable/cuda.html) -```python -torch.cuda.is_bf16_supported() -``` - -### [paddle.amp.is_bfloat16_supported](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/amp/is_bfloat16_supported_cn.html#is-bfloat16-supported) -```python -paddle.amp.is_bfloat16_supported() -``` - -功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_allocated.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_allocated.md deleted file mode 100644 index 8dd6856a6ee..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_allocated.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.max_memory_allocated -### [torch.cuda.max_memory_allocated](https://pytorch.org/docs/stable/generated/torch.cuda.max_memory_allocated.html#torch.cuda.max_memory_allocated) -```python -torch.cuda.max_memory_allocated(device) -``` - -### [paddle.device.cuda.max_memory_allocated](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/max_memory_allocated_cn.html) -```python -paddle.device.cuda.max_memory_allocated(device) -``` - -功能一致,参数完全一致(PyTorch 参数是 PaddlePaddle 参数子集),具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_reserved.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_reserved.md deleted file mode 100644 index d428dcc16a1..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.max_memory_reserved.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.max_memory_reserved -### [torch.cuda.max_memory_reserved](https://pytorch.org/docs/stable/generated/torch.cuda.max_memory_reserved.html#torch.cuda.max_memory_reserved) -```python -torch.cuda.max_memory_reserved(device) -``` - -### [paddle.device.cuda.max_memory_reserved](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/max_memory_reserved_cn.html) -```python -paddle.device.cuda.max_memory_reserved(device) -``` - -功能一致,参数完全一致(PyTorch 参数是 PaddlePaddle 参数子集),具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.nvtx.range_pop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.nvtx.range_pop.md deleted file mode 100644 index 51598ede266..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.nvtx.range_pop.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.nvtx.range_pop -### [torch.cuda.nvtx.range_pop](https://pytorch.org/docs/stable/generated/torch.cuda.nvtx.range_pop.html#torch.cuda.nvtx.range_pop) -```python -torch.cuda.nvtx.range_pop() -``` - -### [paddle.framework.core.nvprof_nvtx_pop](https://github.com/PaddlePaddle/Paddle/blob/645dfb4040a15712cea9ccfed4dcb0655aeeb0ea/paddle/fluid/pybind/pybind.cc#L2468) -```python -paddle.framework.core.nvprof_nvtx_pop() -``` - -功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_allocated.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_allocated.md deleted file mode 100644 index 1f49b45e0d6..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_allocated.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.reset_max_memory_allocated -### [torch.cuda.reset_max_memory_allocated](https://pytorch.org/docs/stable/generated/torch.cuda.reset_max_memory_allocated.html#torch.cuda.reset_max_memory_allocated) -```python -torch.cuda.reset_max_memory_allocated(device) -``` - -### [paddle.device.cuda.reset_max_memory_allocated](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/reset_max_memory_allocated_cn.html) -```python -paddle.device.cuda.reset_max_memory_allocated(device) -``` - -功能不一致(Pytorch 通过调用 reset_peak_memory_stats 函数实现,重置所有 CUDA 内存分配器跟踪的峰值统计。PaddlePaddle 仅重置分配给 Tensor 的显存峰值统计),参数完全一致(PyTorch 参数是 PaddlePaddle 参数子集),具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_cached.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_cached.md deleted file mode 100644 index 63c64aaf0fb..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.reset_max_memory_cached.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.reset_max_memory_cached -### [torch.cuda.reset_max_memory_cached](https://docs.pytorch.org/docs/stable/generated/torch.cuda.reset_max_memory_cached.html#torch-cuda-reset-max-memory-cached) -```python -torch.cuda.reset_max_memory_cached(device) -``` - -### [paddle.device.cuda.reset_max_memory_reserved](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/reset_max_memory_reserved_cn.html) -```python -paddle.device.cuda.reset_max_memory_reserved(device) -``` - -功能不一致(Pytorch 目前已弃用该函数。类似函数通过调用 reset_peak_memory_stats 函数实现,重置所有 CUDA 内存分配器跟踪的峰值统计。PaddlePaddle 仅重置由 Allocator 管理的显存峰值统计),参数完全一致(PyTorch 参数是 PaddlePaddle 参数子集),具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.set_stream.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.set_stream.md deleted file mode 100644 index fbc123a820d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.set_stream.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.set_stream -### [torch.cuda.set_stream](https://pytorch.org/docs/stable/generated/torch.cuda.set_stream.html#torch.cuda.set_stream) -```python -torch.cuda.set_stream(stream) -``` - -### [paddle.device.set_stream](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/device/set_stream_cn.html#set-stream) -```python -paddle.device.set_stream(stream=None) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.stream.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.stream.md deleted file mode 100644 index e7c79abd0ad..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.stream.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.cuda.stream -### [torch.cuda.stream](https://pytorch.org/docs/stable/generated/torch.cuda.stream.html) -```python -torch.cuda.stream(stream) -``` - -### [paddle.device.stream_guard](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/stream_guard_cn.html#stream-guard) -```python -paddle.device.stream_guard(stream) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.ReduceOp.PRODUCT.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.ReduceOp.PRODUCT.md deleted file mode 100644 index 50b1149ed5b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.ReduceOp.PRODUCT.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.distributed.ReduceOp.PRODUCT -### [torch.distributed.ReduceOp.PRODUCT](https://pytorch.org/docs/stable/distributed.html#torch.distributed.ReduceOp) -```python -torch.distributed.ReduceOp.PRODUCT -``` - -### [paddle.distributed.ReduceOp.PROD](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/ReduceOp_cn.html#reduceop) -```python -paddle.distributed.ReduceOp.PROD -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.is_nccl_available.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.is_nccl_available.md deleted file mode 100644 index 7f9cd0c9568..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributed.is_nccl_available.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.distributed.is_nccl_available -### [torch.distributed.is_nccl_available](https://pytorch.org/docs/stable/distributed.html#torch.distributed.is_nccl_available) -```python -torch.distributed.is_nccl_available() -``` - -### [paddle.core.is_compiled_with_nccl](https://github.com/PaddlePaddle/Paddle/blob/61de6003525166856157b6220205fe53df638376/python/paddle/jit/sot/utils/paddle_api_config.py#L159) -```python -paddle.core.is_compiled_with_nccl() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.constraints.Constraint.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.constraints.Constraint.md deleted file mode 100644 index 0619f720026..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.constraints.Constraint.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.distributions.constraints.Constraint -### [torch.distributions.constraints.Constraint](https://pytorch.org/docs/stable/distributions.html#module-torch.distributions.constraints) -```python -torch.distributions.constraints.Constraint() -``` - -### [paddle.distribution.constraint.Constraint](https://github.com/PaddlePaddle/Paddle/blob/develop/python/paddle/distribution/constraint.py) -```python -paddle.distribution.constraint.Constraint() -``` - -两者功能一致,无参数,对象均使用 `check` 进行回调。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.distribution.Distribution.log_prob.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.distribution.Distribution.log_prob.md deleted file mode 100644 index b963db968e0..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.distribution.Distribution.log_prob.md +++ /dev/null @@ -1,13 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.distributions.distribution.Distribution.log_prob -### [torch.distributions.distribution.Distribution.log\_prob](https://pytorch.org/docs/stable/distributions.html#torch.distributions.distribution.Distribution.log_prob) -```python -torch.distributions.distribution.Distribution.log_prob(value) -``` - -### [paddle.distribution.Distribution.log\_prob](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distribution/Distribution_cn.html#log-prob-value) -```python -paddle.distribution.Distribution.log_prob(value) -``` - - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.kl.kl_divergence.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.kl.kl_divergence.md deleted file mode 100644 index d034adb8b25..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.distributions.kl.kl_divergence.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.distributions.kl.kl_divergence -### [torch.distributions.kl.kl_divergence](https://pytorch.org/docs/stable/distributions.html?highlight=torch+distributions+kl+kl_divergence#torch.distributions.kl.kl_divergence) -```python -torch.distributions.kl.kl_divergence(p, q) -``` - -### [paddle.distribution.kl_divergence](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distribution/kl_divergence_cn.html) -```python -paddle.distribution.kl_divergence(p, q) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.is_inference.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.is_inference.md deleted file mode 100644 index 62fb2d91143..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.is_inference.md +++ /dev/null @@ -1,21 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.is_inference -### [torch.is_inference]() -```python -torch.is_inference(input) -``` - -### [paddle.Tensor.stop_gradient]() -```python -paddle.Tensor.stop_gradient -``` - -两者功能一致,无参数。 `is_inference` 会强制关闭梯度记录。并且不能在中途设置梯度,而 `stop_gradient` 仅为停止计算该算子梯度,可在中途重新设为 `True` ,`Paddle` 为近似实现。 - -### 转写示例 -```python -# PyTorch 写法 -torch.is_inference(x) - -# Paddle 写法 -x.stop_gradient -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.AdaptiveAvgPool1d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.AdaptiveAvgPool1d.md deleted file mode 100644 index c5e144950c6..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.AdaptiveAvgPool1d.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.AdaptiveAvgPool1d -### [torch.nn.AdaptiveAvgPool1d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool1d.html) -```python -torch.nn.AdaptiveAvgPool1d(output_size) -``` - -### [paddle.nn.AdaptiveAvgPool1D](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/AdaptiveAvgPool1D_cn.html#adaptiveavgpool1d) -```python -paddle.nn.AdaptiveAvgPool1D(output_size, name=None) -``` - -两者功能一致,参数完全一致。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.apply.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.apply.md deleted file mode 100644 index b80bea2f945..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.apply.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.Module.apply -### [torch.nn.Module.apply](https://pytorch.org/docs/stable/generated/torch.nn.Module.html?highlight=torch+nn+module+apply#torch.nn.Module.apply) -```python -torch.nn.Module.apply(fn) -``` - -### [paddle.nn.Layer.apply](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html) -```python -paddle.nn.Layer.apply(fn) -``` - -两者功能一致,参数完全一致。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.children.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.children.md deleted file mode 100644 index d77ca465257..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.children.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.Module.children -### [torch.nn.Module.children](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.children) -```python -torch.nn.Module.children() -``` - -### [paddle.nn.Layer.children](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html#children) -```python -paddle.nn.Layer.children() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.eval.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.eval.md deleted file mode 100644 index 696c615a036..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.eval.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.Module.eval -### [torch.nn.Module.eval](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.eval) -```python -torch.nn.Module.eval() -``` - -### [paddle.nn.Layer.eval](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html#eval) -```python -paddle.nn.Layer.eval() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.named_children.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.named_children.md deleted file mode 100644 index 1ca22ac10a4..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.named_children.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.Module.named_children -### [torch.nn.Module.named_children](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.named_children) -```python -torch.nn.Module.named_children() -``` - -### [paddle.nn.Layer.named_children](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html#named-children) -```python -paddle.nn.Layer.named_children() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.train.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.train.md deleted file mode 100644 index 8f7d7fd7965..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.Module.train.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.nn.Module.train -### [torch.nn.Module.train](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.train) -```python -torch.nn.Module.train() -``` - -### [paddle.nn.Layer.train](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html#train) -```python -paddle.nn.Layer.train() -``` - -两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.add_param_group.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.add_param_group.md deleted file mode 100644 index 79c3cf3fef6..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.add_param_group.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.optim.Optimizer.add_param_group -### [torch.optim.Optimizer.add_param_group](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.add_param_group.html?highlight=torch+optim+optimizer+add_param_group#torch.optim.Optimizer.add_param_group) -```python -torch.optim.Optimizer.add_param_group(param_group) -``` - -### [paddle.optimizer.Optimizer._add_param_group]() -```python -paddle.optimizer.Optimizer._add_param_group(param_group) -``` - -参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.load_state_dict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.load_state_dict.md deleted file mode 100644 index c7ef34004d5..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.load_state_dict.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.optim.Optimizer.load_state_dict -### [torch.optim.Optimizer.load_state_dict](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.load_state_dict.html#torch.optim.Optimizer.load_state_dict) -```python -torch.optim.Optimizer.load_state_dict(state_dict) -``` - -### [paddle.optimizer.Optimizer.load_state_dict](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/optimizer/Optimizer_cn.html) -```python -paddle.optimizer.Optimizer.load_state_dict(state_dict) -``` - -两者功能一致,参数完全一致。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.state_dict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.state_dict.md deleted file mode 100644 index 48bf3fcccad..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.optim.Optimizer.state_dict.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.optim.Optimizer.state_dict -### [torch.optim.Optimizer.state_dict](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.state_dict.html?highlight=torch+optim+optimizer+state_dict#torch.optim.Optimizer.state_dict) -```python -torch.optim.Optimizer.state_dict() -``` - -### [paddle.optimizer.Optimizer.state_dict](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/optimizer/Optimizer_cn.html) -```python -paddle.optimizer.Optimizer.state_dict() -``` - -两者功能一致,均无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ChainDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ChainDataset.md deleted file mode 100644 index d9af795d1aa..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ChainDataset.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.ChainDataset -### [torch.utils.data.ChainDataset](https://pytorch.org/docs/stable/data.html#torch.utils.data.ChainDataset) -```python -torch.utils.data.ChainDataset(datasets) -``` - -### [paddle.io.ChainDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/ChainDataset_cn.html) -```python -paddle.io.ChainDataset(datasets) -``` - -paddle 参数和 torch 参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ConcatDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ConcatDataset.md deleted file mode 100644 index 128339e940c..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.ConcatDataset.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.ConcatDataset -### [torch.utils.data.ConcatDataset](https://pytorch.org/docs/stable/data.html#torch.utils.data.ConcatDataset) -```python -torch.utils.data.ConcatDataset(datasets) -``` - -### [paddle.io.ConcatDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/ConcatDataset_cn.html) -```python -paddle.io.ConcatDataset(datasets) -``` - -paddle 参数和 torch 参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Dataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Dataset.md deleted file mode 100644 index 8de0920b70f..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Dataset.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.Dataset -### [torch.utils.data.Dataset](https://pytorch.org/docs/stable/data.html?highlight=torch%20utils%20data%20dataset#torch.utils.data.Dataset) -```python -torch.utils.data.Dataset() -``` - -### [paddle.io.Dataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/io/Dataset_cn.html#dataset) -```python -paddle.io.Dataset() -``` - -功能一致,参数完全一致 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.IterableDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.IterableDataset.md deleted file mode 100644 index c25ee737715..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.IterableDataset.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.IterableDataset -### [torch.utils.data.IterableDataset](https://pytorch.org/docs/stable/data.html#torch.utils.data.IterableDataset) -```python -torch.utils.data.IterableDataset() -``` - -### [paddle.io.IterableDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/IterableDataset_cn.html#iterabledataset) -```python -paddle.io.IterableDataset() -``` - -无参数,二者都为可迭代数据集的基类。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Sampler.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Sampler.md deleted file mode 100644 index 0a2031c2dbf..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Sampler.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.Sampler -### [torch.utils.data.Sampler](https://pytorch.org/docs/stable/data.html#torch.utils.data.Sampler) -```python -torch.utils.data.Sampler(data_source) -``` - -### [paddle.io.Sampler](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/Sampler_cn.html) -```python -paddle.io.Sampler(data_source) -``` - -paddle 参数和 torch 参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.SequentialSampler.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.SequentialSampler.md deleted file mode 100644 index be273516023..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.SequentialSampler.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.SequentialSampler -### [torch.utils.data.SequentialSampler](https://pytorch.org/docs/stable/generated/torch.utils.data.SequentialSampler.html) -```python -torch.utils.data.SequentialSampler(data_source) -``` - -### [paddle.io.SequenceSampler](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/SequenceSampler_cn.html#sequencesampler) -```python -paddle.io.SequenceSampler(data_source) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Subset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Subset.md deleted file mode 100644 index 2d463d88f56..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.Subset.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.Subset -### [torch.utils.data.Subset](https://pytorch.org/docs/stable/data.html#torch.utils.data.Subset) -```python -torch.utils.data.Subset(dataset, indices) -``` - -### [paddle.io.Subset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/Subset_cn.html) -```python -paddle.io.Subset(dataset, indices) -``` - -paddle 参数和 torch 参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.random_split.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.random_split.md deleted file mode 100644 index bf764184e26..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.random_split.md +++ /dev/null @@ -1,16 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torch.utils.data.random_split -### [torch.utils.data.random_split](https://pytorch.org/docs/stable/data.html?highlight=torch+utils+data+random_split#torch.utils.data.random_split) -```python -torch.utils.data.random_split(dataset, - lengths, - generator=) -``` - -### [paddle.io.random_split](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/random_split_cn.html) -```python -paddle.io.random_split(dataset, - lengths, - generator=None) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.ops.RoIPool.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.ops.RoIPool.md deleted file mode 100644 index 534335c0234..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.ops.RoIPool.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.ops.RoIPool -### [torchvision.ops.RoIPool](https://pytorch.org/vision/main/generated/torchvision.ops.RoIPool.html) -```python -torchvision.ops.RoIPool(output_size: None, spatial_scale: float) -``` - -### [paddle.vision.ops.RoIPool](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/ops/RoIPool_cn.html) -```python -paddle.vision.ops.RoIPool(output_size, spatial_scale=1.0) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transform.functional.pad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transform.functional.pad.md deleted file mode 100644 index 170a6794f2a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transform.functional.pad.md +++ /dev/null @@ -1,22 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.pad -### [torchvision.transforms.functional.pad](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.pad.html) -```python -torchvision.transforms.functional.pad( - img: Union[PIL.Image.Image, torch.Tensor], - padding: Union[int, List[int], Tuple[int, ...]], - fill: Union[int, List[int], Tuple[int, ...]] = 0, - padding_mode: Literal['constant', 'edge', 'reflect', 'symmetric'] = 'constant' -) -``` - -### [paddle.vision.transforms.pad](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/transforms/pad_cn.html) -```python -paddle.vision.transforms.pad( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - padding: Union[int, List[int], Tuple[int, ...]], - fill: Union[int, List[int], Tuple[int, ...]] = 0, - padding_mode: Literal['constant', 'edge', 'reflect', 'symmetric'] = 'constant' -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.Compose.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.Compose.md deleted file mode 100644 index 2afeb4331b9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.Compose.md +++ /dev/null @@ -1,16 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.Compose -### [torchvision.transforms.Compose](https://pytorch.org/vision/main/generated/torchvision.transforms.Compose.html) -```python -torchvision.transforms.Compose( - transforms: List[Transform] -) -``` - -### [paddle.vision.transforms.Compose](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Compose_cn.html) -```python -paddle.vision.transforms.Compose( - transforms: Union[List[Transform], Tuple[Transform, ...]] -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BICUBIC.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BICUBIC.md deleted file mode 100644 index 66cb335dd1d..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BICUBIC.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.BICUBIC -### [torchvision.transforms.InterpolationMode.BICUBIC](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.BICUBIC -``` - -### ['bicubic']() -```python -'bicubic' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BILINEAR.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BILINEAR.md deleted file mode 100644 index f29d36366d2..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BILINEAR.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.BILINEAR -### [torchvision.transforms.InterpolationMode.BILINEAR](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.BILINEAR -``` - -### ['bilinear']() -```python -'bilinear' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BOX.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BOX.md deleted file mode 100644 index b6b9604b3d9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.BOX.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.BOX -### [torchvision.transforms.InterpolationMode.BOX](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.BOX -``` - -### ['box']() -```python -'box' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.HAMMING.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.HAMMING.md deleted file mode 100644 index 207bb5033d4..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.HAMMING.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.HAMMING -### [torchvision.transforms.InterpolationMode.HAMMING](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.HAMMING -``` - -### ['hamming']() -```python -'hamming' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.LANCZOS.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.LANCZOS.md deleted file mode 100644 index ffa836ce394..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.LANCZOS.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.LANCZOS -### [torchvision.transforms.InterpolationMode.LANCZOS](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.LANCZOS -``` - -### ['lanczos']() -```python -'lanczos' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST.md deleted file mode 100644 index 9daacb7e048..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.NEAREST -### [torchvision.transforms.InterpolationMode.NEAREST](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.NEAREST -``` - -### ['nearest']() -```python -'nearest' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST_EXACT.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST_EXACT.md deleted file mode 100644 index 44b9a0ff852..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.InterpolationMode.NEAREST_EXACT.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.InterpolationMode.NEAREST_EXACT -### [torchvision.transforms.InterpolationMode.NEAREST_EXACT](https://pytorch.org/vision/stable/index.html) -```python -torchvision.transforms.InterpolationMode.NEAREST_EXACT -``` - -### ['nearest_exact']() -```python -'nearest_exact' -``` - -枚举对应到字符串,两者功能一致,无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_brightness.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_brightness.md deleted file mode 100644 index 63b5c780e63..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_brightness.md +++ /dev/null @@ -1,15 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_brightness -### [torchvision.transforms.functional.adjust_brightness](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.adjust_brightness.html) -```python -torchvision.transforms.functional.adjust_brightness(img: Tensor, brightness_factor: float) -``` - -### [paddle.vision.transforms.adjust_brightness](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_brightness_cn.html) -```python -paddle.vision.transforms.adjust_brightness( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - brightness_factor: float -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_contrast.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_contrast.md deleted file mode 100644 index d2eb7fe3752..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_contrast.md +++ /dev/null @@ -1,15 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_contrast -### [torchvision.transforms.functional.adjust_contrast](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.adjust_contrast.html) -```python -torchvision.transforms.functional.adjust_contrast(img: Tensor, contrast_factor: float) -``` - -### [paddle.vision.transforms.adjust_contrast](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_contrast_cn.html) -```python -paddle.vision.transforms.adjust_contrast( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - contrast_factor: float -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_hue.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_hue.md deleted file mode 100644 index 93f127dcf8b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.adjust_hue.md +++ /dev/null @@ -1,15 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_hue -### [torchvision.transforms.functional.adjust_hue](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.adjust_hue.html) -```python -torchvision.transforms.functional.adjust_hue(img: Tensor, hue_factor: float) -``` - -### [paddle.vision.transforms.adjust_hue](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_hue_cn.html) -```python -paddle.vision.transforms.adjust_hue( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - hue_factor: float -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.center_crop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.center_crop.md deleted file mode 100644 index fccde598f5a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.center_crop.md +++ /dev/null @@ -1,15 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.center_crop -### [torchvision.transforms.functional.center_crop](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.center_crop.html) -```python -torchvision.transforms.functional.center_crop(img: Tensor, output_size: List[int]) -``` - -### [paddle.vision.transforms.center_crop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/center_crop_cn.html) -```python -paddle.vision.transforms.center_crop( - img: Union[PIL.Image.Image, paddle.Tensor, np.ndarray], - output_size: List[int] -) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.crop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.crop.md deleted file mode 100644 index d1475bb4e1e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.crop.md +++ /dev/null @@ -1,24 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.crop -### [torchvision.transforms.functional.crop](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.crop.html) -```python -torchvision.transforms.functional.crop( - img: Union[PIL.Image.Image, torch.Tensor], - top: int, - left: int, - height: int, - width: int -) -``` - -### [paddle.vision.transforms.crop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/crop_cn.html) -```python -paddle.vision.transforms.crop( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor], - top: int, - left: int, - height: int, - width: int -) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.erase.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.erase.md deleted file mode 100644 index 597d609eb55..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.erase.md +++ /dev/null @@ -1,28 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.erase -### [torchvision.transforms.functional.erase](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.erase.html?highlight=erase#torchvision.transforms.functional.erase) -```python -torchvision.transforms.functional.erase( - img: Tensor, - i: int, - j: int, - h: int, - w: int, - v: Tensor, - inplace: bool = False -) -``` - -### [paddle.vision.transforms.erase](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/erase_cn.html) -```python -paddle.vision.transforms.erase( - img: Union[paddle.Tensor, np.ndarray, PIL.Image.Image], - i: int, - j: int, - h: int, - w: int, - v: Union[paddle.Tensor, np.ndarray], - inplace: bool = False -) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.hflip.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.hflip.md deleted file mode 100644 index 9164c718754..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.hflip.md +++ /dev/null @@ -1,16 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.hflip -### [torchvision.transforms.functional.hflip](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.hflip.html) -```python -torchvision.transforms.functional.hflip( - img: Union[PIL.Image.Image, torch.Tensor] -) -``` - -### [paddle.vision.transforms.hflip](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/hflip_cn.html) -```python -paddle.vision.transforms.hflip( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor] -) -``` - -两者功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.to_grayscale.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.to_grayscale.md deleted file mode 100644 index 63f0672b728..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.to_grayscale.md +++ /dev/null @@ -1,16 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.to_grayscale -### [torchvision.transforms.functional.to_grayscale](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.to_grayscale.html?highlight=to_grayscale#torchvision.transforms.functional.to_grayscale) -```python -torchvision.transforms.functional.to_grayscale(img: PIL.Image.Image, - num_output_channels: int = 1) -``` - -### [paddle.vision.transforms.to_grayscale](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/to_grayscale_cn.html#to-grayscale) -```python -paddle.vision.transforms.to_grayscale( - img: Union[PIL.Image.Image, np.ndarray], - num_output_channels: int = 1 -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.vflip.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.vflip.md deleted file mode 100644 index c1eaa58646a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torchvision.transforms.functional.vflip.md +++ /dev/null @@ -1,16 +0,0 @@ -## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.vflip -### [torchvision.transforms.functional.vflip](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.vflip.html) -```python -torchvision.transforms.functional.vflip( - img: Union[PIL.Image.Image, torch.Tensor] -) -``` - -### [paddle.vision.transforms.vflip](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/vflip_cn.html) -```python -paddle.vision.transforms.vflip( - img: Union[PIL.Image.Image, np.ndarray, paddle.Tensor] -) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.LogitsProcessorList.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.LogitsProcessorList.md deleted file mode 100644 index 7c122ed9a17..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.LogitsProcessorList.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]transformers.generation.LogitsProcessorList -### [transformers.generation.LogitsProcessorList](https://hf-mirror.com/docs/transformers/v4.42.0/en/internal/generation_utils#transformers.LogitsProcessorList) -```python -transformers.generation.LogitsProcessorList() -``` - -### [paddlenlp.generation.LogitsProcessorList](https://github.com/PaddlePaddle/PaddleNLP/blob/e336e78c338d2514ee6c937982ce5d8c960b85ff/paddlenlp/transformers/bloom/processor.py#L24) -```python -paddlenlp.generation.LogitsProcessorList() -``` - -虚基类,用于被继承。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.utils.GenerateOutput.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.utils.GenerateOutput.md deleted file mode 100644 index be6681c5ed4..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.generation.utils.GenerateOutput.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]transformers.generation.utils.GenerateOutput -### [transformers.generation.utils.GenerateOutput](https://github.com/huggingface/transformers/blob/v4.42.0/src/transformers/generation/utils.py#L345) -```python -transformers.generation.utils.GenerateOutput() -``` - -### [paddlenlp.transformers.model_outputs.BaseModelOutput](https://github.com/PaddlePaddle/PaddleNLP/blob/e336e78c338d2514ee6c937982ce5d8c960b85ff/paddlenlp/transformers/model_outputs.py#L513) -```python -paddlenlp.transformers.model_outputs.BaseModelOutput() -``` - -两者功能一致且无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.BaseModelOutputWithPast.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.BaseModelOutputWithPast.md deleted file mode 100644 index d14561c9037..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.BaseModelOutputWithPast.md +++ /dev/null @@ -1,13 +0,0 @@ -## [ 仅 API 调用方式不一致 ]transformers.modeling_outputs.BaseModelOutputWithPast -### [transformers.modeling_outputs.BaseModelOutputWithPast](https://hf-mirror.com/docs/transformers/v4.42.0/en/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPast) -```python -transformers.modeling_outputs.BaseModelOutputWithPast(last_hidden_state: FloatTensor = None, past_key_values: Optional = None, hidden_states: Optional = None, attentions: Optional = None) -``` - -### [paddlenlp.transformers.model_outputs.BaseModelOutputWithPast](https://github.com/PaddlePaddle/PaddleNLP/blob/e336e78c338d2514ee6c937982ce5d8c960b85ff/paddlenlp/transformers/model_outputs.py#L590) -```python -paddlenlp.transformers.model_outputs.BaseModelOutputWithPast(last_hidden_state: paddle.Tensor = None, past_key_values: Optional[Tuple[Tuple[paddle.Tensor]]] = None, hidden_states: Optional[Tuple[paddle.Tensor]] = None, attentions: Optional[Tuple[paddle.Tensor]] = None) -``` - - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.CausalLMOutputWithPast.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.CausalLMOutputWithPast.md deleted file mode 100644 index d4024f02265..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.modeling_outputs.CausalLMOutputWithPast.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]transformers.modeling_outputs.CausalLMOutputWithPast -### [transformers.modeling_outputs.CausalLMOutputWithPast](https://hf-mirror.com/docs/transformers/v4.42.0/en/main_classes/output#transformers.modeling_outputs.CausalLMOutputWithPast) -```python -transformers.modeling_outputs.CausalLMOutputWithPast(loss: Optional = None, logits: FloatTensor = None, past_key_values: Optional = None, hidden_states: Optional = None, attentions: Optional = None) -``` - -### [paddlenlp.transformers.model_outputs.CausalLMOutputWithPast](https://github.com/PaddlePaddle/PaddleNLP/blob/e336e78c338d2514ee6c937982ce5d8c960b85ff/paddlenlp/transformers/model_outputs.py#L874) -```python -paddlenlp.transformers.model_outputs.CausalLMOutputWithPast(loss: Optional[paddle.Tensor] = None, logits: paddle.Tensor = None, past_key_values: Optional[Tuple[Tuple[paddle.Tensor]]] = None, hidden_states: Optional[Tuple[paddle.Tensor]] = None, attentions: Optional[Tuple[paddle.Tensor]] = None) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.utils.add_start_docstrings_to_model_forward.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.utils.add_start_docstrings_to_model_forward.md deleted file mode 100644 index 6c88fcbc2e8..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/transformers.utils.add_start_docstrings_to_model_forward.md +++ /dev/null @@ -1,12 +0,0 @@ -## [ 仅 API 调用方式不一致 ]transformers.utils.add_start_docstrings_to_model_forward -### [transformers.utils.add_start_docstrings_to_model_forward](https://github.com/huggingface/transformers/blob/44b231671db25974cfebcdae34402ad5099bf37a/src/transformers/utils/doc.py#L45) -```python -transformers.utils.add_start_docstrings_to_model_forward(*docstr) -``` - -### [paddlenlp.trainer.utils.add_start_docstrings_to_model_forward](https://github.com/PaddlePaddle/PaddleNLP/blob/8fd74f0b74cdae12e74518b9dbbb8f6c6219c338/paddlenlp/trainer/utils/doc.py#L27) -```python -paddlenlp.trainer.utils.add_start_docstrings_to_model_forward(*docstr) -``` - -功能一致,参数完全一致,具体如下: diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.argwhere.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.argwhere.md new file mode 100644 index 00000000000..cf4e280a4f6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.argwhere.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.argwhere + +### [torch.Tensor.argwhere](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.argwhere) + +```python +torch.Tensor.argwhere() +``` + +### [paddle.Tensor.nonzero](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/nonzero_cn.html#paddle/Tensor/nonzero_cn#cn-api-paddle-Tensor-nonzero) + +```python +paddle.Tensor.nonzero(as_tuple=False) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = input.argwhere() + +# Paddle 写法 +result = input.nonzero() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.bernoulli.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.bernoulli.md new file mode 100644 index 00000000000..b365829e860 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.bernoulli.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.bernoulli + +### [torch.Tensor.bernoulli](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.bernoulli) + +```python +torch.Tensor.bernoulli(generator=None) +``` + +### [paddle.bernoulli](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/bernoulli_cn.html#paddle/bernoulli_cn#cn-api-paddle-bernoulli) + +```python +paddle.bernoulli(x, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.bernoulli() + +# Paddle 写法 +result = paddle.bernoulli(a) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.clamp_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.clamp_.md new file mode 100644 index 00000000000..bd6c968f52a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.clamp_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.clamp_ + +### [torch.Tensor.clamp_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.clamp_) + +```python +torch.Tensor.clamp_(min=None, max=None) +``` + +### [paddle.Tensor.clip_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/clip__cn.html#paddle/Tensor/clip__cn#cn-api-paddle-Tensor-clip_) + +```python +paddle.Tensor.clip_(min=None, max=None, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.clamp_(-0.5, 0.5) + +# Paddle 写法 +result = a.clip_(-0.5, 0.5) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.col_indices.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.col_indices.md new file mode 100644 index 00000000000..3a71d945cbc --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.col_indices.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.col_indices + +### [torch.Tensor.col_indices](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.col_indices) + +```python +torch.Tensor.col_indices() +``` + +### [paddle.Tensor.cols](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/cols_cn.html#paddle/Tensor/cols_cn#cn-api-paddle-Tensor-cols) + +```python +paddle.Tensor.cols() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.col_indices() + +# Paddle 写法 +result = a.cols() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.conj_physical.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.conj_physical.md new file mode 100644 index 00000000000..875f029843d --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.conj_physical.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.conj_physical + +### [torch.Tensor.conj_physical](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.conj_physical) + +```python +torch.Tensor.conj_physical() +``` + +### [paddle.Tensor.conj](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/conj_cn.html#paddle/Tensor/conj_cn#cn-api-paddle-Tensor-conj) + +```python +paddle.Tensor.conj(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = src.conj_physical() + +# Paddle 写法 +result = src.conj() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.crow_indices.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.crow_indices.md new file mode 100644 index 00000000000..b2117d87f3b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.crow_indices.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.crow_indices + +### [torch.Tensor.crow_indices](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.crow_indices) + +```python +torch.Tensor.crow_indices() +``` + +### [paddle.Tensor.crows](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/crows_cn.html#paddle/Tensor/crows_cn#cn-api-paddle-Tensor-crows) + +```python +paddle.Tensor.crows() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.crow_indices() + +# Paddle 写法 +result = a.crows() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.det.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.det.md new file mode 100644 index 00000000000..4522f22fdc4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.det.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.det + +### [torch.Tensor.det](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.det) + +```python +torch.Tensor.det() +``` + +### [paddle.linalg.det](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/linalg/det_cn.html#paddle/linalg/det_cn#cn-api-paddle-linalg-det) + +```python +paddle.linalg.det(x, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.det() + +# Paddle 写法 +result = paddle.linalg.det(x) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.device.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.device.md new file mode 100644 index 00000000000..36654568596 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.device.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.device + +### [torch.Tensor.device](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.device) + +```python +torch.Tensor.device +``` + +### [paddle.Tensor.place](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/place_cn.html#paddle/Tensor/place_cn#cn-api-paddle-Tensor-place) + +```python +paddle.Tensor.place +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = src.device + +# Paddle 写法 +result = src.place +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.erf_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.erf_.md new file mode 100644 index 00000000000..20dc16b9d0c --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.erf_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.erf_ + +### [torch.Tensor.erf_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.erf_) + +```python +torch.Tensor.erf_() +``` + +### [paddle.erf_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/erf__cn.html#paddle/erf__cn#cn-api-paddle-erf_) + +```python +paddle.erf_(x, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +a.erf_() + +# Paddle 写法 +paddle.erf_(a) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.expm1_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.expm1_.md new file mode 100644 index 00000000000..9e38efae281 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.expm1_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.expm1_ + +### [torch.Tensor.expm1_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.expm1_) + +```python +torch.Tensor.expm1_() +``` + +### [paddle.expm1_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/expm1__cn.html#paddle/expm1__cn#cn-api-paddle-expm1_) + +```python +paddle.expm1_(x, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +a.expm1_() + +# Paddle 写法 +paddle.expm1_(a) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix.md new file mode 100644 index 00000000000..7609bb41268 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.fix + +### [torch.Tensor.fix](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.fix) + +```python +torch.Tensor.fix() +``` + +### [paddle.Tensor.trunc](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/trunc_cn.html#paddle/Tensor/trunc_cn#cn-api-paddle-Tensor-trunc) + +```python +paddle.Tensor.trunc(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = input.fix() + +# Paddle 写法 +result = input.trunc() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix_.md new file mode 100644 index 00000000000..77fce690efb --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.fix_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.fix_ + +### [torch.Tensor.fix_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.fix_) + +```python +torch.Tensor.fix_() +``` + +### [paddle.Tensor.trunc_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/trunc__cn.html#paddle/Tensor/trunc__cn#cn-api-paddle-Tensor-trunc_) + +```python +paddle.Tensor.trunc_(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = input.fix_() + +# Paddle 写法 +result = input.trunc_() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.hardshrink.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.hardshrink.md new file mode 100644 index 00000000000..cb5e71976fc --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.hardshrink.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.hardshrink + +### [torch.Tensor.hardshrink](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.hardshrink) + +```python +torch.Tensor.hardshrink() +``` + +### [paddle.nn.functional.hardshrink](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/functional/hardshrink_cn.html#paddle/nn/functional/hardshrink_cn#cn-api-paddle-nn-functional-hardshrink) + +```python +paddle.nn.functional.hardshrink(x, threshold=0.5, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.hardshrink() + +# Paddle 写法 +result = paddle.nn.functional.hardshrink(x) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.imag.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.imag.md new file mode 100644 index 00000000000..23385c8c093 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.imag.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.imag + +### [torch.Tensor.imag](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.imag) + +```python +torch.Tensor.imag +``` + +### [paddle.Tensor.imag](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/imag_cn.html#paddle/Tensor/imag_cn#cn-api-paddle-Tensor-imag) + +```python +paddle.Tensor.imag(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = src.imag + +# Paddle 写法 +result = src.imag() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_inference.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_inference.md new file mode 100644 index 00000000000..a7ebe4efbd7 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_inference.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.is_inference + +### [torch.Tensor.is_inference](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.is_inference) + +```python +torch.Tensor.is_inference() +``` + +### [paddle.Tensor.stop_gradient](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/stop_gradient_cn.html#paddle/Tensor/stop_gradient_cn#cn-api-paddle-Tensor-stop_gradient) + +```python +paddle.Tensor.stop_gradient +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.is_inference() + +# Paddle 写法 +result = x.stop_gradient +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse.md new file mode 100644 index 00000000000..5aa2d54d0b0 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.is_sparse + +### [torch.Tensor.is_sparse](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.is_sparse) + +```python +torch.Tensor.is_sparse +``` + +### [paddle.Tensor.is_sparse](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/is_sparse_cn.html#paddle/Tensor/is_sparse_cn#cn-api-paddle-Tensor-is_sparse) + +```python +paddle.Tensor.is_sparse() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.is_sparse + +# Paddle 写法 +result = a.is_sparse() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse_csr.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse_csr.md new file mode 100644 index 00000000000..2af468637f6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.is_sparse_csr.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.is_sparse_csr + +### [torch.Tensor.is_sparse_csr](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.is_sparse_csr) + +```python +torch.Tensor.is_sparse_csr +``` + +### [paddle.Tensor.is_sparse_csr](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/is_sparse_csr_cn.html#paddle/Tensor/is_sparse_csr_cn#cn-api-paddle-Tensor-is_sparse_csr) + +```python +paddle.Tensor.is_sparse_csr() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.is_sparse_csr + +# Paddle 写法 +result = a.is_sparse_csr() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.matrix_exp.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.matrix_exp.md similarity index 54% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.matrix_exp.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.matrix_exp.md index 9cd9974b6f9..eb4bd4baad7 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.Tensor.matrix_exp.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.matrix_exp.md @@ -1,21 +1,25 @@ ## [ 仅 API 调用方式不一致 ]torch.Tensor.matrix_exp -### [torch.Tensor.matrix_exp](https://pytorch.org/docs/stable/generated/torch.Tensor.matrix_exp.html#torch-tensor-matrix-exp) + +### [torch.Tensor.matrix_exp](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.matrix_exp) + ```python torch.Tensor.matrix_exp() ``` -### [paddle.linalg.matrix_exp](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/linalg/matrix_exp_cn.html) +### [paddle.linalg.matrix_exp](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/linalg/matrix_exp_cn.html#paddle/linalg/matrix_exp_cn#cn-api-paddle-linalg-matrix_exp) + ```python paddle.linalg.matrix_exp(x, name=None) ``` -两者功能一致,无参数。 +两者功能一致,但调用方式不一致,具体如下: ### 转写示例 + ```python # PyTorch 写法 -out = x.matrix_exp() +result = x.matrix_exp() # Paddle 写法 -out = paddle.linalg.matrix_exp(x) +result = paddle.linalg.matrix_exp(x) ``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.movedim.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.movedim.md new file mode 100644 index 00000000000..e630f6c64ac --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.movedim.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.movedim + +### [torch.Tensor.movedim](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.movedim) + +```python +torch.Tensor.movedim(source, destination) +``` + +### [paddle.Tensor.moveaxis](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/moveaxis_cn.html#paddle/Tensor/moveaxis_cn#cn-api-paddle-Tensor-moveaxis) + +```python +paddle.Tensor.moveaxis(source, destination, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.movedim(1, 0) + +# Paddle 写法 +result = x.moveaxis(1, 0) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma.md new file mode 100644 index 00000000000..c82127db9ee --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.mvlgamma + +### [torch.Tensor.mvlgamma](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.mvlgamma) + +```python +torch.Tensor.mvlgamma(p) +``` + +### [paddle.Tensor.multigammaln](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/multigammaln_cn.html#paddle/Tensor/multigammaln_cn#cn-api-paddle-Tensor-multigammaln) + +```python +paddle.Tensor.multigammaln(p, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.mvlgamma(2) + +# Paddle 写法 +result = x.multigammaln(2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma_.md new file mode 100644 index 00000000000..eb86818b1dd --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.mvlgamma_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.mvlgamma_ + +### [torch.Tensor.mvlgamma_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.mvlgamma_) + +```python +torch.Tensor.mvlgamma_(p) +``` + +### [paddle.Tensor.multigammaln_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/multigammaln__cn.html#paddle/Tensor/multigammaln__cn#cn-api-paddle-Tensor-multigammaln_) + +```python +paddle.Tensor.multigammaln_(p, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.mvlgamma_(2) + +# Paddle 写法 +result = x.multigammaln_(2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative.md new file mode 100644 index 00000000000..2766d94f6f6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.negative + +### [torch.Tensor.negative](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.negative) + +```python +torch.Tensor.negative() +``` + +### [paddle.Tensor.neg](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/neg_cn.html#paddle/Tensor/neg_cn#cn-api-paddle-Tensor-neg) + +```python +paddle.Tensor.neg(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.negative() + +# Paddle 写法 +result = a.neg() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative_.md new file mode 100644 index 00000000000..38677c1268f --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.negative_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.negative_ + +### [torch.Tensor.negative_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.negative_) + +```python +torch.Tensor.negative_() +``` + +### [paddle.Tensor.neg_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/neg__cn.html#paddle/Tensor/neg__cn#cn-api-paddle-Tensor-neg_) + +```python +paddle.Tensor.neg_(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +a.negative_() + +# Paddle 写法 +a.neg_() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.nelement.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.nelement.md new file mode 100644 index 00000000000..0fc364b423b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.nelement.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.nelement + +### [torch.Tensor.nelement](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.nelement) + +```python +torch.Tensor.nelement() +``` + +### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/size_cn.html#paddle/Tensor/size_cn#cn-api-paddle-Tensor-size) + +```python +paddle.Tensor.size +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.nelement() + +# Paddle 写法 +result = a.size +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.numel.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.numel.md new file mode 100644 index 00000000000..e80f89f6a02 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.numel.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.numel + +### [torch.Tensor.numel](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.numel) + +```python +torch.Tensor.numel() +``` + +### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/size_cn.html#paddle/Tensor/size_cn#cn-api-paddle-Tensor-size) + +```python +paddle.Tensor.size +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.numel() + +# Paddle 写法 +result = a.size +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.pinverse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.pinverse.md new file mode 100644 index 00000000000..89810be491a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.pinverse.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.pinverse + +### [torch.Tensor.pinverse](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.pinverse) + +```python +torch.Tensor.pinverse() +``` + +### [paddle.Tensor.pinv](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/pinv_cn.html#paddle/Tensor/pinv_cn#cn-api-paddle-Tensor-pinv) + +```python +paddle.Tensor.pinv(rcond=1e-15, hermitian=False, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = a.pinverse() + +# Paddle 写法 +result = a.pinv() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.positive.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.positive.md new file mode 100644 index 00000000000..061b26d0ffc --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.positive.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.positive + +### [torch.Tensor.positive](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.positive) + +```python +torch.Tensor.positive() +``` + +### [paddle.positive](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/positive_cn.html#paddle/positive_cn#cn-api-paddle-positive) + +```python +paddle.positive(x) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = x.positive() + +# Paddle 写法 +result = paddle.positive(x) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.real.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.real.md new file mode 100644 index 00000000000..2736e15e5f0 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.real.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.real + +### [torch.Tensor.real](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.real) + +```python +torch.Tensor.real +``` + +### [paddle.Tensor.real](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/real_cn.html#paddle/Tensor/real_cn#cn-api-paddle-Tensor-real) + +```python +paddle.Tensor.real(name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = src.real + +# Paddle 写法 +result = src.real() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.retain_grad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.retain_grad.md new file mode 100644 index 00000000000..f7d725a96fc --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.retain_grad.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.retain_grad + +### [torch.Tensor.retain_grad](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.retain_grad) + +```python +torch.Tensor.retain_grad() +``` + +### [paddle.Tensor.retain_grads](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/retain_grads_cn.html#paddle/Tensor/retain_grads_cn#cn-api-paddle-Tensor-retain_grads) + +```python +paddle.Tensor.retain_grads() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result.retain_grad() + +# Paddle 写法 +result.retain_grads() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.square_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.square_.md new file mode 100644 index 00000000000..b78d706f0d4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.square_.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.square_ + +### [torch.Tensor.square_](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.square_) + +```python +torch.Tensor.square_() +``` + +### [paddle.square_](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/square__cn.html#paddle/square__cn#cn-api-paddle-square_) + +```python +paddle.square_(x, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +x.square_() + +# Paddle 写法 +paddle.square_(x) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.to_sparse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.to_sparse.md new file mode 100644 index 00000000000..effb7248a25 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.Tensor.to_sparse.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.Tensor.to_sparse + +### [torch.Tensor.to_sparse](https://pytorch.org/docs/stable/tensors.html#torch.Tensor.to_sparse) + +```python +torch.Tensor.to_sparse(sparse_dim) +``` + +### [paddle.Tensor.to_sparse_coo](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/to_sparse_coo_cn.html#paddle/Tensor/to_sparse_coo_cn#cn-api-paddle-Tensor-to_sparse_coo) + +```python +paddle.Tensor.to_sparse_coo(sparse_dim) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +b = a.to_sparse(1) + +# Paddle 写法 +b = a.to_sparse_coo(1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.Function.forward.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.Function.forward.md new file mode 100644 index 00000000000..84e8ff2a1fc --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.Function.forward.md @@ -0,0 +1,45 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.Function.forward + +### [torch.autograd.Function.forward](https://pytorch.org/docs/stable/generated/torch.autograd.Function.html#torch.autograd.Function.forward) + +```python +torch.autograd.Function.forward(*args, **kwargs) +``` + +### [paddle.autograd.PyLayer.forward](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayer/forward_cn.html#paddle/autograd/PyLayer/forward_cn#cn-api-paddle-autograd-PyLayer-forward) + +```python +paddle.autograd.PyLayer.forward(ctx, *args, **kwargs) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class cus_tanh(torch.autograd.Function): + @staticmethod + def forward(ctx, x, func=torch.square): + ctx.func = func + y = func(x) + return y + + @staticmethod + def backward(ctx, dy): + grad = dy + 1 + return grad + +# Paddle 写法 +class cus_tanh(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x, func=paddle.square): + ctx.func = func + y = func(x) + return y + + @staticmethod + def backward(ctx, dy): + grad = dy + 1 + return grad +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.enable_grad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.enable_grad.md new file mode 100644 index 00000000000..11ba79ee671 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.enable_grad.md @@ -0,0 +1,36 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.enable_grad + +### [torch.autograd.enable_grad](https://pytorch.org/docs/stable/generated/torch.autograd.html#torch.autograd.enable_grad) + +```python +torch.autograd.enable_grad(*args, **kwargs) +``` + +### [paddle.enable_grad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/enable_grad_cn.html#paddle/enable_grad_cn#cn-api-paddle-enable_grad) + +```python +paddle.enable_grad(*args, **kwargs) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +@torch.autograd.enable_grad() +def doubler(x): + return x * 2 + +with torch.no_grad(): + result = doubler(x) + +# Paddle 写法 +@paddle.enable_grad() +def doubler(x): + return x * 2 + +with paddle.no_grad(): + result = doubler(x) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md new file mode 100644 index 00000000000..7f01c9f93e8 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.mark_non_differentiable.md @@ -0,0 +1,47 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.mark_non_differentiable + +### [torch.autograd.function.FunctionCtx.mark_non_differentiable](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.html#torch.autograd.function.FunctionCtx.mark_non_differentiable) + +```python +torch.autograd.function.FunctionCtx.mark_non_differentiable(*args) +``` + +### [paddle.autograd.PyLayerContext.mark_non_differentiable](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext/mark_non_differentiable_cn.html#paddle/autograd/PyLayerContext/mark_non_differentiable_cn#cn-api-paddle-autograd-PyLayerContext-mark_non_differentiable) + +```python +paddle.autograd.PyLayerContext.mark_non_differentiable(*args) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class cus_func(torch.autograd.Function): + @staticmethod + def forward(ctx, x): + a = x + x + b = x + x + x + ctx.mark_non_differentiable(a) + return a, b + + @staticmethod + def backward(ctx, grad_a, grad_b): + grad_x = 3 * grad_b + return grad_x + +# Paddle 写法 +class cus_func(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x): + a = x + x + b = x + x + x + ctx.mark_non_differentiable(a) + return a, b + + @staticmethod + def backward(ctx, grad_a, grad_b): + grad_x = 3 * grad_b + return grad_x +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.md new file mode 100644 index 00000000000..9916d548db9 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.md @@ -0,0 +1,45 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx + +### [torch.autograd.function.FunctionCtx](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.html#torch.autograd.function.FunctionCtx) + +```python +torch.autograd.function.FunctionCtx(*args, **kwargs) +``` + +### [paddle.autograd.PyLayerContext](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext_cn.html#paddle/autograd/PyLayerContext_cn#cn-api-paddle-autograd-PyLayerContext) + +```python +paddle.autograd.PyLayerContext(*args, **kwargs) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class MyFunction(torch.autograd.Function): + @staticmethod + def forward(ctx, x): + ctx.x = x + return x * 2 + + @staticmethod + def backward(ctx, grad_output): + x = ctx.x + grad_input = grad_output * 2 + return grad_input + +# Paddle 写法 +class MyFunction(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x): + ctx.x = x + return x * 2 + + @staticmethod + def backward(ctx, grad_output): + x = ctx.x + grad_input = grad_output * 2 + return grad_input +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.save_for_backward.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.save_for_backward.md new file mode 100644 index 00000000000..b29b29160f2 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.save_for_backward.md @@ -0,0 +1,45 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.save_for_backward + +### [torch.autograd.function.FunctionCtx.save_for_backward](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.html#torch.autograd.function.FunctionCtx.save_for_backward) + +```python +torch.autograd.function.FunctionCtx.save_for_backward(*tensors) +``` + +### [paddle.autograd.PyLayerContext.save_for_backward](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext/save_for_backward_cn.html#paddle/autograd/PyLayerContext/save_for_backward_cn#cn-api-paddle-autograd-PyLayerContext-save_for_backward) + +```python +paddle.autograd.PyLayerContext.save_for_backward(*tensors) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class cus_tanh(torch.autograd.Function): + @staticmethod + def forward(ctx, x): + y = torch.nn.functional.tanh(x) + ctx.save_for_backward(y) + return y + + @staticmethod + def backward(ctx, dy): + grad = dy + 1 + return grad + +# Paddle 写法 +class cus_tanh(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x): + y = paddle.nn.functional.tanh(x=x) + ctx.save_for_backward(y) + return y + + @staticmethod + def backward(ctx, dy): + grad = dy + 1 + return grad +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.saved_tensors.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.saved_tensors.md new file mode 100644 index 00000000000..f56e2392d77 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.saved_tensors.md @@ -0,0 +1,47 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.saved_tensors + +### [torch.autograd.function.FunctionCtx.saved_tensors](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.html#torch.autograd.function.FunctionCtx.saved_tensors) + +```python +torch.autograd.function.FunctionCtx.saved_tensors +``` + +### [paddle.autograd.PyLayerContext.saved_tensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext/saved_tensor_cn.html#paddle/autograd/PyLayerContext/saved_tensor_cn#cn-api-paddle-autograd-PyLayerContext-saved_tensor) + +```python +paddle.autograd.PyLayerContext.saved_tensor() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class cus_tanh(torch.autograd.Function): + @staticmethod + def forward(ctx, x): + y = torch.nn.functional.tanh(x) + ctx.save_for_backward(x, y) + return y + + @staticmethod + def backward(ctx, dy): + x, y = ctx.saved_tensors + grad = y + dy + 1 + return grad + +# Paddle 写法 +class cus_tanh(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x): + y = paddle.nn.functional.tanh(x=x) + ctx.save_for_backward(x, y) + return y + + @staticmethod + def backward(ctx, dy): + x, y = ctx.saved_tensor() + grad = y + dy + 1 + return grad +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.set_materialize_grads.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.set_materialize_grads.md new file mode 100644 index 00000000000..0b27f929aad --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.function.FunctionCtx.set_materialize_grads.md @@ -0,0 +1,43 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.function.FunctionCtx.set_materialize_grads + +### [torch.autograd.function.FunctionCtx.set_materialize_grads](https://pytorch.org/docs/stable/generated/torch.autograd.function.FunctionCtx.html#torch.autograd.function.FunctionCtx.set_materialize_grads) + +```python +torch.autograd.function.FunctionCtx.set_materialize_grads(value) +``` + +### [paddle.autograd.PyLayerContext.set_materialize_grads](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/PyLayerContext/set_materialize_grads_cn.html#paddle/autograd/PyLayerContext/set_materialize_grads_cn#cn-api-paddle-autograd-PyLayerContext-set_materialize_grads) + +```python +paddle.autograd.PyLayerContext.set_materialize_grads(value) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class cus_tanh(torch.autograd.Function): + @staticmethod + def forward(ctx, x): + ctx.set_materialize_grads(False) + return x + x + x, x + x + + @staticmethod + def backward(ctx, grad, grad2): + assert grad2 == None + return grad + +# Paddle 写法 +class cus_tanh(paddle.autograd.PyLayer): + @staticmethod + def forward(ctx, x): + ctx.set_materialize_grads(False) + return x + x + x, x + x + + @staticmethod + def backward(ctx, grad, grad2): + assert grad2 == None + return grad +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.grad_mode.set_grad_enabled.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.grad_mode.set_grad_enabled.md new file mode 100644 index 00000000000..c246e3ea2a2 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.grad_mode.set_grad_enabled.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.grad_mode.set_grad_enabled + +### [torch.autograd.grad_mode.set_grad_enabled](https://pytorch.org/docs/stable/generated/torch.autograd.grad_mode.html#torch.autograd.grad_mode.set_grad_enabled) + +```python +torch.autograd.grad_mode.set_grad_enabled(mode) +``` + +### [paddle.set_grad_enabled](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/set_grad_enabled_cn.html#paddle/set_grad_enabled_cn#cn-api-paddle-set_grad_enabled) + +```python +paddle.set_grad_enabled(mode) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +with torch.autograd.grad_mode.set_grad_enabled(is_train): + y = x * 2 + +# Paddle 写法 +with paddle.set_grad_enabled(is_train): + y = x * 2 +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.graph.saved_tensors_hooks.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.graph.saved_tensors_hooks.md new file mode 100644 index 00000000000..d99c7189205 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.autograd.graph.saved_tensors_hooks.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.autograd.graph.saved_tensors_hooks + +### [torch.autograd.graph.saved_tensors_hooks](https://pytorch.org/docs/stable/generated/torch.autograd.graph.html#torch.autograd.graph.saved_tensors_hooks) + +```python +torch.autograd.graph.saved_tensors_hooks(pack_hook, unpack_hook) +``` + +### [paddle.autograd.saved_tensors_hooks](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/autograd/saved_tensors_hooks_cn.html#paddle/autograd/saved_tensors_hooks_cn#cn-api-paddle-autograd-saved_tensors_hooks) + +```python +paddle.autograd.saved_tensors_hooks(pack_hook, unpack_hook) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +with torch.autograd.graph.saved_tensors_hooks(pack_hook, unpack_hook): + y = torch.mul(a, b) + +# Paddle 写法 +with paddle.autograd.saved_tensors_hooks(pack_hook, unpack_hook): + y = paddle.mul(a, b) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cuda.is_built.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cuda.is_built.md new file mode 100644 index 00000000000..2487d9c57cb --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cuda.is_built.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.backends.cuda.is_built + +### [torch.backends.cuda.is_built](https://pytorch.org/docs/stable/generated/torch.backends.cuda.html#torch.backends.cuda.is_built) + +```python +torch.backends.cuda.is_built() +``` + +### [paddle.device.is_compiled_with_cuda](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/is_compiled_with_cuda_cn.html#paddle/device/is_compiled_with_cuda_cn#cn-api-paddle-device-is_compiled_with_cuda) + +```python +paddle.device.is_compiled_with_cuda() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.backends.cuda.is_built() + +# Paddle 写法 +result = paddle.device.is_compiled_with_cuda() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cudnn.version.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cudnn.version.md new file mode 100644 index 00000000000..ef3ae4ef111 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.backends.cudnn.version.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torch.backends.cudnn.version + +### [torch.backends.cudnn.version](https://pytorch.org/docs/stable/generated/torch.backends.cudnn.html#torch.backends.cudnn.version) + +```python +torch.backends.cudnn.version() +``` + +### [paddle.device.get_cudnn_version](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/get_cudnn_version_cn.html#paddle/device/get_cudnn_version_cn#cn-api-paddle-device-get_cudnn_version) + +```python +paddle.device.get_cudnn_version() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.backends.cudnn.version() + +# Paddle 写法 +result = paddle.device.get_cudnn_version() + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cpu.current_device.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cpu.current_device.md new file mode 100644 index 00000000000..9067e2b2ce4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cpu.current_device.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cpu.current_device + +### [torch.cpu.current_device](https://pytorch.org/docs/stable/generated/torch.cpu.html#torch.cpu.current_device) + +```python +torch.cpu.current_device() +``` + +### [paddle.get_device](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/get_device_cn.html#paddle/get_device_cn#cn-api-paddle-get_device) + +```python +paddle.get_device() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cpu.current_device() + +# Paddle 写法 +result = paddle.get_device() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.Event.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.Event.md similarity index 61% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.Event.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.Event.md index 91089728d97..63ab7639d36 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.cuda.Event.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.Event.md @@ -1,12 +1,25 @@ ## [ 仅 API 调用方式不一致 ]torch.cuda.Event + ### [torch.cuda.Event](https://pytorch.org/docs/stable/generated/torch.cuda.Event.html#torch.cuda.Event) + ```python torch.cuda.Event(enable_timing=False, blocking=False, interprocess=False) ``` -### [paddle.device.cuda.Event](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/Event_cn.html) +### [paddle.device.cuda.Event](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/Event_cn.html#paddle/device/cuda/Event_cn#cn-api-paddle-device-cuda-Event) + ```python paddle.device.cuda.Event(enable_timing=False, blocking=False, interprocess=False) ``` -功能一致,参数完全一致,具体如下: +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.Event(enable_timing=True) + +# Paddle 写法 +result = paddle.device.cuda.Event(enable_timing=True) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.StreamContext.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.StreamContext.md new file mode 100644 index 00000000000..b84878e5b90 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.StreamContext.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.StreamContext + +### [torch.cuda.StreamContext](https://pytorch.org/docs/stable/generated/torch.cuda.StreamContext.html#torch.cuda.StreamContext) + +```python +torch.cuda.StreamContext(stream) +``` + +### [paddle.device.stream_guard](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/stream_guard_cn.html#paddle/device/stream_guard_cn#cn-api-paddle-device-stream_guard) + +```python +paddle.device.stream_guard(stream) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +with torch.cuda.StreamContext(stream=s1): + result = a + b + +# Paddle 写法 +with paddle.device.stream_guard(stream=s1): + result = a + b +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_device_name.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_device_name.md new file mode 100644 index 00000000000..c96c63d9617 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_device_name.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.get_device_name + +### [torch.cuda.get_device_name](https://pytorch.org/docs/stable/generated/torch.cuda.get_device_name.html#torch.cuda.get_device_name) + +```python +torch.cuda.get_device_name(device) +``` + +### [paddle.device.cuda.get_device_name](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/get_device_name_cn.html#paddle/device/cuda/get_device_name_cn#cn-api-paddle-device-cuda-get_device_name) + +```python +paddle.device.cuda.get_device_name(device) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.get_device_name(current_device) + +# Paddle 写法 +result = paddle.device.cuda.get_device_name(current_device) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_rng_state_all.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_rng_state_all.md new file mode 100644 index 00000000000..f5039d37f1a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.get_rng_state_all.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.get_rng_state_all + +### [torch.cuda.get_rng_state_all](https://pytorch.org/docs/stable/generated/torch.cuda.get_rng_state_all.html#torch.cuda.get_rng_state_all) + +```python +torch.cuda.get_rng_state_all() +``` + +### [paddle.get_rng_state](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/get_rng_state_cn.html#paddle/get_rng_state_cn#cn-api-paddle-get_rng_state) + +```python +paddle.get_rng_state(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.get_rng_state_all() + +# Paddle 写法 +result = paddle.get_rng_state() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.is_bf16_supported.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.is_bf16_supported.md new file mode 100644 index 00000000000..53a118d8bcb --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.is_bf16_supported.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.is_bf16_supported + +### [torch.cuda.is_bf16_supported](https://pytorch.org/docs/stable/generated/torch.cuda.is_bf16_supported.html#torch.cuda.is_bf16_supported) + +```python +torch.cuda.is_bf16_supported(including_emulation=True) +``` + +### [paddle.amp.is_bfloat16_supported](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/amp/is_bfloat16_supported_cn.html#paddle/amp/is_bfloat16_supported_cn#cn-api-paddle-amp-is_bfloat16_supported) + +```python +paddle.amp.is_bfloat16_supported(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.is_bf16_supported() + +# Paddle 写法 +result = paddle.amp.is_bfloat16_supported() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.manual_seed.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.manual_seed.md new file mode 100644 index 00000000000..8df630e5af6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.manual_seed.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.manual_seed + +### [torch.cuda.manual_seed](https://pytorch.org/docs/stable/generated/torch.cuda.manual_seed.html#torch.cuda.manual_seed) + +```python +torch.cuda.manual_seed(seed) +``` + +### [paddle.seed](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/seed_cn.html#paddle/seed_cn#cn-api-paddle-seed) + +```python +paddle.seed(seed) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +torch.cuda.manual_seed(123) + +# Paddle 写法 +paddle.seed(123) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_allocated.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_allocated.md new file mode 100644 index 00000000000..c42af001279 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_allocated.md @@ -0,0 +1,24 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.max_memory_allocated + +### [torch.cuda.max_memory_allocated](https://pytorch.org/docs/stable/generated/torch.cuda.max_memory_allocated.html#torch.cuda.max_memory_allocated) + +```python +torch.cuda.max_memory_allocated(device=None) +``` +### [paddle.device.cuda.max_memory_allocated](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/max_memory_allocated_cn.html#paddle/device/cuda/max_memory_allocated_cn#cn-api-paddle-device-cuda-max_memory_allocated) + +```python +paddle.device.cuda.max_memory_allocated(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.max_memory_allocated() + +# Paddle 写法 +result = paddle.device.cuda.max_memory_allocated() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_reserved.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_reserved.md new file mode 100644 index 00000000000..6d2124a8c15 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.max_memory_reserved.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.max_memory_reserved + +### [torch.cuda.max_memory_reserved](https://pytorch.org/docs/stable/generated/torch.cuda.max_memory_reserved.html#torch.cuda.max_memory_reserved) + +```python +torch.cuda.max_memory_reserved(device=None) +``` + +### [paddle.device.cuda.max_memory_reserved](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/max_memory_reserved_cn.html#paddle/device/cuda/max_memory_reserved_cn#cn-api-paddle-device-cuda-max_memory_reserved) + +```python +paddle.device.cuda.max_memory_reserved(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.max_memory_reserved() + +# Paddle 写法 +result = paddle.device.cuda.max_memory_reserved() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.nvtx.range_pop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.nvtx.range_pop.md new file mode 100644 index 00000000000..76200f4aa84 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.nvtx.range_pop.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.nvtx.range_pop + +### [torch.cuda.nvtx.range_pop](https://pytorch.org/docs/stable/generated/torch.cuda.nvtx.range_pop.html#torch.cuda.nvtx.range_pop) + +```python +torch.cuda.nvtx.range_pop() +``` + +### [paddle.core.nvprof_nvtx_pop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/framework/core/nvprof_nvtx_pop_cn.html#paddle/core/nvprof_nvtx_pop_cn#cn-api-paddle-core-nvprof_nvtx_pop) + +```python +paddle.core.nvprof_nvtx_pop() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.nvtx.range_pop() + +# Paddle 写法 +result = paddle.core.nvprof_nvtx_pop() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_allocated.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_allocated.md new file mode 100644 index 00000000000..987b230acf3 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_allocated.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.reset_max_memory_allocated + +### [torch.cuda.reset_max_memory_allocated](https://pytorch.org/docs/stable/generated/torch.cuda.reset_max_memory_allocated.html#torch.cuda.reset_max_memory_allocated) + +```python +torch.cuda.reset_max_memory_allocated(device=None) +``` + +### [paddle.device.cuda.reset_max_memory_allocated](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/reset_max_memory_allocated_cn.html#paddle/device/cuda/reset_max_memory_allocated_cn#cn-api-paddle-device-cuda-reset_max_memory_allocated) + +```python +paddle.device.cuda.reset_max_memory_allocated(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.reset_max_memory_allocated() + +# Paddle 写法 +result = paddle.device.cuda.reset_max_memory_allocated() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_cached.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_cached.md new file mode 100644 index 00000000000..76c47040abf --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.reset_max_memory_cached.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.reset_max_memory_cached + +### [torch.cuda.reset_max_memory_cached](https://pytorch.org/docs/stable/generated/torch.cuda.reset_max_memory_cached.html#torch.cuda.reset_max_memory_cached) + +```python +torch.cuda.reset_max_memory_cached(device=None) +``` + +### [paddle.device.cuda.reset_max_memory_reserved](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/cuda/reset_max_memory_reserved_cn.html#paddle/device/cuda/reset_max_memory_reserved_cn#cn-api-paddle-device-cuda-reset_max_memory_reserved) + +```python +paddle.device.cuda.reset_max_memory_reserved(device=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.reset_max_memory_cached() + +# Paddle 写法 +result = paddle.device.cuda.reset_max_memory_reserved() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.set_stream.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.set_stream.md new file mode 100644 index 00000000000..4b151ae4c10 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.set_stream.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.set_stream + +### [torch.cuda.set_stream](https://pytorch.org/docs/stable/generated/torch.cuda.set_stream.html#torch.cuda.set_stream) + +```python +torch.cuda.set_stream(stream) +``` + +### [paddle.device.set_stream](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/set_stream_cn.html#paddle/device/set_stream_cn#cn-api-paddle-device-set_stream) + +```python +paddle.device.set_stream(stream) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.cuda.set_stream(stream) + +# Paddle 写法 +result = paddle.device.set_stream(stream) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.stream.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.stream.md new file mode 100644 index 00000000000..e4d7534d312 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.cuda.stream.md @@ -0,0 +1,28 @@ +## [ 仅 API 调用方式不一致 ]torch.cuda.stream + +### [torch.cuda.stream](https://pytorch.org/docs/stable/generated/torch.cuda.stream.html#torch.cuda.stream) + +```python +torch.cuda.stream(stream) +``` + +### [paddle.device.stream_guard](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/device/stream_guard_cn.html#paddle/device/stream_guard_cn#cn-api-paddle-device-stream_guard) + +```python +paddle.device.stream_guard(stream) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +with torch.cuda.stream(stream=s): + result = data1 + data2 + +# Paddle 写法 +with paddle.device.stream_guard(stream=s): + result = data1 + data2 + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.PRODUCT.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.PRODUCT.md new file mode 100644 index 00000000000..5f4c8d86a84 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.PRODUCT.md @@ -0,0 +1,37 @@ +## [ 仅 API 调用方式不一致 ]torch.distributed.ReduceOp.PRODUCT + +### [torch.distributed.ReduceOp.PRODUCT](https://pytorch.org/docs/stable/distributed.html#torch.distributed.ReduceOp.PRODUCT) + +```python +torch.distributed.ReduceOp.PRODUCT +``` + +### [paddle.distributed.ReduceOp.PROD](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/ReduceOp/PROD_cn.html#paddle/distributed/ReduceOp/PROD_cn#cn-api-paddle-distributed-ReduceOp-PROD) + +```python +paddle.distributed.ReduceOp.PROD +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +torch.distributed.reduce_scatter( + data1, + [data1, data2], + op=torch.distributed.ReduceOp.PRODUCT, + group=None, + async_op=False +) + +# Paddle 写法 +paddle.distributed.reduce_scatter( + tensor=data1, + tensor_list=[data1, data2], + op=paddle.distributed.ReduceOp.PROD, + group=None, + sync_op=not False, +) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.md new file mode 100644 index 00000000000..cd276737220 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.ReduceOp.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.distributed.ReduceOp + +### [torch.distributed.ReduceOp](https://pytorch.org/docs/stable/generated/torch.distributed.ReduceOp.html#torch.distributed.ReduceOp) + +```python +torch.distributed.ReduceOp +``` + +### [paddle.distributed.ReduceOp](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/ReduceOp_cn.html#paddle/distributed/ReduceOp_cn#cn-api-paddle-distributed-ReduceOp) + +```python +paddle.distributed.ReduceOp +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +torch.distributed.init_process_group(backend="nccl") +print(torch.distributed.ReduceOp) + +# Paddle 写法 +paddle.distributed.init_parallel_env() +print(paddle.distributed.ReduceOp) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.is_nccl_available.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.is_nccl_available.md new file mode 100644 index 00000000000..25b4fe80f51 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributed.is_nccl_available.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.distributed.is_nccl_available + +### [torch.distributed.is_nccl_available](https://pytorch.org/docs/stable/distributed.html#torch.distributed.is_nccl_available) + +```python +torch.distributed.is_nccl_available() +``` + +### [paddle.core.is_compiled_with_nccl](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/core/is_compiled_with_nccl_cn.html#paddle/core/is_compiled_with_nccl_cn#cn-api-paddle-core-is_compiled_with_nccl) + +```python +paddle.core.is_compiled_with_nccl() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.distributed.is_nccl_available() + +# Paddle 写法 +result = paddle.core.is_compiled_with_nccl() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.constraints.Constraint.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.constraints.Constraint.md new file mode 100644 index 00000000000..5d9150f4274 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.constraints.Constraint.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.distributions.constraints.Constraint + +### [torch.distributions.constraints.Constraint](https://pytorch.org/docs/stable/generated/torch.distributions.constraints.Constraint.html#torch.distributions.constraints.Constraint) + +```python +torch.distributions.constraints.Constraint(*args, **kwargs) +``` + +### [paddle.distribution.constraint.Constraint](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distribution/constraint/Constraint_cn.html#paddle/distribution/constraint/Constraint_cn#cn-api-paddle-distribution-constraint-Constraint) + +```python +paddle.distribution.constraint.Constraint(*args, **kwargs) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.distributions.constraints.Constraint().check(1) + +# Paddle 写法 +result = paddle.distribution.constraint.Constraint().check(1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.kl.kl_divergence.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.kl.kl_divergence.md new file mode 100644 index 00000000000..dd12d031c11 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.distributions.kl.kl_divergence.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.distributions.kl.kl_divergence + +### [torch.distributions.kl.kl_divergence](https://pytorch.org/docs/stable/generated/torch.distributions.kl.html#torch.distributions.kl.kl_divergence) + +```python +torch.distributions.kl.kl_divergence(p, q) +``` + +### [paddle.distribution.kl_divergence](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distribution/kl_divergence_cn.html#paddle/distribution/kl_divergence_cn#cn-api-paddle-distribution-kl_divergence) + +```python +paddle.distribution.kl_divergence(p, q) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.distributions.kl.kl_divergence(m, n) + +# Paddle 写法 +result = paddle.distribution.kl_divergence(m, n) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.is_inference.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.is_inference.md new file mode 100644 index 00000000000..d20d4a1b7a7 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.is_inference.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.is_inference + +### [torch.is_inference](https://pytorch.org/docs/stable/generated/torch.is_inference.html) + +```python +torch.is_inference(input) +``` + +### [paddle.Tensor.stop_gradient](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/stop_gradient_cn.html#paddle/Tensor/stop_gradient_cn#cn-api-paddle-Tensor-stop_gradient) + +```python +paddle.Tensor.stop_gradient +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.is_inference(x) + +# Paddle 写法 +result = x.stop_gradient +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool1d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool1d.md new file mode 100644 index 00000000000..ba5e32ad431 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool1d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.AdaptiveAvgPool1d + +### [torch.nn.AdaptiveAvgPool1d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool1d.html#torch.nn.AdaptiveAvgPool1d) + +```python +torch.nn.AdaptiveAvgPool1d(output_size) +``` + +### [paddle.nn.AdaptiveAvgPool1D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/AdaptiveAvgPool1D_cn.html#paddle/nn/AdaptiveAvgPool1D_cn#cn-api-paddle-nn-AdaptiveAvgPool1D) + +```python +paddle.nn.AdaptiveAvgPool1D(output_size, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.AdaptiveAvgPool1d(5) + +# Paddle 写法 +model = paddle.nn.AdaptiveAvgPool1D(5) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool2d.md new file mode 100644 index 00000000000..77cd446bdf8 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool2d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.AdaptiveAvgPool2d + +### [torch.nn.AdaptiveAvgPool2d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool2d.html#torch.nn.AdaptiveAvgPool2d) + +```python +torch.nn.AdaptiveAvgPool2d(output_size) +``` + +### [paddle.nn.AdaptiveAvgPool2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/AdaptiveAvgPool2D_cn.html#paddle/nn/AdaptiveAvgPool2D_cn#cn-api-paddle-nn-AdaptiveAvgPool2D) + +```python +paddle.nn.AdaptiveAvgPool2D(output_size, data_format="NCHW", name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.AdaptiveAvgPool2d(5) + +# Paddle 写法 +model = paddle.nn.AdaptiveAvgPool2D(5) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool3d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool3d.md new file mode 100644 index 00000000000..d60017ce4e4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.AdaptiveAvgPool3d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.AdaptiveAvgPool3d + +### [torch.nn.AdaptiveAvgPool3d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool3d.html#torch.nn.AdaptiveAvgPool3d) + +```python +torch.nn.AdaptiveAvgPool3d(output_size) +``` + +### [paddle.nn.AdaptiveAvgPool3D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/AdaptiveAvgPool3D_cn.html#paddle/nn/AdaptiveAvgPool3D_cn#cn-api-paddle-nn-AdaptiveAvgPool3D) + +```python +paddle.nn.AdaptiveAvgPool3D(output_size, data_format="NCDHW", name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.AdaptiveAvgPool3d(1) + +# Paddle 写法 +model = paddle.nn.AdaptiveAvgPool3D(1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.HuberLoss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.HuberLoss.md similarity index 54% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.HuberLoss.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.HuberLoss.md index 0d9bf858ff6..50016a891a6 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.nn.HuberLoss.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.HuberLoss.md @@ -1,12 +1,25 @@ ## [ 仅 API 调用方式不一致 ]torch.nn.HuberLoss + ### [torch.nn.HuberLoss](https://pytorch.org/docs/stable/generated/torch.nn.HuberLoss.html#torch.nn.HuberLoss) + ```python torch.nn.HuberLoss(reduction='mean', delta=1.0) ``` -### [paddle.nn.SmoothL1Loss](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/SmoothL1Loss_cn.html) +### [paddle.nn.SmoothL1Loss](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/SmoothL1Loss_cn.html#paddle/nn/SmoothL1Loss_cn#cn-api-paddle-nn-SmoothL1Loss) + ```python paddle.nn.SmoothL1Loss(reduction='mean', delta=1.0, name=None) ``` -功能一致,参数完全一致,具体如下: +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +loss = torch.nn.HuberLoss() + +# Paddle 写法 +loss = paddle.nn.SmoothL1Loss() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool1d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool1d.md new file mode 100644 index 00000000000..0730bfdd975 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool1d.md @@ -0,0 +1,24 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.MaxUnpool1d + +### [torch.nn.MaxUnpool1d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool1d.html#torch.nn.MaxUnpool1d) + +```python +torch.nn.MaxUnpool1d(kernel_size, stride=None, padding=0) +``` + +### [paddle.nn.MaxUnPool1D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool1D_cn.html#paddle/nn/MaxUnPool1D_cn#cn-api-paddle-nn-MaxUnPool1D) + +```python +paddle.nn.MaxUnPool1D(kernel_size, stride=None, padding=0, data_format='NCL', output_size=None, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +unpool = torch.nn.MaxUnpool1d(2, 2) +# Paddle 写法) +unpool = paddle.nn.MaxUnPool1D(2, 2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool2d.md new file mode 100644 index 00000000000..b6341ca64d9 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool2d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.MaxUnpool2d + +### [torch.nn.MaxUnpool2d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool2d.html#torch.nn.MaxUnpool2d) + +```python +torch.nn.MaxUnpool2d(kernel_size, stride=None, padding=0) +``` + +### [paddle.nn.MaxUnPool2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool2D_cn.html#paddle/nn/MaxUnPool2D_cn#cn-api-paddle-nn-MaxUnPool2D) + +```python +paddle.nn.MaxUnPool2D(kernel_size, stride=None, padding=0, data_format='NCHW', output_size=None, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +unpool = torch.nn.MaxUnpool2d(2, stride=2) + +# Paddle 写法 +unpool = paddle.nn.MaxUnPool2D(2, stride=2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool3d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool3d.md new file mode 100644 index 00000000000..7e6080d9417 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.MaxUnpool3d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.MaxUnpool3d + +### [torch.nn.MaxUnpool3d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool3d.html#torch.nn.MaxUnpool3d) + +```python +torch.nn.MaxUnpool3d(kernel_size, stride=None, padding=0) +``` + +### [paddle.nn.MaxUnPool3D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool3D_cn.html#paddle/nn/MaxUnPool3D_cn#cn-api-paddle-nn-MaxUnPool3D) + +```python +paddle.nn.MaxUnPool3D(kernel_size, stride=None, padding=0, data_format='NCDHW', output_size=None, name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +unpool = torch.nn.MaxUnpool3d(3, stride=2) + +# Paddle 写法 +unpool = paddle.nn.MaxUnPool3D(3, stride=2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.apply.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.apply.md new file mode 100644 index 00000000000..caa662004a4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.apply.md @@ -0,0 +1,36 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.apply + +### [torch.nn.Module.apply](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.apply) + +```python +torch.nn.Module.apply(fn) +``` + +### [paddle.nn.Layer.apply](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/apply_cn.html#paddle/nn/Layer/apply_cn#cn-api-paddle-nn-Layer-apply) + +```python +paddle.nn.Layer.apply(fn) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +def init_weights(m): + pass +net = torch.nn.Sequential( + torch.nn.Linear(2, 2, bias=False), torch.nn.Linear(2, 2, bias=False) +) +net.apply(init_weights) + +# Paddle 写法 +def init_weights(m): + pass +net = paddle.nn.Sequential( + paddle.nn.Linear(in_features=2, out_features=2, bias_attr=False), + paddle.nn.Linear(in_features=2, out_features=2, bias_attr=False), +) +net.apply(init_weights) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.children.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.children.md new file mode 100644 index 00000000000..7a045d52274 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.children.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.children + +### [torch.nn.Module.children](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.children) + +```python +torch.nn.Module.children() +``` + +### [paddle.nn.Layer.children](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/children_cn.html#paddle/nn/Layer/children_cn#cn-api-paddle-nn-Layer-children) + +```python +paddle.nn.Layer.children() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.Sequential(net1, net2) +for layer in model.children(): + print(layer) + +# Paddle 写法 +model = paddle.nn.Sequential(net1, net2) +for layer in model.children(): + print(layer) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.eval.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.eval.md new file mode 100644 index 00000000000..1f3a502ef15 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.eval.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.eval + +### [torch.nn.Module.eval](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.eval) + +```python +torch.nn.Module.eval() +``` + +### [paddle.nn.Layer.eval](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/eval_cn.html#paddle/nn/Layer/eval_cn#cn-api-paddle-nn-Layer-eval) + +```python +paddle.nn.Layer.eval() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.Linear(10, 10) +model.eval() + +# Paddle 写法 +model = paddle.nn.Linear(10, 10) +model.eval() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.md new file mode 100644 index 00000000000..658d27804d3 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.md @@ -0,0 +1,45 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module + +### [torch.nn.Module](https://pytorch.org/docs/stable/generated/torch.nn.Module.html) + +```python +torch.nn.Module(*args, **kwargs) +``` + +### [paddle.nn.Layer](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html#paddle/nn/Layer_cn#cn-api-paddle-nn-Layer) + +```python +paddle.nn.Layer(name_scope=None, dtype='float32') +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class MLP(torch.nn.Module): + def __init__(self, input_size, hidden_size, output_size): + super(MLP, self).__init__() + self.fc1 = torch.nn.Linear(input_size, hidden_size) + with torch.no_grad(): + self.fc1.weight.fill_(1.0) + self.fc1.bias.fill_(0.1) + + def forward(self, x): + x = self.fc1(x) + return x + +# Paddle 写法 +class MLP(paddle.nn.Layer): + def __init__(self, input_size, hidden_size, output_size): + super(MLP, self).__init__() + self.fc1 = paddle.nn.Linear(in_features=input_size, out_features=hidden_size) + with paddle.no_grad(): + self.fc1.weight.fill_(1.0) + self.fc1.bias.fill_(0.1) + + def forward(self, x): + x = self.fc1(x) + return x +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.modules.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.modules.md new file mode 100644 index 00000000000..3e0dd9bb523 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.modules.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.modules + +### [torch.nn.Module.modules](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.modules) + +```python +torch.nn.Module.modules() +``` + +### [paddle.nn.Layer.sublayers](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/sublayers_cn.html#paddle/nn/Layer/sublayers_cn#cn-api-paddle-nn-Layer-sublayers) + +```python +paddle.nn.Layer.sublayers(include_self=False) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.Sequential(net1, net2) +for layer in model.modules(): + print(layer) + +# Paddle 写法 +model = paddle.nn.Sequential(net1, net2) +for layer in model.sublayers(): + print(layer) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.named_children.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.named_children.md new file mode 100644 index 00000000000..b63dbef1d97 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.named_children.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.named_children + +### [torch.nn.Module.named_children](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.named_children) + +```python +torch.nn.Module.named_children() +``` + +### [paddle.nn.Layer.named_children](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/named_children_cn.html#paddle/nn/Layer/named_children_cn#cn-api-paddle-nn-Layer-named_children) + +```python +paddle.nn.Layer.named_children() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.Sequential(OrderedDict([("wfs", l), ("wfs1", l1)])) +for name, module in model.named_children(): + print(name, module) + +# Paddle 写法 +model = paddle.nn.Sequential(OrderedDict([("wfs", l), ("wfs1", l1)])) +for name, module in model.named_children(): + print(name, module) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.train.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.train.md new file mode 100644 index 00000000000..03f832fdfb6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.Module.train.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.Module.train + +### [torch.nn.Module.train](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.train) + +```python +torch.nn.Module.train(mode=True) +``` + +### [paddle.nn.Layer.train](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer/train_cn.html#paddle/nn/Layer/train_cn#cn-api-paddle-nn-Layer-train) + +```python +paddle.nn.Layer.train() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.Linear(10, 20) +model.train() + +# Paddle 写法 +model = paddle.nn.Linear(10, 20) +model.train() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingBilinear2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingBilinear2d.md new file mode 100644 index 00000000000..5370178305b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingBilinear2d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.UpsamplingBilinear2d + +### [torch.nn.UpsamplingBilinear2d](https://pytorch.org/docs/stable/generated/torch.nn.UpsamplingBilinear2d.html#torch.nn.UpsamplingBilinear2d) + +```python +torch.nn.UpsamplingBilinear2d(size=None, scale_factor=None) +``` + +### [paddle.nn.UpsamplingBilinear2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/UpsamplingBilinear2D_cn.html#paddle/nn/UpsamplingBilinear2D_cn#cn-api-paddle-nn-UpsamplingBilinear2D) + +```python +paddle.nn.UpsamplingBilinear2D(size=None, scale_factor=None, data_format='NCHW', name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.UpsamplingBilinear2d(scale_factor=2) + +# Paddle 写法 +model = paddle.nn.UpsamplingBilinear2D(scale_factor=2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingNearest2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingNearest2d.md new file mode 100644 index 00000000000..59903f373e1 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.UpsamplingNearest2d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.UpsamplingNearest2d + +### [torch.nn.UpsamplingNearest2d](https://pytorch.org/docs/stable/generated/torch.nn.UpsamplingNearest2d.html#torch.nn.UpsamplingNearest2d) + +```python +torch.nn.UpsamplingNearest2d(size=None, scale_factor=None) +``` + +### [paddle.nn.UpsamplingNearest2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/UpsamplingNearest2D_cn.html#paddle/nn/UpsamplingNearest2D_cn#cn-api-paddle-nn-UpsamplingNearest2D) + +```python +paddle.nn.UpsamplingNearest2D(size=None, scale_factor=None, data_format='NCHW', name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.UpsamplingNearest2d(scale_factor=2) + +# Paddle 写法 +model = paddle.nn.UpsamplingNearest2D(scale_factor=2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.ZeroPad2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.ZeroPad2d.md new file mode 100644 index 00000000000..74f3177ddca --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.nn.ZeroPad2d.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.nn.ZeroPad2d + +### [torch.nn.ZeroPad2d](https://pytorch.org/docs/stable/generated/torch.nn.ZeroPad2d.html#torch.nn.ZeroPad2d) + +```python +torch.nn.ZeroPad2d(padding) +``` + +### [paddle.nn.ZeroPad2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/ZeroPad2D_cn.html#paddle/nn/ZeroPad2D_cn#cn-api-paddle-nn-ZeroPad2D) + +```python +paddle.nn.ZeroPad2D(padding, data_format='NCHW', name=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +model = torch.nn.ZeroPad2d(1) + +# Paddle 写法 +model = paddle.nn.ZeroPad2D(1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.numel.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.numel.md similarity index 57% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.numel.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.numel.md index 0ba0c9a7736..65083702ccd 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.numel.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.numel.md @@ -1,21 +1,25 @@ ## [ 仅 API 调用方式不一致 ]torch.numel -### [torch.numel](https://pytorch.org/docs/stable/generated/torch.numel.html?highlight=numel#torch.numel) + +### [torch.numel](https://pytorch.org/docs/stable/generated/torch.numel.html) + ```python torch.numel(input) ``` -### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/guides/beginner/tensor_cn.html#tensor-shape) +### [paddle.Tensor.size](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor/size_cn.html#paddle/Tensor/size_cn#cn-api-paddle-Tensor-size) + ```python paddle.Tensor.size ``` -两者功能一致,均无参数。 +两者功能一致,但调用方式不一致,具体如下: ### 转写示例 + ```python # PyTorch 写法 -torch.numel(x) +result = torch.numel(a) # Paddle 写法 -x.size +result = a.size ``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.state_dict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.state_dict.md new file mode 100644 index 00000000000..bffa352b1c8 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.state_dict.md @@ -0,0 +1,27 @@ +## [ 仅 API 调用方式不一致 ]torch.optim.Optimizer.state_dict + +### [torch.optim.Optimizer.state_dict](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.html#torch.optim.Optimizer.state_dict) + +```python +torch.optim.Optimizer.state_dict() +``` + +### [paddle.optimizer.Optimizer.state_dict](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/optimizer/Optimizer/state_dict_cn.html#paddle/optimizer/Optimizer/state_dict_cn#cn-api-paddle-optimizer-Optimizer-state_dict) + +```python +paddle.optimizer.Optimizer.state_dict() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +optim = torch.optim.Optimizer([theta], defaults={"learning_rate": 1.0}) +result = optim.state_dict() + +# Paddle 写法 +optim = paddle.optimizer.Optimizer(parameters=[theta], **{"learning_rate": 1.0}) +result = optim.state_dict() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.step.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.step.md new file mode 100644 index 00000000000..f5fb40e2917 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.optim.Optimizer.step.md @@ -0,0 +1,35 @@ +## [ 仅 API 调用方式不一致 ]torch.optim.Optimizer.step + +### [torch.optim.Optimizer.step](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.html#torch.optim.Optimizer.step) + +```python +torch.optim.Optimizer.step(closure=None) +``` + +### [paddle.optimizer.Optimizer.step](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/optimizer/Optimizer/step_cn.html#paddle/optimizer/Optimizer/step_cn#cn-api-paddle-optimizer-Optimizer-step) + +```python +paddle.optimizer.Optimizer.step() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +sgd = torch.optim.SGD( + params=linear.parameters(), + lr=0.1, + weight_decay=0.01 +) +sgd.step() + +# Paddle 写法 +sgd = paddle.optimizer.SGD( + learning_rate=0.1, + parameters=linear.parameters(), + weight_decay=0.01 +) +sgd.step() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ChainDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ChainDataset.md new file mode 100644 index 00000000000..43fca687c27 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ChainDataset.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.ChainDataset + +### [torch.utils.data.ChainDataset](https://pytorch.org/docs/stable/generated/torch.utils.data.ChainDataset.html#torch.utils.data.ChainDataset) + +```python +torch.utils.data.ChainDataset(datasets) +``` + +### [paddle.io.ChainDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/ChainDataset_cn.html#paddle/io/ChainDataset_cn#cn-api-paddle-io-ChainDataset) + +```python +paddle.io.ChainDataset(datasets) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +dataset = torch.utils.data.ChainDataset( + [MyIterableDataset(start=3, end=7), MyIterableDataset(start=3, end=7)] +) + +# Paddle 写法 +dataset = paddle.io.ChainDataset( + [MyIterableDataset(start=3, end=7), MyIterableDataset(start=3, end=7)] +) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ConcatDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ConcatDataset.md new file mode 100644 index 00000000000..165bb7e8a2f --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.ConcatDataset.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.ConcatDataset + +### [torch.utils.data.ConcatDataset](https://pytorch.org/docs/stable/generated/torch.utils.data.ConcatDataset.html#torch.utils.data.ConcatDataset) + +```python +torch.utils.data.ConcatDataset(datasets) +``` + +### [paddle.io.ConcatDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/ConcatDataset_cn.html#paddle/io/ConcatDataset_cn#cn-api-paddle-io-ConcatDataset) + +```python +paddle.io.ConcatDataset(datasets) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +dataset = torch.utils.data.ConcatDataset([RandomDataset(2), RandomDataset(2)]) + +# Paddle 写法 +dataset = paddle.io.ConcatDataset([RandomDataset(2), RandomDataset(2)]) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Dataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Dataset.md new file mode 100644 index 00000000000..ebefc5954f6 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Dataset.md @@ -0,0 +1,41 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.Dataset + +### [torch.utils.data.Dataset](https://pytorch.org/docs/stable/generated/torch.utils.data.Dataset.html#torch.utils.data.Dataset) + +```python +torch.utils.data.Dataset(*args, **kwargs) +``` + +### [paddle.io.Dataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/Dataset_cn.html#paddle/io/Dataset_cn#cn-api-paddle-io-Dataset) + +```python +paddle.io.Dataset() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class Data(torch.utils.data.Dataset): + def __init__(self): + self.x = [1, 2, 3, 4] + + def __getitem__(self, idx): + return self.x[idx] + + def __len__(self): + return len(self.x) + +# Paddle 写法 +class Data(paddle.io.Dataset): + def __init__(self): + self.x = [1, 2, 3, 4] + + def __getitem__(self, idx): + return self.x[idx] + + def __len__(self): + return len(self.x) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.IterableDataset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.IterableDataset.md new file mode 100644 index 00000000000..372cde708ba --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.IterableDataset.md @@ -0,0 +1,39 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.IterableDataset + +### [torch.utils.data.IterableDataset](https://pytorch.org/docs/stable/generated/torch.utils.data.IterableDataset.html#torch.utils.data.IterableDataset) + +```python +torch.utils.data.IterableDataset(*args, **kwargs) +``` + +### [paddle.io.IterableDataset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/IterableDataset_cn.html#paddle/io/IterableDataset_cn#cn-api-paddle-io-IterableDataset) + +```python +paddle.io.IterableDataset() +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class MyIterableDataset(torch.utils.data.IterableDataset): + def __init__(self, start, end): + super(MyIterableDataset).__init__() + self.start = start + self.end = end + + def __iter__(self): + return iter(range(self.start, self.end)) + +# Paddle 写法 +class MyIterableDataset(paddle.io.IterableDataset): + def __init__(self, start, end): + super(MyIterableDataset).__init__() + self.start = start + self.end = end + + def __iter__(self): + return iter(range(self.start, self.end)) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Sampler.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Sampler.md new file mode 100644 index 00000000000..066473e4f04 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Sampler.md @@ -0,0 +1,41 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.Sampler + +### [torch.utils.data.Sampler](https://pytorch.org/docs/stable/generated/torch.utils.data.Sampler.html#torch.utils.data.Sampler) + +```python +torch.utils.data.Sampler(data_source) +``` + +### [paddle.io.Sampler](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/Sampler_cn.html#paddle/io/Sampler_cn#cn-api-paddle-io-Sampler) + +```python +paddle.io.Sampler(data_source) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class MySampler(torch.utils.data.Sampler): + def __init__(self, data_source): + self.data_source = data_source + + def __iter__(self): + return iter(range(len(self.data_source))) + + def __len__(self): + return len(self.data_source) + +# Paddle 写法 +class MySampler(paddle.io.Sampler): + def __init__(self, data_source): + super().__init__(data_source) + + def __iter__(self): + return iter(range(len(self.data_source))) + + def __len__(self): + return len(self.data_source) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.SequentialSampler.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.SequentialSampler.md new file mode 100644 index 00000000000..9234427586d --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.SequentialSampler.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.SequentialSampler + +### [torch.utils.data.SequentialSampler](https://pytorch.org/docs/stable/generated/torch.utils.data.SequentialSampler.html#torch.utils.data.SequentialSampler) + +```python +torch.utils.data.SequentialSampler(data_source) +``` + +### [paddle.io.SequenceSampler](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/SequenceSampler_cn.html#paddle/io/SequenceSampler_cn#cn-api-paddle-io-SequenceSampler) + +```python +paddle.io.SequenceSampler(data_source) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +s = torch.utils.data.SequentialSampler(MyDataset()) + +# Paddle 写法 +s = paddle.io.SequenceSampler(MyDataset()) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Subset.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Subset.md new file mode 100644 index 00000000000..801d7052421 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.Subset.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.Subset + +### [torch.utils.data.Subset](https://pytorch.org/docs/stable/generated/torch.utils.data.Subset.html#torch.utils.data.Subset) + +```python +torch.utils.data.Subset(dataset, indices) +``` + +### [paddle.io.Subset](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/Subset_cn.html#paddle/io/Subset_cn#cn-api-paddle-io-Subset) + +```python +paddle.io.Subset(dataset, indices) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +subset = torch.utils.data.Subset(full_dataset, indices) + +# Paddle 写法 +subset = paddle.io.Subset(full_dataset, indices) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.default_collate.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.default_collate.md new file mode 100644 index 00000000000..84a8356c7a5 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.default_collate.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.default_collate + +### [torch.utils.data.default_collate](https://pytorch.org/docs/stable/data.html#torch.utils.data.default_collate) + +```python +torch.utils.data.default_collate(batch) +``` + +### [paddle.io.dataloader.collate.default_collate_fn](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/dataloader/collate/default_collate_fn_cn.html#paddle/io/dataloader/collate/default_collate_fn_cn#cn-api-paddle-io-dataloader-collate-default_collate_fn) + +```python +paddle.io.dataloader.collate.default_collate_fn(batch) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.tensor(torch.utils.data.default_collate([0, 1, 2, 3])) + +# Paddle 写法 +result = paddle.tensor(paddle.io.dataloader.collate.default_collate_fn([0, 1, 2, 3])) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.get_worker_info.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.get_worker_info.md similarity index 58% rename from docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.get_worker_info.md rename to docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.get_worker_info.md index 56909bc0fc7..a695367ccdb 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_diff_only/torch.utils.data.get_worker_info.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.get_worker_info.md @@ -1,12 +1,25 @@ ## [ 仅 API 调用方式不一致 ]torch.utils.data.get_worker_info + ### [torch.utils.data.get_worker_info](https://pytorch.org/docs/stable/data.html#torch.utils.data.get_worker_info) + ```python torch.utils.data.get_worker_info() ``` -### [paddle.io.get_worker_info](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/get_worker_info_cn.html#get-worker-info) +### [paddle.io.get_worker_info](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/get_worker_info_cn.html#paddle/io/get_worker_info_cn#cn-api-paddle-io-get_worker_info) + ```python paddle.io.get_worker_info() ``` -两者功能一致,无参数。 +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torch.utils.data.get_worker_info() + +# Paddle 写法 +result = paddle.io.get_worker_info() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.random_split.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.random_split.md new file mode 100644 index 00000000000..5fb5d3c2c87 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torch.utils.data.random_split.md @@ -0,0 +1,47 @@ +## [ 仅 API 调用方式不一致 ]torch.utils.data.random_split + +### [torch.utils.data.random_split](https://pytorch.org/docs/stable/data.html#torch.utils.data.random_split) + +```python +torch.utils.data.random_split(dataset, lengths, generator=) +``` + +### [paddle.io.random_split](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/io/random_split_cn.html#paddle/io/random_split_cn#cn-api-paddle-io-random_split) + +```python +paddle.io.random_split(dataset, lengths, generator=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +class Data(torch.utils.data.Dataset): + def __init__(self): + self.x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] + + def __getitem__(self, idx): + return self.x[idx] + + def __len__(self): + return len(self.x) + +data = Data() +datasets = torch.utils.data.random_split(data, [3, 7]) + +# Paddle 写法 +class Data(paddle.io.Dataset): + def __init__(self): + self.x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] + + def __getitem__(self, idx): + return self.x[idx] + + def __len__(self): + return len(self.x) + +data = Data() +datasets = paddle.io.random_split(data, [3, 7]) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.ops.RoIPool.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.ops.RoIPool.md new file mode 100644 index 00000000000..6f181526018 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.ops.RoIPool.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.ops.RoIPool + +### [torchvision.ops.RoIPool](https://pytorch.org/vision/stable/generated/torchvision.ops.RoIPool.html#torchvision.ops.RoIPool) + +```python +torchvision.ops.RoIPool(output_size, spatial_scale) +``` + +### [paddle.vision.ops.RoIPool](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/ops/RoIPool_cn.html#paddle/vision/ops/RoIPool_cn#cn-api-paddle-vision-ops-RoIPool) + +```python +paddle.vision.ops.RoIPool(output_size, spatial_scale) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +roi_pool = torchvision.ops.RoIPool(output_size=(7, 7), spatial_scale=1.0) + +# Paddle 写法 +roi_pool = paddle.vision.ops.RoIPool(output_size=(7, 7), spatial_scale=1.0) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.CenterCrop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.CenterCrop.md new file mode 100644 index 00000000000..5881987e631 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.CenterCrop.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.CenterCrop + +### [torchvision.transforms.CenterCrop](https://pytorch.org/vision/stable/generated/torchvision.transforms.CenterCrop.html#torchvision.transforms.CenterCrop) + +```python +torchvision.transforms.CenterCrop(size) +``` + +### [paddle.vision.transforms.CenterCrop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/CenterCrop_cn.html#paddle/vision/transforms/CenterCrop_cn#cn-api-paddle-vision-transforms-CenterCrop) + +```python +paddle.vision.transforms.CenterCrop(size, keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +center_crop = torchvision.transforms.CenterCrop(size) + +# Paddle 写法 +center_crop = paddle.vision.transforms.CenterCrop(size) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ColorJitter.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ColorJitter.md new file mode 100644 index 00000000000..994c551eb2b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ColorJitter.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.ColorJitter + +### [torchvision.transforms.ColorJitter](https://pytorch.org/vision/stable/generated/torchvision.transforms.ColorJitter.html#torchvision.transforms.ColorJitter) + +```python +torchvision.transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0) +``` + +### [paddle.vision.transforms.ColorJitter](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/ColorJitter_cn.html#paddle/vision/transforms/ColorJitter_cn#cn-api-paddle-vision-transforms-ColorJitter) + +```python +paddle.vision.transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0, keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +jitter = torchvision.transforms.ColorJitter( + brightness=0.2, contrast=0.3, saturation=0.4, hue=0 +) + +# Paddle 写法 +jitter = paddle.vision.transforms.ColorJitter( + brightness=0.2, contrast=0.3, saturation=0.4, hue=0 +) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Compose.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Compose.md new file mode 100644 index 00000000000..2c48df0ad73 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Compose.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.Compose + +### [torchvision.transforms.Compose](https://pytorch.org/vision/stable/generated/torchvision.transforms.Compose.html#torchvision.transforms.Compose) + +```python +torchvision.transforms.Compose(transforms) +``` + +### [paddle.vision.transforms.Compose](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Compose_cn.html#paddle/vision/transforms/Compose_cn#cn-api-paddle-vision-transforms-Compose) + +```python +paddle.vision.transforms.Compose(transforms) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +composed = torchvision.transforms.Compose(transforms=process) + +# Paddle 写法 +composed = paddle.vision.transforms.Compose(transforms=process) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Grayscale.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Grayscale.md new file mode 100644 index 00000000000..cc5bc51ef2e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Grayscale.md @@ -0,0 +1,34 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.Grayscale + +### [torchvision.transforms.Grayscale](https://pytorch.org/vision/stable/generated/torchvision.transforms.Grayscale.html#torchvision.transforms.Grayscale) + +```python +torchvision.transforms.Grayscale(num_output_channels) +``` + +### [paddle.vision.transforms.Grayscale](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Grayscale_cn.html#paddle/vision/transforms/Grayscale_cn#cn-api-paddle-vision-transforms-Grayscale) + +```python +paddle.vision.transforms.Grayscale(num_output_channels, keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +grayscale = torchvision.transforms.Grayscale(num_output_channels=1) +img = torch.tensor( + [[[0.2, 0.4], [0.6, 0.8]], [[0.1, 0.3], [0.5, 0.7]], [[0.0, 0.2], [0.4, 0.6]]] +) +result = grayscale(img) + +# Paddle 写法 +grayscale = paddle.vision.transforms.Grayscale(num_output_channels=1) +img = paddle.tensor( + [[[0.2, 0.4], [0.6, 0.8]], [[0.1, 0.3], [0.5, 0.7]], [[0.0, 0.2], [0.4, 0.6]]] +) +result = grayscale(img) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Pad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Pad.md new file mode 100644 index 00000000000..fe20efb57ec --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.Pad.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.Pad + +### [torchvision.transforms.Pad](https://pytorch.org/vision/stable/generated/torchvision.transforms.Pad.html#torchvision.transforms.Pad) + +```python +torchvision.transforms.Pad(padding, fill=0, padding_mode='constant') +``` + +### [paddle.vision.transforms.Pad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Pad_cn.html#paddle/vision/transforms/Pad_cn#cn-api-paddle-vision-transforms-Pad) + +```python +paddle.vision.transforms.Pad(padding, fill=0, padding_mode='constant', keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +pad = torchvision.transforms.Pad(padding=2, fill=0, padding_mode="constant") + +# Paddle 写法 +pad = paddle.vision.transforms.Pad(padding=2, fill=0, padding_mode="constant") +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomAffine.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomAffine.md new file mode 100644 index 00000000000..b19b6652864 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomAffine.md @@ -0,0 +1,42 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.RandomAffine + +### [torchvision.transforms.RandomAffine](https://pytorch.org/vision/stable/generated/torchvision.transforms.RandomAffine.html#torchvision.transforms.RandomAffine) + +```python +torchvision.transforms.RandomAffine(degrees, translate=None, scale=None, shear=None, interpolation=torchvision.transforms.InterpolationMode.InterpolationMode.NEAREST, fill=0, center=None) +``` + +### [paddle.vision.transforms.RandomAffine](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomAffine_cn.html#paddle/vision/transforms/RandomAffine_cn#cn-api-paddle-vision-transforms-RandomAffine) + +```python +paddle.vision.transforms.RandomAffine(degrees, translate=None, scale=None, shear=None, interpolation='nearest', fill=0, center=None, keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +transform = torchvision.transforms.RandomAffine( + 45, + (0.1, 0.1), + (0.5, 1.5), + 20, + torchvision.transforms.InterpolationMode.BILINEAR, + 255, + (2, 2), +) + +# Paddle 写法 +transform = paddle.vision.transforms.RandomAffine( + 45, + (0.1, 0.1), + (0.5, 1.5), + 20, + "bilinear", + 255, + (2, 2) +) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomCrop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomCrop.md new file mode 100644 index 00000000000..d5b43068a85 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomCrop.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.RandomCrop + +### [torchvision.transforms.RandomCrop](https://pytorch.org/vision/stable/generated/torchvision.transforms.RandomCrop.html#torchvision.transforms.RandomCrop) + +```python +torchvision.transforms.RandomCrop(size, padding=None, pad_if_needed=False, fill=0, padding_mode='constant') +``` + +### [paddle.vision.transforms.RandomCrop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomCrop_cn.html#paddle/vision/transforms/RandomCrop_cn#cn-api-paddle-vision-transforms-RandomCrop) + +```python +paddle.vision.transforms.RandomCrop(size, padding=None, pad_if_needed=False, fill=0, padding_mode='constant', keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +crop = torchvision.transforms.RandomCrop(size=size) + +# Paddle 写法 +crop = paddle.vision.transforms.RandomCrop(size=size) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomRotation.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomRotation.md new file mode 100644 index 00000000000..129421d6a51 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.RandomRotation.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.RandomRotation + +### [torchvision.transforms.RandomRotation](https://pytorch.org/vision/stable/generated/torchvision.transforms.RandomRotation.html#torchvision.transforms.RandomRotation) + +```python +torchvision.transforms.RandomRotation(degrees, interpolation=torchvision.transforms.InterpolationMode.NEAREST, expand=False, center=None, fill=0) +``` + +### [paddle.vision.transforms.RandomRotation](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomRotation_cn.html#paddle/vision/transforms/RandomRotation_cn#cn-api-paddle-vision-transforms-RandomRotation) + +```python +paddle.vision.transforms.RandomRotation(degrees, interpolation='nearest', expand=False, center=None, fill=0, keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +rotation = torchvision.transforms.RandomRotation(degrees=degrees) + +# Paddle 写法 +rotation = paddle.vision.transforms.RandomRotation(degrees=degrees) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ToTensor.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ToTensor.md new file mode 100644 index 00000000000..9542515129e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.ToTensor.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.ToTensor + +### [torchvision.transforms.ToTensor](https://pytorch.org/vision/stable/generated/torchvision.transforms.ToTensor.html#torchvision.transforms.ToTensor) + +```python +torchvision.transforms.ToTensor() +``` + +### [paddle.vision.transforms.ToTensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/ToTensor_cn.html#paddle/vision/transforms/ToTensor_cn#cn-api-paddle-vision-transforms-ToTensor) + +```python +paddle.vision.transforms.ToTensor(data_format='CHW', keys=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +transform = torchvision.transforms.ToTensor() + +# Paddle 写法 +transform = paddle.vision.transforms.ToTensor() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_brightness.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_brightness.md new file mode 100644 index 00000000000..43be4dddcaa --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_brightness.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_brightness + +### [torchvision.transforms.functional.adjust_brightness](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.adjust_brightness.html#torchvision.transforms.functional.adjust_brightness) + +```python +torchvision.transforms.functional.adjust_brightness(img, brightness_factor) +``` + +### [paddle.vision.transforms.adjust_brightness](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_brightness_cn.html#paddle/vision/transforms/adjust_brightness_cn#cn-api-paddle-vision-transforms-adjust_brightness) + +```python +paddle.vision.transforms.adjust_brightness(img, brightness_factor) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.adjust_brightness(img, factor) + +# Paddle 写法 +result = paddle.vision.transforms.adjust_brightness(img, factor) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_contrast.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_contrast.md new file mode 100644 index 00000000000..71b634033a2 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_contrast.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_contrast + +### [torchvision.transforms.functional.adjust_contrast](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.adjust_contrast.html#torchvision.transforms.functional.adjust_contrast) + +```python +torchvision.transforms.functional.adjust_contrast(img, contrast_factor) +``` + +### [paddle.vision.transforms.adjust_contrast](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_contrast_cn.html#paddle/vision/transforms/adjust_contrast_cn#cn-api-paddle-vision-transforms-adjust_contrast) + +```python +paddle.vision.transforms.adjust_contrast(img, contrast_factor) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.adjust_contrast(img, contrast_factor) + +# Paddle 写法 +result = paddle.vision.transforms.adjust_contrast(img, contrast_factor) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_hue.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_hue.md new file mode 100644 index 00000000000..83034082d2e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.adjust_hue.md @@ -0,0 +1,30 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.adjust_hue + +### [torchvision.transforms.functional.adjust_hue](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.adjust_hue.html#torchvision.transforms.functional.adjust_hue) + +```python +torchvision.transforms.functional.adjust_hue(img, hue_factor) +``` + +### [paddle.vision.transforms.adjust_hue](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/adjust_hue_cn.html#paddle/vision/transforms/adjust_hue_cn#cn-api-paddle-vision-transforms-adjust_hue) + +```python +paddle.vision.transforms.adjust_hue(img, hue_factor) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.adjust_hue( + Image.new("RGB", (2, 2), color=(100, 100, 100)), 0.25 +) + +# Paddle 写法 +result = paddle.vision.transforms.adjust_hue( + Image.new("RGB", (2, 2), color=(100, 100, 100)), 0.25 +) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.affine.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.affine.md new file mode 100644 index 00000000000..2c8bdb2df53 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.affine.md @@ -0,0 +1,30 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.affine + +### [torchvision.transforms.functional.affine](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.affine.html#torchvision.transforms.functional.affine) + +```python +torchvision.transforms.functional.affine(img, angle, translate, scale, shear, interpolation=torchvision.transforms.functional.NEREAST, fill=None, center=None) +``` + +### [paddle.vision.transforms.affine](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/affine_cn.html#paddle/vision/transforms/affine_cn#cn-api-paddle-vision-transforms-affine) + +```python +paddle.vision.transforms.affine(img, angle, translate, scale, shear, interpolation='nearst', fill=0, center=None) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.affine( + img, 30, (1, 1), 1.0, 0, torchvision.transforms.InterpolationMode.NEAREST +) + +# Paddle 写法 +result = paddle.vision.transforms.affine( + img, 30, (1, 1), 1.0, 0, torchvision.transforms.InterpolationMode.NEAREST +) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.center_crop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.center_crop.md new file mode 100644 index 00000000000..defca44d197 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.center_crop.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.center_crop + +### [torchvision.transforms.functional.center_crop](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.center_crop.html#torchvision.transforms.functional.center_crop) + +```python +torchvision.transforms.functional.center_crop(img, output_size) +``` + +### [paddle.vision.transforms.center_crop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/center_crop_cn.html#paddle/vision/transforms/center_crop_cn#cn-api-paddle-vision-transforms-center_crop) + +```python +paddle.vision.transforms.center_crop(img, output_size) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.center_crop(img, output_size) + +# Paddle 写法 +result = paddle.vision.transforms.center_crop(img, output_size) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.crop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.crop.md new file mode 100644 index 00000000000..082d5942475 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.crop.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.crop + +### [torchvision.transforms.functional.crop](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.crop.html#torchvision.transforms.functional.crop) + +```python +torchvision.transforms.functional.crop(img, top, left, height, width) +``` + +### [paddle.vision.transforms.crop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/crop_cn.html#paddle/vision/transforms/crop_cn#cn-api-paddle-vision-transforms-crop) + +```python +paddle.vision.transforms.crop(img, top, left, height, width) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.crop(img, top, left, height, width) + +# Paddle 写法 +result = paddle.vision.transforms.crop(img, top, left, height, width) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.erase.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.erase.md new file mode 100644 index 00000000000..6969553c16e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.erase.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.erase + +### [torchvision.transforms.functional.erase](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.erase.html#torchvision.transforms.functional.erase) + +```python +torchvision.transforms.functional.erase(img, i, j, h, w, v, inplace) +``` + +### [paddle.vision.transforms.erase](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/erase_cn.html#paddle/vision/transforms/erase_cn#cn-api-paddle-vision-transforms-erase) + +```python +paddle.vision.transforms.erase(img, i, j, h, w, v, inplace) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.erase(img, i, j, h, w, v, inplace) + +# Paddle 写法 +result = paddle.vision.transforms.erase(img, i, j, h, w, v, inplace) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.hflip.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.hflip.md new file mode 100644 index 00000000000..ab715c5b6aa --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.hflip.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.hflip + +### [torchvision.transforms.functional.hflip](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.hflip.html#torchvision.transforms.functional.hflip) + +```python +torchvision.transforms.functional.hflip(img) +``` + +### [paddle.vision.transforms.hflip](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/hflip_cn.html#paddle/vision/transforms/hflip_cn#cn-api-paddle-vision-transforms-hflip) + +```python +paddle.vision.transforms.hflip(img) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.hflip(img) + +# Paddle 写法 +result = paddle.vision.transforms.hflip(img) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.pad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.pad.md new file mode 100644 index 00000000000..c376e431389 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.pad.md @@ -0,0 +1,30 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.pad + +### [torchvision.transforms.functional.pad](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.pad.html#torchvision.transforms.functional.pad) + +```python +torchvision.transforms.functional.pad(img, padding, fill=0, padding_mode='constant') +``` + +### [paddle.vision.transforms.pad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/pad_cn.html#paddle/vision/transforms/pad_cn#cn-api-paddle-vision-transforms-pad) + +```python +paddle.vision.transforms.pad(img, padding, fill=0, padding_mode='constant') +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.pad( + img=img, padding=padding, fill=fill, padding_mode=padding_mode +) + +# Paddle 写法 +result = paddle.vision.transforms.pad( + img=img, padding=padding, fill=fill, padding_mode=padding_mode +) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.perspective.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.perspective.md new file mode 100644 index 00000000000..7dfc6a9dcac --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.perspective.md @@ -0,0 +1,29 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.perspective + +### [torchvision.transforms.functional.perspective](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.perspective.html#torchvision.transforms.functional.perspective) + +```python +torchvision.transforms.functional.perspective(img, startpoints, endpoints, interpolation=torchvision.transforms.functional.InterpolationMode.BILINEAR, fill=None) +``` + +### [paddle.vision.transforms.perspective](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/perspective_cn.html#paddle/vision/transforms/perspective_cn#cn-api-paddle-vision-transforms-perspective) + +```python +paddle.vision.transforms.perspective(img, startpoints, endpoints, interpolation='nearest', fill=0) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.perspective( + img, startpoints, endpoints, torchvision.transforms.InterpolationMode.BILINEAR, fill +) + +# Paddle 写法 +result = paddle.vision.transforms.perspective( + img, startpoints, endpoints, torchvision.transforms.InterpolationMode.BILINEAR, fill +) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.rotate.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.rotate.md new file mode 100644 index 00000000000..b6f2bf7d43a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.rotate.md @@ -0,0 +1,40 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.rotate + +### [torchvision.transforms.functional.rotate](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.rotate.html#torchvision.transforms.functional.rotate) + +```python +torchvision.transforms.functional.rotate(img, angle, interpolation=torchvision.transforms.functional.InterpolationMode.NEAREST, expand=False, center=None, fill=None) +``` + +### [paddle.vision.transforms.rotate](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/rotate_cn.html#paddle/vision/transforms/rotate_cn#cn-api-paddle-vision-transforms-rotate) + +```python +paddle.vision.transforms.rotate(img, angle, interpolation='nearest', expand=False, center=None, fill=0) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.rotate( + img=img, + angle=30, + interpolation=torchvision.transforms.InterpolationMode.BILINEAR, + expand=True, + center=(1, 1), + fill=[128, 128, 128], +) + + +# Paddle 写法 +result = paddle.vision.transforms.rotate( + img=img, + angle=30, + interpolation=torchvision.transforms.InterpolationMode.BILINEAR, + expand=True, + center=(1, 1), + fill=[128, 128, 128], +) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_grayscale.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_grayscale.md new file mode 100644 index 00000000000..24ec801aa20 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_grayscale.md @@ -0,0 +1,25 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.to_grayscale + +### [torchvision.transforms.functional.to_grayscale](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.to_grayscale.html#torchvision.transforms.functional.to_grayscale) + +```python +torchvision.transforms.functional.to_grayscale(img, num_output_channels=1) +``` + +### [paddle.vision.transforms.to_grayscale](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/to_grayscale_cn.html#paddle/vision/transforms/to_grayscale_cn#cn-api-paddle-vision-transforms-to_grayscale) + +```python +paddle.vision.transforms.to_grayscale(img, num_output_channels=1) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.to_grayscale(img, num_output_channels=1) + +# Paddle 写法 +result = paddle.vision.transforms.to_grayscale(img, num_output_channels=1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_tensor.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_tensor.md new file mode 100644 index 00000000000..b0204fc2822 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.to_tensor.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.to_tensor + +### [torchvision.transforms.functional.to_tensor](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.to_tensor.html#torchvision.transforms.functional.to_tensor) + +```python +torchvision.transforms.functional.to_tensor(pic) +``` + +### [paddle.vision.transforms.to_tensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/to_tensor_cn.html#paddle/vision/transforms/to_tensor_cn#cn-api-paddle-vision-transforms-to_tensor) + +```python +paddle.vision.transforms.to_tensor(pic, data_format='CHW') +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.to_tensor(img) + +# Paddle 写法 +result = paddle.vision.transforms.to_tensor(img) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.vflip.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.vflip.md new file mode 100644 index 00000000000..e1a237fb794 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/invok_only_diff/torchvision.transforms.functional.vflip.md @@ -0,0 +1,26 @@ +## [ 仅 API 调用方式不一致 ]torchvision.transforms.functional.vflip + +### [torchvision.transforms.functional.vflip](https://pytorch.org/vision/stable/generated/torchvision.transforms.functional.vflip.html#torchvision.transforms.functional.vflip) + +```python +torchvision.transforms.functional.vflip(img) +``` + +### [paddle.vision.transforms.vflip](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/vflip_cn.html#paddle/vision/transforms/vflip_cn#cn-api-paddle-vision-transforms-vflip) + +```python +paddle.vision.transforms.vflip(img) +``` + +两者功能一致,但调用方式不一致,具体如下: + +### 转写示例 + +```python +# PyTorch 写法 +result = torchvision.transforms.functional.vflip(img) + +# Paddle 写法 +result = paddle.vision.transforms.vflip(img) + +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.get_rng_state_all.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.get_rng_state_all.md deleted file mode 100644 index c92088d86b5..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.get_rng_state_all.md +++ /dev/null @@ -1,29 +0,0 @@ -## [ 返回参数类型不一致 ]torch.cuda.get_rng_state_all -### [torch.cuda.get_rng_state_all](https://pytorch.org/docs/stable/generated/torch.cuda.get_rng_state_all.html#torch.cuda.get_rng_state_all) -```python -torch.cuda.get_rng_state_all() -``` - -### [paddle.get_rng_state]() -```python -paddle.get_rng_state(device='gpu') -``` - -paddle 参数更多,并且 torch 与 paddle 的返回参数类型不一致,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------- | ------------ | -------------------------------------------------------------------------------------------------- | -| - | device | 返回随机数生成器状态的设备,PyTorch 无此参数,Paddle 需设置为'gpu' 。 | -| 返回值 | 返回值 | 返回参数类型不一致, PyTorch 返回 torch.ByteTensor,Paddle 返回 GeneratorState 对象。 | - -### 转写示例 -#### 返回参数类型不同 -```python -# PyTorch 写法,返回 torch.ByteTensor -x = torch.cuda.get_rng_state_all() - -# Paddle 写法,返回 GeneratorState 对象 -x = paddle.get_rng_state(device='gpu') -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.manual_seed.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.manual_seed.md deleted file mode 100644 index 896d5c484a2..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.cuda.manual_seed.md +++ /dev/null @@ -1,29 +0,0 @@ -## [ 返回参数类型不一致 ]torch.cuda.manual_seed -### [torch.cuda.manual_seed](https://pytorch.org/docs/stable/generated/torch.cuda.manual_seed.html#torch.cuda.manual_seed) -```python -torch.cuda.manual_seed(seed) -``` - -### [paddle.seed](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/seed_cn.html) -```python -paddle.seed(seed) -``` - -功能一致,返回类型不一致,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -|---------|--------------|----------------------------------------------------| -| seed | seed | 表示设置的的随机种子(int)。 | -| - | 返回值 | PyTorch 无返回值,Paddle 返回 Generator(全局默认 generator 对象)。 | - -### 转写示例 -#### 返回值 -```python -# torch 写法 -torch.cuda.manual_seed(100) - -# paddle 写法 -gen = paddle.seed(100) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.max.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.max.md deleted file mode 100644 index ec41a35a49b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.max.md +++ /dev/null @@ -1,94 +0,0 @@ -## [ 返回参数类型不一致 ]torch.max -输入一个 Tensor 对应 paddle.max,输入两个 Tensor 对应 paddle.maximum,因此有两组差异分析,分别如下: - -------------------------------------------------------------------------------------------------- - -### [torch.max](https://pytorch.org/docs/stable/generated/torch.max.html?highlight=max#torch.max) -```python -torch.max(input, - dim=None, - keepdim=False, - *, - out=None) -``` - -### [paddle.max](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/max_cn.html#max) -```python -paddle.max(x, - axis=None, - keepdim=False, - name=None) -``` - -其中 PyTorch 与 Paddle 指定 `dim` 后返回值不一致,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 求最大值运算的维度, 仅参数名不一致。 | -| keepdim | keepdim | 是否在输出 Tensor 中保留减小的维度。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | -| 返回值 | 返回值 | 表示返回结果,当指定 dim 后,PyTorch 会返回比较结果和元素索引, Paddle 不会返回元素索引,需要转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# 对指定维度上的 Tensor 元素求最大值运算 - -# PyTorch 写法 -torch.max(a, out=y) -# torch 在输入 dim 时,返回 (values, indices),返回参数类型不一致 - -# Paddle 写法 -paddle.assign(paddle.max(a), y) -``` -#### 指定 dim 后的返回值 -```python -# PyTorch 写法 -result = torch.max(a, dim=1) - -# Paddle 写法 -result = paddle.max(a, axis=1), paddle.argmax(a, axis=1) -``` - --------------------------------------------------------------------------------------------------- - -### [torch.max](https://pytorch.org/docs/stable/generated/torch.max.html?highlight=max#torch.max) -```python -torch.max(input, - other, - *, - out=None) -``` - -### [paddle.maximum](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/minimum_cn.html#minimum) -```python -paddle.maximum(x, - y, - name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 输入的 Tensor ,仅参数名不一致。 | -| other | y | 输入的 Tensor , 仅参数名不一致。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# 逐元素对比输入的两个 Tensor - -# PyTorch 写法 -torch.max(a, b, out=y) -# 在输入 other 时,比较 input 和 other 返回较大值 - -# Paddle 写法 -paddle.assign(paddle.maximum(a, b), y) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.min.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.min.md deleted file mode 100644 index ee100fb0838..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.min.md +++ /dev/null @@ -1,92 +0,0 @@ -## [ 返回参数类型不一致 ]torch.min -输入一个 Tensor 对应 paddle.min,输入两个 Tensor 对应 paddle.minimum,因此有两组差异分析,分别如下: - --------------------------------------------------------------------------------------------------- -### [torch.min](https://pytorch.org/docs/stable/generated/torch.min.html?highlight=min#torch.min) -```python -torch.min(input, - dim=None, - keepdim=False, - *, - out=None) -``` - -### [paddle.min](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/min_cn.html#min) -```python -paddle.min(x, - axis=None, - keepdim=False, - name=None) -``` - -其中 PyTorch 与 Paddle 指定 `dim` 后返回值不一致,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 求最小值运算的维度, 仅参数名不一致。 | -| keepdim | keepdim | 是否在输出 Tensor 中保留减小的维度。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | -| 返回值 | 返回值 | 表示返回结果,当指定 dim 后,PyTorch 会返回比较结果和元素索引, Paddle 不会返回元素索引,需要转写。 | - -### 转写示例 -#### out:指定输出 -```python -# 对指定维度上的 Tensor 元素求最大值运算 - -# PyTorch 写法 -torch.min(a, out=y) -# torch 在输入 dim 时,返回 (values, indices),返回参数类型不一致 - -# Paddle 写法 -paddle.assign(paddle.min(a), y) -``` -#### 指定 dim 后的返回值 -```python -# PyTorch 写法 -result = torch.min(a, dim=1) - -# Paddle 写法 -result = torch.min(a, dim=1), torch.argmin(a, dim=1) -``` - --------------------------------------------------------------------------------------------------- - -### [torch.min](https://pytorch.org/docs/stable/generated/torch.min.html?highlight=min#torch.min) -```python -torch.min(input, - other, - *, - out=None) -``` - -### [paddle.minimum](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/minimum_cn.html#minimum) -```python -paddle.minimum(x, - y, - name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 输入的 Tensor。 | -| other | y | 输入的 Tensor。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# 逐元素对比输入的两个 Tensor - -# PyTorch 写法 -torch.min(a, b, out=y) -# 在输入 other 时,比较 input 和 other 返回较大值 - -# Paddle 写法 -paddle.assign(paddle.minimum(a, b), y) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.sort.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.sort.md deleted file mode 100644 index 31e14ce6669..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.sort.md +++ /dev/null @@ -1,45 +0,0 @@ -## [ 返回参数类型不一致 ]torch.sort -### [torch.sort](https://pytorch.org/docs/stable/generated/torch.sort.html?highlight=sort#torch.sort) -```python -torch.sort(input, - dim=-1, - descending=False, - stable=False, - *, - out=None) -``` - -### [paddle.sort](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/sort_cn.html#paddle.sort) -```python -paddle.sort(x, - axis=-1, - descending=False, - stable=False, - name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,同时两个 api 的返回参数类型不同,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 指定对输入 Tensor 进行运算的轴。默认值为-1, 仅参数名不一致。 | -| descending |descending | 指定算法排序的方向。如果设置为 True,算法按照降序排序。如果设置为 False 或者不设置,按照升序排序。默认值为 False,参数名相同。 | -| stable | stable | 使排序程序更稳定,保证等价元素的顺序得以保留。 | -| out | - | 表示以(Tensor, LongTensor)输出的元组,含义是排序后的返回值和对应元素索引。Paddle 无此参数,若返回排序后的元素,需要转写;若需要返回元素和元素索引,需要结合 argsort 进行转写。 | - -注:PyTorch 返回 (Tensor, LongTensor),Paddle 返回 Tensor 。 - -### 转写示例 -#### out:指定输出 -```python -# 若要返回排序后的元素和元素索引,需要结合 argsort 进行转写 -# PyTorch 写法 -torch.sort(input, -1, True, out = (y, indices)) - -# Paddle 写法 -paddle.assign(paddle.sort(input, -1, True), y) -paddle.assign(paddle.argsort(input, -1, True), indices) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.utils.data.default_collate.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.utils.data.default_collate.md deleted file mode 100644 index 37964d72f29..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/output_args_type_diff/torch.utils.data.default_collate.md +++ /dev/null @@ -1,40 +0,0 @@ -## [ 返回参数类型不一致 ]torch.utils.data.default_collate -### [torch.utils.data.default_collate](https://pytorch.org/docs/stable/data.html?highlight=default_collate#torch.utils.data.default_collate) -```python -torch.utils.data.default_collate(batch) -``` - -### [paddle.io.dataloader.collate.default_collate_fn]() -```python -paddle.io.dataloader.collate.default_collate_fn(batch) -``` - -返回参数类型不一致,需要转写。具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| batch | batch | 输入的用于组 batch 的数据。 | -| 返回值 | 返回值 | 返回参数类型不一致,当 batch 的元素为 numpy.ndarray 或 number 时, PyTorch 默认返回 torch.tensor, Paddle 默认返回 numpy.ndarray。 | - - -### 转写示例 -#### 当 batch 的元素为 numpy.ndarray 或 number 时 -```python -# PyTorch 写法 -y = torch.utils.data.default_collate(batch) - -# Paddle 写法 -y = paddle.to_tensor(paddle.io.dataloader.collate.default_collate_fn(batch)) -``` - -#### 当 batch 的元素为字典且字典的 value 为 numpy.ndarray 或 number 时 -```python -# PyTorch 写法 -y = torch.utils.data.default_collate(batch) - -# Paddle 写法 -y = paddle.io.dataloader.collate.default_collate_fn(batch) -for k, v in y.items(): - y[k] = paddle.to_tensor(v) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.argwhere.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.argwhere.md deleted file mode 100644 index 19c478d1a0e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.argwhere.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ paddle 参数更多 ]torch.Tensor.argwhere -### [torch.Tensor.argwhere](https://pytorch.org/docs/stable/generated/torch.Tensor.argwhere.html#torch.Tensor.argwhere) -```python -torch.Tensor.argwhere() -``` - -### [paddle.Tensor.nonzero](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/Tensor_cn.html#nonzero-as-tuple-false) -```python -paddle.Tensor.nonzero(as_tuple=False) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| - | as_tuple | 返回格式。是否以 1-D Tensor 构成的元组格式返回。 PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.pinverse.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.pinverse.md deleted file mode 100644 index 5bd373210cf..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.Tensor.pinverse.md +++ /dev/null @@ -1,22 +0,0 @@ -## [ paddle 参数更多 ]torch.Tensor.pinverse - -### [torch.Tensor.pinverse](https://pytorch.org/docs/stable/generated/torch.Tensor.pinverse.html#torch.Tensor.pinverse) -```python -torch.Tensor.pinverse() -``` - -### [paddle.Tensor.pinv]() -```python -paddle.Tensor.pinv(rcond=1e-15, - hermitian=False, - name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| - | rcond | 奇异值(特征值)被截断的阈值,PyTorch 无此参数,Paddle 保持默认即可。 | -| - | hermitian | 是否为 hermitian 矩阵或者实对称矩阵,PyTorch 无此参数,Paddle 保持默认即可。| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool2d.md deleted file mode 100644 index 40cd9cca297..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool2d.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.AdaptiveAvgPool2d -### [torch.nn.AdaptiveAvgPool2d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool2d.html) -```python -torch.nn.AdaptiveAvgPool2d(output_size) -``` - -### [paddle.nn.AdaptiveAvgPool2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/AdaptiveAvgPool2D_cn.html#adaptiveavgpool2d) -```python -paddle.nn.AdaptiveAvgPool2D(output_size, data_format='NCHW', name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| output_size | output_size | 表示输出 Tensor 的 size 。 | -| - | data_format | 表示输入 Tensor 的数据格式, PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool3d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool3d.md deleted file mode 100644 index 6a9f4e31acf..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.AdaptiveAvgPool3d.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.AdaptiveAvgPool3d -### [torch.nn.AdaptiveAvgPool3d](https://pytorch.org/docs/stable/generated/torch.nn.AdaptiveAvgPool3d.html) -```python -torch.nn.AdaptiveAvgPool3d(output_size) -``` - -### [paddle.nn.AdaptiveAvgPool3D](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/AdaptiveAvgPool3D_cn.html#adaptiveavgpool3d) -```python -paddle.nn.AdaptiveAvgPool3D(output_size, data_format='NCDHW', name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| output_size | output_size | 表示输出 Tensor 的 size 。 | -| - | data_format | 表示输入 Tensor 的数据格式, PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool1d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool1d.md deleted file mode 100644 index af8892885d9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool1d.md +++ /dev/null @@ -1,28 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.MaxUnpool1d -### [torch.nn.MaxUnpool1d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool1d.html?highlight=maxunpool1d#torch.nn.MaxUnpool1d) -```python -torch.nn.MaxUnpool1d(kernel_size, - stride=None, - padding=0) -``` - -### [paddle.nn.MaxUnPool1D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool1D_cn.html) -```python -paddle.nn.MaxUnPool1D(kernel_size, - stride=None, - padding=0, - data_format='NCL', - output_size=None, - name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| kernel_size | kernel_size | 表示反池化核大小。 | -| stride | stride | 表示反池化核步长。 | -| padding | padding | 表示填充大小。 | -| - | data_format | 输入和输出的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | -| - | output_size | 目标输出尺寸,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool2d.md deleted file mode 100644 index b01d53b1cca..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool2d.md +++ /dev/null @@ -1,28 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.MaxUnpool2d -### [torch.nn.MaxUnpool2d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool2d.html?highlight=maxunpool2d#torch.nn.MaxUnpool2d) -```python -torch.nn.MaxUnpool2d(kernel_size, - stride=None, - padding=0) -``` - -### [paddle.nn.MaxUnPool2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool2D_cn.html) -```python -paddle.nn.MaxUnPool2D(kernel_size, - stride=None, - padding=0, - data_format='NCHW', - output_size=None, - name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| kernel_size | kernel_size | 表示反池化核大小。 | -| stride | stride | 表示反池化核步长。 | -| padding | padding | 表示填充大小。 | -| - | data_format | 输入和输出的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | -| - | output_size | 目标输出尺寸,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool3d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool3d.md deleted file mode 100644 index 1ec4ca953e5..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.MaxUnpool3d.md +++ /dev/null @@ -1,28 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.MaxUnpool3d -### [torch.nn.MaxUnpool3d](https://pytorch.org/docs/stable/generated/torch.nn.MaxUnpool3d.html?highlight=maxunpool3d#torch.nn.MaxUnpool3d) -```python -torch.nn.MaxUnpool3d(kernel_size, - stride=None, - padding=0) -``` - -### [paddle.nn.MaxUnPool3D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/MaxUnPool3D_cn.html) -```python -paddle.nn.MaxUnPool3D(kernel_size, - stride=None, - padding=0, - data_format='NCDHW', - output_size=None, - name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| kernel_size | kernel_size | 表示反池化核大小。 | -| stride | stride | 表示反池化核步长。 | -| padding | padding | 表示填充大小。 | -| - | data_format | 输入和输出的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | -| - | output_size | 目标输出尺寸,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.md deleted file mode 100644 index a24fc14503e..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.md +++ /dev/null @@ -1,20 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.Module - -### [torch.nn.Module](https://pytorch.org/docs/stable/generated/torch.nn.Module.html?highlight=torch+nn+module#torch.nn.Module) -```python -torch.nn.Module(*args, **kwargs) -``` - -### [paddle.nn.Layer](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/Layer_cn.html) -```python -paddle.nn.Layer(name_scope=None, dtype='float32') -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ----- | ---------- | ------------------------------------ | -| - | name_scope | PyTorch 无此参数,Paddle 保持默认即可。 | -| - | dtype | PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.modules.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.modules.md deleted file mode 100644 index 8054091e7ca..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.Module.modules.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.Module.modules -### [torch.nn.Module.modules](https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.modules) -```python -torch.nn.Module.modules() -``` - -### [paddle.nn.Layer.sublayers](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Layer_cn.html#sublayers-include-self-false) -```python -paddle.nn.Layer.sublayers(include_self=False) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------- | ------------ | -- | -| - | include_self | 是否包含本层。PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingBilinear2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingBilinear2d.md deleted file mode 100644 index fcdf6ba071b..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingBilinear2d.md +++ /dev/null @@ -1,19 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.UpsamplingBilinear2d -### [torch.nn.UpsamplingBilinear2d](https://pytorch.org/docs/stable/generated/torch.nn.UpsamplingBilinear2d.html?highlight=upsamplingbilinear2d#torch.nn.UpsamplingBilinear2d) -```python -torch.nn.UpsamplingBilinear2d(size=None, scale_factor=None) -``` - -### [paddle.nn.UpsamplingBilinear2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/UpsamplingBilinear2D_cn.html) -```python -paddle.nn.UpsamplingBilinear2D(size=None,scale_factor=None, data_format='NCHW',name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| size | size | 表示输出 Tensor 的 size 。 | -| scale_factor | scale_factor | 表示输入 Tensor 的高度或宽度的乘数因子。 | -| - | data_format | 表示输入 Tensor 的数据格式, PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingNearest2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingNearest2d.md deleted file mode 100644 index f262c3f9c77..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.UpsamplingNearest2d.md +++ /dev/null @@ -1,19 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.UpsamplingNearest2d -### [torch.nn.UpsamplingNearest2d](https://pytorch.org/docs/stable/generated/torch.nn.UpsamplingNearest2d.html?highlight=upsampl#torch.nn.UpsamplingNearest2d) -```python -torch.nn.UpsamplingNearest2d(size=None, scale_factor=None) -``` - -### [paddle.nn.UpsamplingNearest2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/UpsamplingNearest2D_cn.html) -```python -paddle.nn.UpsamplingNearest2D(size=None, scale_factor=None, data_format='NCHW',name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| size | size | 表示输出 Tensor 的 size 。 | -| scale_factor | scale_factor | 表示输入 Tensor 的高度或宽度的乘数因子。 | -| - | data_format | 表示输入 Tensor 的数据格式, PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.ZeroPad2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.ZeroPad2d.md deleted file mode 100644 index 8367e4f43b0..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.ZeroPad2d.md +++ /dev/null @@ -1,21 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.ZeroPad2d - -### [torch.nn.ZeroPad2d](https://pytorch.org/docs/stable/generated/torch.nn.ZeroPad2d.html?highlight=zeropad#torch.nn.ZeroPad2d) -```python -torch.nn.ZeroPad2d(padding) -``` - -### [paddle.nn.ZeroPad2D](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/ZeroPad2D_cn.html) -```python -paddle.nn.ZeroPad2D(padding, - data_format='NCHW', - name=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| padding | padding | 表示填充大小。 | -| - | data_format | 指定输入的 format, PyTorch 无此参数, Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.functional.pad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.functional.pad.md deleted file mode 100644 index 79c7ff869e9..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torch.nn.functional.pad.md +++ /dev/null @@ -1,34 +0,0 @@ -## [ paddle 参数更多 ]torch.nn.functional.pad -### [torch.nn.functional.pad](https://pytorch.org/docs/stable/generated/torch.nn.functional.pad.html) -```python -torch.nn.functional.pad(input, - pad, - mode='constant', - value=None) -``` - -### [paddle.nn.functional.pad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/functional/pad_cn.html#pad) -```python -paddle.nn.functional.pad(x, - pad, - mode='constant', - value=0.0, - data_format=None, - pad_from_left_axis=True, - name=None) -``` - -两者功能一致,其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 表示输入的 Tensor,仅参数名不一致。 | -| pad | pad | 表示一个 one-hot 向量的长度 。 | -| mode | mode | 表示填充的模式。 | -| value | value | 表示填充的值,mode 为'constant'时有效 。 | -| - | data_format | 指定输入的数据格式, PyTorch 无此参数, Paddle 保持默认即可。 | -| - | pad_from_left_axis | 只有当 mode 为 'constant' ,且 pad 是长度为 2N 的列表时有效,设置 pad 与 x 的轴左对齐或右对齐, PyTorch 无此参数, Paddle 需设置为 False 结果才与 PyTorch 一致。 | - -在实际使用过程中,`data_format` 参数需要根据输入参数进行指定 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.CenterCrop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.CenterCrop.md deleted file mode 100644 index 9a2d06182e3..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.CenterCrop.md +++ /dev/null @@ -1,24 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.CenterCrop -### [torchvision.transforms.CenterCrop](https://pytorch.org/vision/main/generated/torchvision.transforms.CenterCrop.html) -```python -torchvision.transforms.CenterCrop( - size: Union[int, List[int], Tuple[int, ...]] -) -``` - -### [paddle.vision.transforms.CenterCrop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/CenterCrop_cn.html) -```python -paddle.vision.transforms.CenterCrop( - size: Union[int, List[int], Tuple[int, ...]], - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -两者功能一致,但 Paddle 相比 torchvision 支持更多参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------ | ------------ | ---------------------- | -| size | size | 输出图像的形状大小。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ColorJitter.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ColorJitter.md deleted file mode 100644 index e8b48417e18..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ColorJitter.md +++ /dev/null @@ -1,22 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.ColorJitter -### [torchvision.transforms.ColorJitter](https://pytorch.org/vision/main/generated/torchvision.transforms.ColorJitter.html) -```python -torchvision.transforms.ColorJitter(brightness: Union[float, Tuple[float, float]] = 0, contrast: Union[float, Tuple[float, float]] = 0, saturation: Union[float, Tuple[float, float]] = 0, hue: Union[float, Tuple[float, float]] = 0) -``` - -### [paddle.vision.transforms.ColorJitter](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/ColorJitter_cn.html) -```python -paddle.vision.transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0, keys=None) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| --------------------------- | ------------------------------ | --------------------- | -| brightness | brightness | 亮度调整范围大小。 | -| contrast | contrast | 对比度调整范围大小。 | -| saturation | saturation | 饱和度调整范围大小。 | -| hue | hue | 色调调整范围大小。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Grayscale.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Grayscale.md deleted file mode 100644 index 75cda0d305a..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Grayscale.md +++ /dev/null @@ -1,23 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.Grayscale - -### [torchvision.transforms.Grayscale](https://pytorch.org/vision/main/generated/torchvision.transforms.Grayscale.html) -```python -torchvision.transforms.Grayscale(num_output_channels: int = 1) -``` - -### [paddle.vision.transforms.Grayscale](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Grayscale_cn.html) -```python -paddle.vision.transforms.Grayscale( - num_output_channels: int = 1, - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| --------------------------- | ------------------------------ | --------------------- | -| num_output_channels | num_output_channels | 输出图像的通道数。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Pad.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Pad.md deleted file mode 100644 index b3a484fa6a7..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.Pad.md +++ /dev/null @@ -1,32 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.Pad - -### [torchvision.transforms.Pad](https://pytorch.org/vision/main/generated/torchvision.transforms.Pad.html) - -```python -torchvision.transforms.Pad( - padding: Union[int, List[int], Tuple[int, ...]], - fill: Union[int, List[int], Tuple[int, ...]] = 0, - padding_mode: str = 'constant' -) -``` - -### [paddle.vision.transforms.Pad](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/Pad__upper_cn.html#pad) -```python -paddle.vision.transforms.Pad( - padding: Union[int, List[int], Tuple[int, ...]], - fill: Union[int, List[int], Tuple[int, ...]] = 0, - padding_mode: str = 'constant', - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -两者功能一致,但 Paddle 相比 torchvision 支持更多参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------- | ------------- | ----------------------------- | -| padding | padding | 在图像边界上进行填充的范围。 | -| fill | fill | 多通道图像填充。 | -| padding_mode | padding_mode | 填充模式。| -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.RandomCrop.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.RandomCrop.md deleted file mode 100644 index fea93a59d71..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.RandomCrop.md +++ /dev/null @@ -1,36 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.RandomCrop -### [torchvision.transforms.RandomCrop](https://pytorch.org/vision/main/generated/torchvision.transforms.RandomCrop.html) -```python -torchvision.transforms.RandomCrop( - size: Union[int, List[int], Tuple[int, ...]], - padding: Optional[Union[int, List[int], Tuple[int, ...]]] = None, - pad_if_needed: bool = False, - fill: Union[float, Tuple[float, ...]] = 0, - padding_mode: str = 'constant' -) -``` - -### [paddle.vision.transforms.RandomCrop](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/RandomCrop_cn.html) -```python -paddle.vision.transforms.RandomCrop( - size: Union[int, List[int], Tuple[int, ...]], - padding: Optional[Union[int, List[int], Tuple[int, ...]]] = None, - pad_if_needed: bool = False, - fill: Union[float, Tuple[float, ...]] = 0, - padding_mode: str = 'constant', - keys: Optional[Union[List[str], Tuple[str, ...]]] = None -) -``` - -两者功能一致,但 Paddle 相比 torchvision 支持更多参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| ------------- | -------------- | -------------------------------------------------------- | -| size | size | 裁剪后的图片大小。 | -| padding | padding | 对图像四周外边进行填充。 | -| pad_if_needed | pad_if_needed | 是否在裁剪前进行填充以满足大小要求。 | -| fill | fill | 用于填充的像素值。 | -| padding_mode | padding_mode | 填充模式。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ToTensor.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ToTensor.md deleted file mode 100644 index e4486c9d788..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.ToTensor.md +++ /dev/null @@ -1,19 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.ToTensor -### [torchvision.transforms.ToTensor](https://pytorch.org/vision/main/generated/torchvision.transforms.ToTensor.html?highlight=totensor#torchvision.transforms.ToTensor) -```python -torchvision.transforms.ToTensor() -``` - -### [paddle.vision.transforms.ToTensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/ToTensor_cn.html#totensor) -```python -paddle.vision.transforms.ToTensor(data_format: str = 'CHW', keys: List[str] | Tuple[str] = None) -``` - -两者功能基本一致,但 Paddle 相比 torchvision 支持更多参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -|-------------- |-------------------- |----------------------------------- | -| - | data_format | 返回 Tensor 的格式,PyTorch 无此参数,Paddle 保持默认即可。 | -| - | keys | 输入的类型,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.functional.to_tensor.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.functional.to_tensor.md deleted file mode 100644 index 03c0eeeeae6..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/paddle_more_args/torchvision.transforms.functional.to_tensor.md +++ /dev/null @@ -1,22 +0,0 @@ -## [ paddle 参数更多 ]torchvision.transforms.functional.to_tensor -### [torchvision.transforms.functional.to_tensor](https://pytorch.org/vision/main/generated/torchvision.transforms.functional.to_tensor.html) -```python -torchvision.transforms.functional.to_tensor(pic: Union[PIL.Image.Image, numpy.ndarray]) -``` - -### [paddle.vision.transforms.to_tensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/vision/transforms/to_tensor_cn.html) -```python -paddle.vision.transforms.to_tensor( - pic: Union[PIL.Image.Image, np.ndarray], - data_format: str = 'CHW' -) -``` - -其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: - -### 参数映射 - -| torchvision | PaddlePaddle | 备注 | -| --------- | ------------- | ------------------------------ | -| pic | pic | 输入图像。 | -| - | data_format | 返回的 Tensor 的格式,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.Tensor.bernoulli.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.Tensor.bernoulli.md deleted file mode 100644 index 75547c5ed61..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.Tensor.bernoulli.md +++ /dev/null @@ -1,32 +0,0 @@ -## [ torch 参数更多 ]torch.Tensor.bernoulli -### [torch.Tensor.bernoulli](https://pytorch.org/docs/stable/generated/torch.Tensor.bernoulli.html#torch.Tensor.bernoulli) -```python -torch.Tensor.bernoulli(p=None, *, generator=None) -``` - -### [paddle.bernoulli](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/bernoulli_cn.html#bernoulli) -```python -paddle.bernoulli(x, p=None, name=None) -``` - -Pytorch 为 Tensor 类方法,Paddle 为普通函数,另外 PyTorch 相比 Paddle 支持更多其他参数。具体如下: - - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ----------------------------------------------------------------------------- | -| self | x | 伯努利参数 Tensor,将调用 torch.Tensor 类方法的 self Tensor 传入。 | -| p | p | 可选,伯努利参数 p。 | -| generator | - | 用于采样的伪随机数生成器, Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | - - -### 转写示例 -#### self:调用类方法的 Tensor -```python -# PyTorch 写法 -x.bernoulli() - -# Paddle 写法 -paddle.bernoulli(x) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.distributed.ReduceOp.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.distributed.ReduceOp.md deleted file mode 100644 index 2d7a675e375..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.distributed.ReduceOp.md +++ /dev/null @@ -1,27 +0,0 @@ -## [ torch 参数更多 ]torch.distributed.ReduceOp -### [torch.distributed.ReduceOp](https://pytorch.org/docs/stable/distributed.html?highlight=torch+distributed+reduceop#torch.distributed.ReduceOp) -```python -torch.distributed.ReduceOp -``` - -### [paddle.distributed.ReduceOp](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/ReduceOp_cn.html) -```python -paddle.distributed.ReduceOp -``` - -两者功能一致。 - -其中,规约操作对应如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ---- | ---- | --- | -| SUM | SUM | | -| PRODUCT | PROD | | -| MIN | MIN | | -| MAX | MAX | | -| BAND | - | | -| BOR | - | | -| BXOR | - | | -| PREMUL_SUM | - | | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.median.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.median.md deleted file mode 100644 index 35e6f3ed736..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.median.md +++ /dev/null @@ -1,37 +0,0 @@ -## [ torch 参数更多 ]torch.median -### [torch.median](https://pytorch.org/docs/stable/generated/torch.median.html?highlight=median#torch.median) -```python -torch.median(input, - dim=-1, - keepdim=False, - *, - out=None) -``` - -### [paddle.median](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/median_cn.html#median) -```python -paddle.median(x, axis=None, keepdim=False, mode='avg', name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 表示输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 表示进行运算的轴,仅参数名不一致。 | -| keepdim | keepdim | 是否在输出 Tensor 中保留减小的维度。 | -| - | mode | 当 x 在所需要计算的轴上有偶数个非 NaN 元素时,选择使用平均值或最小值确定非 NaN 中位数的值, PyTorch 无此参数,Paddle 需设置为 'min'。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# PyTorch 写法 -torch.median([3, 5], out=y) - -# Paddle 写法 -paddle.assign(paddle.median([3, 5], mode='min'), y) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nanmedian.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nanmedian.md deleted file mode 100644 index 28203bf6177..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nanmedian.md +++ /dev/null @@ -1,37 +0,0 @@ -## [ torch 参数更多 ]torch.nanmedian -### [torch.nanmedian](https://pytorch.org/docs/stable/generated/torch.nanmedian.html?highlight=nanmedian#torch.nanmedian) -```python -torch.nanmedian(input, - dim=-1, - keepdim=False, - *, - out=None) -``` - -### [paddle.nanmedian](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nanmedian_cn.html#nanmedian) -```python -paddle.nanmedian(x, axis=None, keepdim=False, mode='avg', name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input | x | 表示输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 表示进行运算的轴,仅参数名不一致。 | -| keepdim | keepdim | 表示是否在输出 Tensor 中保留减小的维度。 | -| - | mode | 当 x 在所需要计算的轴上有偶数个非 NaN 元素时,选择使用平均值或最小值确定非 NaN 中位数的值, PyTorch 无此参数,Paddle 需设置为 'min'。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# PyTorch 写法 -torch.nanmedian(a, -1, out=y) - -# Paddle 写法 -paddle.assign(paddle.nanmedian(a, -1, mode='min'), y) -``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nn.functional.softmax.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nn.functional.softmax.md deleted file mode 100644 index 0287897cb35..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.nn.functional.softmax.md +++ /dev/null @@ -1,21 +0,0 @@ -## [ torch 参数更多 ]torch.nn.functional.softmax -### [torch.nn.functional.softmax](https://pytorch.org/docs/stable/generated/torch.nn.functional.softmax.html#torch.nn.functional.softmax) -```python -torch.nn.functional.softmax(input, dim=None, _stacklevel=3, dtype=None) -``` - -### [paddle.nn.functional.softmax](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/nn/functional/softmax_cn.html#softmax) -```python -paddle.nn.functional.softmax(x, axis=-1, dtype=None, name=None) -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| --------- | -------------- | ----------------------------------------------------- | -| input | x | 表示输入张量,仅参数名不一致。 | -| dim | axis | 表示对输入 Tensor 进行运算的轴,仅参数名不一致。 | -| dtype | dtype | 表示返回张量所需的数据类型。 | -| _stacklevel | - | Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.optim.Optimizer.step.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.optim.Optimizer.step.md deleted file mode 100644 index d56ee5207fa..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/torch_more_args/torch.optim.Optimizer.step.md +++ /dev/null @@ -1,18 +0,0 @@ -## [ torch 参数更多 ]torch.optim.Optimizer.step -### [torch.optim.Optimizer.step](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.step.html#torch-optim-optimizer-step) -```python -torch.optim.Optimizer.step(closure) -``` - -### [paddle.optimizer.Optimizer.step](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/optimizer/Optimizer_cn.html#step) -```python -paddle.optimizer.Optimizer.step() -``` - -PyTorch 相比 Paddle 支持更多其他参数,具体如下: - -### 参数映射 - -| PyTorch | PaddlePaddle | 备注 | -| -------- | ---------- | ---------------- | -| closure | - | 重新评估模型并返回损失的闭包, Paddle 无此参数,暂无转写方式。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/tools/README.md b/docs/guides/model_convert/convert_from_pytorch/tools/README.md index 6b0dccc91c5..6db38878bc1 100644 --- a/docs/guides/model_convert/convert_from_pytorch/tools/README.md +++ b/docs/guides/model_convert/convert_from_pytorch/tools/README.md @@ -81,8 +81,8 @@ paddle.Tensor.atan2(y, name=None) - `paddle API` 中 `paddle api` 和 `paddle signature` 解析结果是否一致; - `参数映射` 表格是否成功解析(表格每行 3 列) - 状态机结束状态: - - `无参数` 或 `组合替代实现`:允许无参数映射表 - - `组合替代实现` 或更靠后的映射类型:允许无 **paddle API** 部分 + - `仅 API 调用方式不一致` 或 `组合替代实现`:允许无参数映射表 + - `仅 API 调用方式不一致` 或 `组合替代实现`:允许无 **paddle API** 部分 - 其他类型:必须有所有结构 通过设计这一系列约束,可以检查映射文档中粗心疏漏导致的错误,从而降低检查成本;此外,通过将文档解析得到结构化的元数据(`docs_mapping.json`),能为后续流程提供数据支持。 diff --git a/docs/guides/model_convert/convert_from_pytorch/tools/generate_api_difference.py b/docs/guides/model_convert/convert_from_pytorch/tools/generate_api_difference.py deleted file mode 100644 index bc2897d96c2..00000000000 --- a/docs/guides/model_convert/convert_from_pytorch/tools/generate_api_difference.py +++ /dev/null @@ -1,608 +0,0 @@ -from __future__ import annotations - -import argparse -import ast -import contextlib -import inspect -import io -import os -import re -import subprocess -import sys -import textwrap - -from utils import ( - extract_no_need_convert_list, - get_paddle_url, - get_pytorch_url, - load_mapping_json, -) - - -class APIConversionError(Exception): - """自定义异常类,用于API转换过程中的错误""" - - def __init__(self, message, api_name=None): - self.message = message - self.api_name = api_name - super().__init__(self.message) - - def __str__(self): - return f"API Conversion Error for {self.api_name}: {self.message}" - - -def get_function_signature(api_name: str, framework: str) -> str: - """ - 获取API的函数签名,支持普通函数、类方法、内置方法等 - - Args: - api_name: API的全限定名 - framework: 框架名称 - - Returns: - 函数签名字符串 - """ - # 导入框架 - if framework == "torch": - import torch - - module = torch - elif framework == "paddle": - import paddle - - module = paddle - elif framework == "fairscale": - import fairscale - - module = fairscale - elif framework == "transformers": - import transformers - - module = transformers - elif framework == "torchvision": - import torchvision - - module = torchvision - elif framework == "flash_attn": - import flash_attn - - module = flash_attn - else: - raise ValueError("Invalid framework.") - - # 解析API路径 - parts = api_name.split(".")[1:] - api_obj = module - - try: - for part in parts: - api_obj = getattr(api_obj, part) - except Exception as e: - raise ValueError(f"Failed to parse API path: {e}") from e - - # 优先尝试inspect.signature(适用于普通函数和方法) - try: - # 处理类的情况(获取__init__方法) - if inspect.isclass(api_obj): - sig = inspect.signature(api_obj.__init__) - # 移除self参数 - params = [] - first_param = True - for name, param in sig.parameters.items(): - if first_param and name == "self": - first_param = False - continue - first_param = False - params.append(format_param(param)) - - return f"{api_name}({', '.join(params)})" - - # 处理普通函数和方法 - sig = inspect.signature(api_obj) - params = [format_param(param) for param in sig.parameters.values()] - return f"{api_name}({', '.join(params)})" - - except (ValueError, TypeError): - # 如果inspect失败,使用help信息解析 - return parse_signature_from_help(api_obj, api_name) - - -def format_param(param: inspect.Parameter) -> str: - """格式化参数,保留*和**符号""" - if param.kind == param.VAR_POSITIONAL: - return f"*{param.name}" - elif param.kind == param.VAR_KEYWORD: - return f"**{param.name}" - else: - return param.name - - -def parse_signature_from_help(api_obj, api_name: str) -> str: - """从help信息中解析函数签名""" - - # 捕获help输出 - help_output = get_help_output(api_obj, api_name) - if not help_output: - return f"{api_name}(...)" - - # 解析函数签名行 - signature_line = extract_signature_line(help_output, api_name) - if signature_line: - return normalize_signature(signature_line, api_name) - - return f"{api_name}(...)" - - -def get_help_output(api_obj, api_name: str) -> str | None: - """获取API对象的help输出""" - try: - with io.StringIO() as buffer: - with contextlib.redirect_stdout(buffer): - help(api_obj) - return buffer.getvalue() - except: - raise APIConversionError(f"Failed to get help output for {api_name}") - - -def extract_signature_line(help_text: str, api_name: str) -> str | None: - """从help文本中提取签名行""" - lines = help_text.split("\n") - base_name = api_name.split(".")[-1] - - # 匹配模式:函数名后跟括号 - patterns = [ - # 匹配: numel(...) 或 forward(*args: Any, **kwargs: Any) -> Any - rf"^{re.escape(base_name)}\s*\([^)]*\)", - # 匹配: | ZeroPad2d(padding: Union[int, tuple[int, int, int, int]]) -> None - rf"^\s*[\| ]*\w+\s+{re.escape(base_name)}\s*\([^)]*\)", - # 匹配类定义中的签名 - rf"^class\s+\w+\(.*\):\s*\n\s*[\| ]*{re.escape(base_name)}\s*\([^)]*\)", - ] - - for i, line in enumerate(lines): - for pattern in patterns: - if re.search(pattern, line.strip()): - # 对于多行签名,合并后续行直到遇到空行或缩进减少 - signature = line.strip() - j = i + 1 - while ( - j < len(lines) - and lines[j].strip() - and not lines[j].strip().startswith(("def ", "class ")) - ): - signature += " " + lines[j].strip() - j += 1 - return signature - - raise APIConversionError(f"Failed to extract signature line for {api_name}") - - -def normalize_signature(signature_line: str, api_name: str) -> str: - """规范化签名格式""" - # 提取括号内的内容 - match = re.search(r"\(([^)]*)\)", signature_line) - if not match: - return f"{api_name}()" - - params_str = match.group(1) - - # 处理不同的参数格式 - if params_str == "...": # 如: numel(...) - return f"{api_name}()" - - # 解析参数,移除类型注解和默认值 - params = [] - current_param = [] - depth = 0 # 处理嵌套括号 - - for char in params_str + ",": # 添加逗号确保处理最后一个参数 - if char == "," and depth == 0: - param = "".join(current_param).strip() - if param: - # 提取参数名(移除类型注解) - param_name = extract_param_name(param) - if param_name: - params.append(param_name) - current_param = [] - else: - if char == "(": - depth += 1 - elif char == ")": - depth -= 1 - current_param.append(char) - - # 处理特殊参数格式 - final_params = [] - for param in params: - if param.startswith("*") and param.endswith(": Any"): - # 处理 *args: Any, **kwargs: Any - param = param.replace(": Any", "") - elif "=" in param and not param.startswith("*"): - # 移除默认值,保留参数名 - param = param.split("=")[0].strip() - - final_params.append(param) - - return f"{api_name}({', '.join(final_params)})" - - -def extract_param_name(param_str: str) -> str | None: - """从参数字符串中提取参数名""" - param_str = param_str.strip() - - if not param_str: - return None - - # 处理可变参数 *args, **kwargs - if param_str.startswith("*") and param_str.endswith(": Any"): - return param_str.replace(": Any", "") - - # 移除类型注解 - if ":" in param_str: - # 找到第一个冒号(类型注解开始) - colon_pos = param_str.find(":") - param_name = param_str[:colon_pos].strip() - - # 检查是否是可变参数 - if param_name.startswith("*"): - return param_name - else: - return param_name - else: - # 没有类型注解,直接返回 - return ( - param_str.split("=")[0].strip() if "=" in param_str else param_str - ) - - -def find_test_file(torch_api: str, paconvert_dir: str) -> str: - """ - 在paconvert的tests目录中递归查找测试文件 - - Args: - torch_api: Torch API名称 - paconvert_dir: paconvert目录路径 - - Returns: - 测试文件路径 - """ - # 生成测试文件名(如:test_nn_functional_elu.py) - head = torch_api.split(".")[0] - if head == "flash_attn": - parts = torch_api.split(".") - else: - parts = torch_api.split(".")[1:] - file_name = "test_" + "_".join(parts) + ".py" - - # 在tests目录中递归查找 - test_dir = os.path.join(paconvert_dir, "tests") - for root, _, files in os.walk(test_dir): - if file_name in files: - return os.path.join(root, file_name) - - raise APIConversionError(f"Test file not found for {torch_api}", torch_api) - - -def extract_test_case_code(test_file: str) -> str: - """ - 从测试文件中提取第一个测试用例的pytorch代码 - - Args: - test_file: 测试文件路径 - - Returns: - 提取的pytorch代码字符串 - """ - with open(test_file, "r", encoding="utf-8") as f: - content = f.read() - - # 解析AST找到第一个测试函数 - module = ast.parse(content) - - for node in module.body: - if isinstance(node, ast.FunctionDef) and node.name.startswith("test_"): - # 在测试函数中查找pytorch_code的赋值语句 - for item in node.body: - if isinstance(item, ast.Assign): - for target in item.targets: - if ( - isinstance(target, ast.Name) - and target.id == "pytorch_code" - ): - # 检查赋值语句的值是否是函数调用 - if isinstance(item.value, ast.Call): - call_func = item.value.func - # 检查是否是textwrap.dedent调用 - if ( - isinstance(call_func, ast.Attribute) - and isinstance(call_func.value, ast.Name) - and call_func.value.id == "textwrap" - and call_func.attr == "dedent" - ): - # 获取dedent的第一个参数(应该是字符串) - if item.value.args and isinstance( - item.value.args[0], ast.Str - ): - # 返回字符串内容,去除首尾的三引号 - code_str = item.value.args[0].s - return textwrap.dedent(code_str) - - # 处理Python 3.8+的ast.Constant节点 - elif ( - item.value.args - and isinstance( - item.value.args[0], ast.Constant - ) - and isinstance( - item.value.args[0].value, str - ) - ): - code_str = item.value.args[0].value - return textwrap.dedent(code_str) - - raise APIConversionError(f"Test case not found in {test_file}", test_file) - - -def get_torch_example(torch_api: str, paconvert_dir: str) -> str: - """ - 获取Torch API的示例代码 - - Args: - torch_api: Torch API名称 - paconvert_dir: paconvert目录路径 - - Returns: - Torch API调用代码 - """ - # 1. 查找测试文件 - test_file = find_test_file(torch_api, paconvert_dir) - - # 2. 提取测试用例代码 - test_code = extract_test_case_code(test_file) - - # 3. 写入临时文件 - torch_temp_file = f"temp_generate_api_difference_{torch_api.replace('.', '_')}_torch_code.py" - with open(torch_temp_file, "w") as f: - f.write(test_code) - - # 4. 使用paconvert补全代码 - complete_file = f"temp_generate_api_difference_{torch_api.replace('.', '_')}_torch_code_complete.py" - try: - subprocess.run( - [ - "python3.10", - os.path.join(paconvert_dir, "paconvert", "main.py"), - "-i", - torch_temp_file, - "-o", - complete_file, - "--only_complete", - ], - check=True, - capture_output=True, - ) - - # 5. 替换import paddle为import torch - with open(complete_file, "r") as f: - lines = f.readlines() - - if lines and "import paddle" in lines[0]: - lines[0] = "import torch\n" - - with open(complete_file, "w") as f: - f.writelines(lines) - - # 6. 查找包含API调用的行 - with open(complete_file, "r") as f: - for line in f: - if torch_api.split(".")[-1] in line: - return line.strip() - - except subprocess.CalledProcessError as e: - raise APIConversionError( - f"paconvert failed: {e.stderr.decode().strip()}", torch_api - ) from e - - # 如果执行到这里,说明没有找到API调用 - raise APIConversionError( - f"torch API call not found in converted code for {torch_api}", torch_api - ) - - -def get_conversion_example( - torch_code: str, torch_api: str, paddle_api: str, paconvert_dir: str -) -> str: - """ - 使用paconvert转换Torch代码为Paddle代码 - - Args: - torch_code: Torch代码 - torch_api: Torch API名称(用于临时文件命名) - paddle_api: Paddle API名称 - paconvert_dir: paconvert目录路径 - - Returns: - Paddle API调用代码 - """ - # 1. 创建临时文件 - temp_file = f"temp_generate_api_difference_{torch_api.replace('.', '_')}_torch_code_complete.py" - # with open(temp_file, "w") as f: - # f.write(torch_code) - - # 2. 运行paconvert转换 - paddle_file = f"temp_generate_api_difference_{torch_api.replace('.', '_')}_paddle_code.py" - try: - subprocess.run( - [ - "python3.10", - os.path.join(paconvert_dir, "paconvert", "main.py"), - "-i", - temp_file, - "-o", - paddle_file, - ], - check=True, - capture_output=True, - ) - - # 3. 查找包含API调用的行 - with open(paddle_file, "r") as f: - for line in f: - if paddle_api.split(".")[-1] in line: - return line.strip() - - except subprocess.CalledProcessError as e: - raise APIConversionError( - f"paconvert conversion failed: {e.stderr.decode().strip()}", - torch_api, - ) from e - - # 如果执行到这里,说明没有找到API调用 - raise APIConversionError( - f"paddle API call not found in converted code for {torch_api}", - torch_api, - ) - - -def generate_invok_diff_only_docs( - output_dir: str, paconvert_dir: str, overwrite: bool = False -): - """ - 生成"仅 API 调用方式不一致"类别的API差异文档 - - Args: - output_dir: 输出目录 - paconvert_dir: PaConvert目录路径 - overwrite: 是否覆盖已有文件 - """ - script_dir = os.path.dirname(os.path.abspath(__file__)) - - api_mapping_path = os.path.join(script_dir, "api_mapping.json") - attribute_mapping_path = os.path.join(script_dir, "attribute_mapping.json") - global_var_path = os.path.join(script_dir, "global_var.py") - no_need_list = extract_no_need_convert_list(global_var_path) - - output_dir = os.path.join(script_dir, output_dir) - - whitelist_api = [ - "fairscale.nn.model_parallel.initialize.get_model_parallel_rank", - "fairscale.nn.model_parallel.initialize.get_model_parallel_world_size", - "flash_attn.__version__.split", - ] - - # 读取API映射 - api_mapping = load_mapping_json(api_mapping_path) - attribute_mapping = load_mapping_json(attribute_mapping_path) - api_mapping = api_mapping | attribute_mapping - - # 定义属于invok_diff_only类别的Matcher - invok_diff_matchers = [ - "ChangeAPIMatcher", - "TensorFunc2PaddleFunc", - "Func2Attribute", - "Attribute2Func", - "NumelMatcher", - "Is_InferenceMatcher", - ] - - # 创建输出目录 - test_output_dir = os.path.join(output_dir, "invok_diff_only") - actually_output_dir = os.path.join( - output_dir, "../../api_difference/invok_diff_only" - ) - os.makedirs(test_output_dir, exist_ok=True) - - # 生成文档 - for torch_api, mapping in api_mapping.items(): - if ( - mapping.get("Matcher") in invok_diff_matchers - and torch_api not in whitelist_api - and torch_api not in no_need_list - ): - paddle_api = mapping["paddle_api"] - print(f"Processing: {torch_api} -> {paddle_api}") - # 生成文件名 - file_name = f"{torch_api}.md" - file_path = os.path.join(test_output_dir, file_name) - if overwrite: - file_path = os.path.join(actually_output_dir, file_name) - - try: - # 获取URL - torch_url = get_pytorch_url(torch_api) - paddle_url = get_paddle_url(paddle_api) - - # 获取函数签名 - module = torch_api.split(".")[0] - torch_signature = get_function_signature(torch_api, module) - paddle_signature = get_function_signature(paddle_api, "paddle") - - # 生成转写示例 - torch_example = get_torch_example(torch_api, paconvert_dir) - paddle_example = get_conversion_example( - torch_example, torch_api, paddle_api, paconvert_dir - ) - - # 生成文档内容 - content = f"## [ 仅 API 调用方式不一致 ]{torch_api}\n\n" - content += f"### [{torch_api}]({torch_url})\n\n" - content += "```python\n" - content += f"{torch_signature}\n" - content += "```\n\n" - content += f"### [{paddle_api}]({paddle_url})\n\n" - content += "```python\n" - content += f"{paddle_signature}\n" - content += "```\n\n" - content += "两者功能一致,但调用方式不一致,具体如下:\n\n" - content += "### 转写示例\n\n" - content += "```python\n" - content += f"# PyTorch 写法\n{torch_example}\n\n" - content += f"# Paddle 写法\n{paddle_example}\n" - content += "```\n" - - # 保存文件 - with open(file_path, "w", encoding="utf-8") as f: - f.write(content) - - print(f"Generated: {file_path}") - - except APIConversionError as e: - print(f"ERROR: {e}", file=sys.stderr) - continue - except Exception as e: - print(f"UNEXPECTED ERROR: {e} for {torch_api}", file=sys.stderr) - continue - - -def main(): - parser = argparse.ArgumentParser( - description="Generate API difference documents for invok_diff_only category" - ) - parser.add_argument( - "--output_dir", - type=str, - default="test", - help="Output directory for generated docs", - ) - parser.add_argument( - "--paconvert_dir", - type=str, - default="/workspace/PaConvert", - help="Path to PaConvert directory", - ) - parser.add_argument( - "--overwrite", action="store_true", help="Overwrite existing files" - ) - - args = parser.parse_args() - - # 生成文档 - generate_invok_diff_only_docs( - output_dir=args.output_dir, - paconvert_dir=args.paconvert_dir, - overwrite=args.overwrite, - ) - - -if __name__ == "__main__": - main() diff --git a/docs/guides/model_convert/convert_from_pytorch/tools/generate_pytorch_api_mapping.py b/docs/guides/model_convert/convert_from_pytorch/tools/generate_pytorch_api_mapping.py index 8d0a2088ba2..ff4b039c8f2 100644 --- a/docs/guides/model_convert/convert_from_pytorch/tools/generate_pytorch_api_mapping.py +++ b/docs/guides/model_convert/convert_from_pytorch/tools/generate_pytorch_api_mapping.py @@ -122,6 +122,7 @@ def generate_category1_table( rows.append((torch_api, col2, col3, mapping_category, "-")) # 生成Markdown表格字符串 + rows = sorted(rows, key=lambda x: x[1].replace(r"\_", "_")) table_lines = TABLE_HEADER_LINES.copy() for idx, (_, col2, col3, mapping_category, remark) in enumerate( @@ -242,6 +243,7 @@ def generate_category2_table( existing_apis.add(src_api) # 生成Markdown表格字符串 + rows = sorted(rows, key=lambda x: x[1].replace(r"\_", "_")) table_lines = TABLE_HEADER_LINES.copy() for idx, (_, col2, col3, mapping_category, remark) in enumerate( @@ -269,7 +271,7 @@ def generate_api_alias_table( # 遍历api_alias_data,为每个别名映射生成表格行 for torch_api, torch_api_alias in api_alias_data.items(): # 检查API是否已经在前面的类别中处理过 - if torch_api in existing_apis or torch_api_alias in existing_apis: + if torch_api in existing_apis: continue # 在docs_mapping中查找torch_api_alias对应的Paddle API @@ -309,9 +311,9 @@ def generate_api_alias_table( used_apis.add(torch_api) used_apis.add(torch_api_alias) existing_apis.add(torch_api) - existing_apis.add(torch_api_alias) # 生成Markdown表格字符串 + rows = sorted(rows, key=lambda x: x[1].replace(r"\_", "_")) table_lines = TABLE_HEADER_LINES.copy() for idx, (_, col2, col3, mapping_category, remark) in enumerate( @@ -370,6 +372,7 @@ def generate_no_implement_table( ) # 检查API是否已经在前面的类别中处理过 + torch_api = torch_api.replace(r"\_", "_") if torch_api in existing_apis: continue @@ -409,9 +412,10 @@ def generate_no_implement_table( existing_apis.add(torch_api) # 生成Markdown表格字符串 + rows = sorted(rows, key=lambda x: x[1].replace(r"\_", "_")) table_lines = TABLE_HEADER_LINES.copy() - for idx, (_, col2, col3, mapping_category, remark) in enumerate( + for idx, (torch_api, col2, col3, mapping_category, remark) in enumerate( rows, start=1 ): table_lines.append( @@ -449,6 +453,7 @@ def update_mapping_table( if api_name in existing_apis: continue + existing_apis.add(api_name) mapping_info = api_mapping_dict.get(api_name, {}) dst_api = mapping_info.get("dst_api", "-") diff --git a/docs/guides/model_convert/convert_from_pytorch/tools/get_api_difference_info.py b/docs/guides/model_convert/convert_from_pytorch/tools/get_api_difference_info.py index d9f05fe029c..13f0f919a4e 100644 --- a/docs/guides/model_convert/convert_from_pytorch/tools/get_api_difference_info.py +++ b/docs/guides/model_convert/convert_from_pytorch/tools/get_api_difference_info.py @@ -15,47 +15,17 @@ validate_whitelist = [] mapping_type_levels = [ - # type 0 - ["UNDEFINED_MAPPING_TYPE_0"], - # type 1 [ - "无参数", - "参数完全一致", "仅 API 调用方式不一致", "仅参数名不一致", "paddle 参数更多", "参数默认值不一致", - ], - # type 2 - [ - "torch 参数更多", - ], - # type 3 - [ "返回参数类型不一致", "输入参数类型不一致", "输入参数用法不一致", - ], - # type 4 - [ + "torch 参数更多", "组合替代实现", ], - # type 5 - [ - "涉及上下文修改", - ], - # type 6 - [ - "对应 API 不在主框架", - ], - # type 7 - [ - "功能缺失", - ], - # delete - [ - "可删除", - ], ] mapping_type_set = {t for ts in mapping_type_levels for t in ts} @@ -477,7 +447,7 @@ def get_meta_from_diff_file( ) # 允许没有参数映射列表 - if mapping_type in ["无参数", "组合替代实现", "仅 API 调用方式不一致"]: + if mapping_type in ["组合替代实现", "仅 API 调用方式不一致"]: if state == ParserState.wait_for_args: state = ParserState.end # 必须有参数映射列表,但是可以随时停止 @@ -491,8 +461,8 @@ def get_meta_from_diff_file( ) # 允许的终止状态,解析完了 dst_api 或者只有 src_api - # 映射类型前三个级别必须要有对应的 dst_api - if mapping_type_to_level[mapping_type] <= 3: + # 映射类型除了 "组合替代实现" 和 "仅 API 调用方式不一致" 之外,其他的都必须有 dst_api + if mapping_type not in ["组合替代实现", "仅 API 调用方式不一致"]: if state != ParserState.end: print(state) raise Exception( diff --git a/docs/guides/model_convert/convert_from_pytorch/tools/utils.py b/docs/guides/model_convert/convert_from_pytorch/tools/utils.py index a54de7bcc04..ae6c83f5ee1 100644 --- a/docs/guides/model_convert/convert_from_pytorch/tools/utils.py +++ b/docs/guides/model_convert/convert_from_pytorch/tools/utils.py @@ -252,6 +252,11 @@ def parse_md_files(directories): except Exception as e: print(f"错误: 读取文件 {md_path} 时出错: {e!s}") + for category, apis in category_api_map.items(): + category_api_map[category] = sorted( + apis, key=lambda x: x["api_name"].replace(r"\_", "_") + ) + return category_api_map