If the output_size argument is fixed for each layer, you could create a custom module and set this argument during its initialization:
class MyConvTranspose3d(nn.Module):
    def __init__(self, conv, output_size=None):
        super().__init__()
        self.conv = conv
        self.output_size = output_size
        
    def forward(self, x):
        x = self.conv(x, output_size=self.output_size)
        return x


model = nn.Sequential(
    MyConvTranspose3d(
        nn.ConvTranspose3d(
            in_channels=1,
            out_channels=1,
            kernel_size=3,
            stride=2,
            padding=1,
            bias= False,
        ),
        output_size=(10, 12, 10)
    )
)

x = torch.randn(1, 1, 5, 6, 5)
out = model(x)
print(out.shape)
> torch.Size([1, 1, 10, 12, 10])

Otherwise, if this argument depends on the input shape, I would recommend to use a custom module and not an nn.Sequential container for the needed flexibility.