MessagePack se zabývá v nezpracovaných bajtech, které jsou označeny jako kódování 'ASCII-8BIT'. Vaše zabalená data se však vrací z Redis označená jako v kódování UTF-8. Aby se MessagePack úspěšně rozbalil, musíte jej vynutit zpět, aby byl interpretován jako nezpracované bajty.
Proto změňte tento řádek...
result = MessagePack.unpack(redis.get('my_key'))
na něco takového...
redis_val = redis.get('my_key').force_encoding('ASCII-8BIT')
result = MessagePack.unpack(redis_val)