code: def detach_volume(self, volume_id, instance_id=None,
                        device=None, force=False):
          
          params = {'VolumeId' : volume_id}
          if instance_id:
              params['InstanceId'] = instance_id
          if device:
              params['Device'] = device
          if force:
              params['Force'] = 'true'
          return self.get_status('DetachVolume', params, verb='POST')
docs: Detach an EBS volume from an EC2 instance.
  
          :type volume_id: str
          :param volume_id: The ID of the EBS volume to be attached.
  
          :type instance_id: str
          :param instance_id: The ID of the EC2 instance from which it will
                              be detached.
  
          :type device: str
          :param device: The device on the instance through which the
                         volume is exposted (e.g. /dev/sdh)
  
          :type force: bool
          :param force: Forces detachment if the previous detachment attempt did
                        not occur cleanly.  This option can lead to data loss or
                        a corrupted file system. Use this option only as a last
                        resort to detach a volume from a failed instance. The
                        instance will not have an opportunity to flush file system
                        caches nor file system meta data. If you use this option,
                        you must perform file system check and repair procedures.
  
          :rtype: bool
          :return: True if successful