x = np.array([1.8507 ,-2.7324])
y = np.array([0.9722 , 0.4470 , 1.0000 , 0.0000 , 0.0000 , 0.0000])
x = torch.from_numpy(x)
y = torch.from_numpy(y)
z = x.unsqueeze(0)*y.unsqueeze(1)
print(z)

or
x = np.array([1.8507 ,-2.7324])
y = np.array([0.9722 , 0.4470 , 1.0000 , 0.0000 , 0.0000 , 0.0000])
x = torch.from_numpy(x)
y = torch.from_numpy(y)
z = x*y.unsqueeze(1)
print(z)

both work on my computer. I prefer the former as it explicit specifies the tensor shape.