MessagePack lida com bytes brutos, que são marcados como codificação 'ASCII-8BIT'. No entanto, seus dados compactados estão voltando do Redis marcados como em codificação UTF-8. Para que o MessagePack seja descompactado com sucesso, você precisa forçá-lo a ser interpretado como bytes brutos.
Portanto, altere esta linha ...
result = MessagePack.unpack(redis.get('my_key'))
para algo assim...
redis_val = redis.get('my_key').force_encoding('ASCII-8BIT')
result = MessagePack.unpack(redis_val)