Você está tentando dividir um valor float nesta linha
ids = filter(None, value.split(self.separator))
Eu acho que você pode simplesmente remover esta linha. À medida que você lida com o
None
caso e dividir antes. ids = filter(None, value.split(self.separator))
None
caso e dividir antes.