Skip to content

ImportError: cannot import name 'ViolenceMultimodalEvaluator' #332

@doruit

Description

@doruit

The error occurs because the latest version of the Azure AI Evaluation SDK (v1.3.0) has removed multimodal evaluator classes such as ViolenceMultimodalEvaluator. In this release the multimodal evaluators were replaced by their generic counterparts (e.g. ViolenceEvaluator) to streamline the API.

Change evaluators.py import statement from:

from azure.ai.evaluation import ViolenceMultimodalEvaluator, SelfHarmMultimodalEvaluator, HateUnfairnessMultimodalEvaluator, SexualMultimodalEvaluator

to:

from azure.ai.evaluation import SelfHarmMultimodalEvaluator, HateUnfairnessMultimodalEvaluator, SexualMultimodalEvaluator

And disable/remove ViolenceMultimodalEvaluator in the ImageEvaluator class:

class ImageEvaluator:
    def __init__(self, project_scope):
        self.evaluators = {
            # "violence":ViolenceMultimodalEvaluator(
            #     credential=DefaultAzureCredential(), 
            #     azure_ai_project=project_scope,
            # ), 
            "self_harm":SelfHarmMultimodalEvaluator(
                credential=DefaultAzureCredential(), 
                azure_ai_project=project_scope,
            ),
......

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions