This function name is confusing.  The function might not raise, so why is it called "raise...".  I didn't realize until I saw it used in the LMS.  This is a function used as "select", so let's name it "select_if_only_one", or "select_simple" or "select_basic" "select_obvious" or "default_select", or something.  Look at the LMS code:
```
def prefer_xmodules(identifier, entry_points):
    """Prefer entry_points from the xmodule package"""
    from_xmodule = [entry_point for entry_point in entry_points if entry_point.dist.key == 'xmodule']
    if from_xmodule:
       return raise_ambiguous_exception(identifier, from_xmodule)
    else:
        return raise_ambiguous_exception(identifier, entry_points)
```
This function reads like it always raises an exception.