def _map_suggestions(self, data: Dict[str, Any], mapping) -> List[Suggestion]:
        """Converts an arbitrary dictionary to a list of Suggestion objects for use by the add or update methods.
        Suggestions can be defined accross multiple columns in the data, so we need to map them to the appropriately.add()

        Parameters:
            data: A dictionary representing the vector.
            mapping: A dictionary mapping from source data keys/ columns to Argilla fields, questions, ids, etc.

        Returns:
             A list of Suggestion objects.

        """
        suggestions = []

        for name, route in mapping.items():
            if route.source not in data:
                continue
            parameters = {param.parameter_type: data.get(param.source) for param in route.parameters}
            if parameters.get(ParameterType.VALUE) is None:
                continue
            question = self._dataset.questions[name]
            suggestion = Suggestion(
                **parameters,
                question_name=question.name,
            )
            suggestions.append(suggestion)

        return suggestions
Converts an arbitrary dictionary to a list of Suggestion objects for use by the add or update methods.
        Suggestions can be defined accross multiple columns in the data, so we need to map them to the appropriately.add()

        Parameters:
            data: A dictionary representing the vector.
            mapping: A dictionary mapping from source data keys/ columns to Argilla fields, questions, ids, etc.

        Returns:
             A list of Suggestion objects.

        
argilla/src/argilla/records/_mapping/_mapper.py