Из ангуляра отправляешь параметры поиска, либо в какой-то отдельный сервис в дрф, либо просто как query-params к какому-либо ресурсу. Обрабатываешь эти параметры, делаешь запрос в сфинкс, получаешь ответ, например в виде списка id. Отдаешь эти айдишники в queryset.
class ProductViewSet(viewsets.ReadOnlyModelViewSet):
    # queryset = Product.objects.filter(is_active=True)
    def get_queryset(self):
        queryset = Product.objects.filter(is_active=True)
        attributes = self.request.query_params.get('attributes', None)
        # if attributes is not None:
        #     custom logic of search 
        #     list_of_ids = [...]
        #     queryset.filter(id__in=list_of_ids)
        return queryset
Можно еще через django-filter,  через MethodFilter