human
I wrote the below code

    def _inference(iter):
        mgr = _get_manager(cluster_info, util.get_ip_address(), os.getppid())
        queue_in = mgr.get_queue(qname)
        logging.info('Feeding    partition    {0}    into    {1}    queue    {2}'.format(iter, qname, queue_in))
        count = 0
        for item in iter:
            count += 1
            queue_in.put(item, block=True)
        queue_in.put(marker.EndPartition())
        if (count == 0):
            return []
        queue_in.join()
        logging.info('Processed    {0}    items    in    partition'.format(count))
        results = []
        queue_out = mgr.get_queue('output')
        while (count > 0):
            result = queue_out.get(block=True)
            results.append(result)
            count -= 1
            queue_out.task_done()
        logging.info('Finished    processing    partition')
        return results
    return _inference

What's a good function header?
assistant
#Here's a good function header.

def inference(cluster_info, qname='input'):