В представлении я получаю результат классификатора изображений в виде словаря, содержащего имя животного как ключ и вероятность того, что это правильное животное как value .
{'dog': 0.9, 'wolf': 0.1}
Отсюда я отправляю Response , содержащий всех животных из словаря, которые также есть в Animal Model .
[
{
'common_name': 'dog',
'scientific_name' : 'Canis lupus familiaris',
},
]
Я хотел бы добавить значение вероятности для каждого вхождения, содержащегося в словаре:
[
{
'common_name': 'dog',
'scientific_name' : 'Canis lupus familiaris',
'probability' : 0.9,
},
]
Какова будет лучшая стратегия для этого?
Вот я пока что:
Views.py :
class AnimalListCreateAPIView(APIView):
def get(self,request):
classifier_result={'dog': 0.9, 'wolf': 0.1}
list_animals=list(classifier_result.keys())
animals = Animal.objects.filter(common_name__in=list_animals)
serializer = AnimalSerializer(animals, many=True)
return Response(serializer.data)
Serializers.py :
class AnimalSerializer(serializers.ModelSerializer):
class Meta:
model= Animal
fields= [' common_name ',' scientific_name ']
Models.py
class Animal(models.Model):
common_name = models.CharField(max_length=50)
scientific_name = models.CharField(max_length=50)
def __str__(self):
return self. common_name