Labels should be derived [using the field instance](https://github.com/cbmi/avocado/blob/master/avocado/models.py#L538-L540), not directly from the instance since it could be anything. Change this to:

```python
if isinstance(cleaned, QuerySet):
    value_labels = instance.value_labels()
    values = [value_labels.get(obj.pk) for obj in cleaned]
else:
    values = cleaned
```