I have little experience with pipelines, but I think the issue is that embed(example['sentence']) should return a vector representation for example['sentence']. However, calling a text classification pipeline returns a dict with labels and scores. Instead, you need to run a feature extraction pipeline which should return vectors. (You may need to unpack it though, as the return type is a nested list, presumably for batched processing.)
So (untested) you can try something like:
embed = pipeline('feature-extraction', model="nlptown/bert-base-multilingual-uncased-sentiment")
...
ds_with_embeddings = ds.map(lambda example: {'embeddings': embed(example['sentence'])[0]})

You may need to test a bit with the [0]. Not sure whether it is necessary.