def get_proc_family_model():
    """Extracts the family and model based on vendorId

        :rtype: (ComputedFamily, ComputedModel)
    """
    cpuid_res = do_cpuid(1)
    if is_intel_proc():
        format = X86IntelCpuidFamilly
    elif is_amd_proc():
        format = X86AmdCpuidFamilly
    else:
        raise NotImplementedError("Cannot get familly information of proc <{0}>".format(get_vendor_id()))
    infos = format.from_buffer_copy(struct.pack("<I", cpuid_res.EAX))
    if infos.FamilyID == 0x6 or infos.FamilyID == 0x0F:
        ComputedModel = infos.ModelID + (infos.ExtendedModel << 4)
    else:
        ComputedModel = infos.ModelID
    if infos.FamilyID == 0x0F:
        ComputedFamily = infos.FamilyID + infos.ExtendedFamily
    else:
        ComputedFamily = infos.FamilyID
    return ComputedFamily, ComputedModel
dataset/ETHPy150Open hakril/PythonForWindows/windows/native_exec/cpuid.py/get_proc_family_model/original