Get rid of suggest_execution_provider() via the insert trick
This commit is contained in:
@@ -17,21 +17,14 @@ def has_execution_provider(execution_provider : ExecutionProvider) -> bool:
|
|||||||
return execution_provider in get_available_execution_providers()
|
return execution_provider in get_available_execution_providers()
|
||||||
|
|
||||||
|
|
||||||
def suggest_execution_provider(execution_providers : List[ExecutionProvider]) -> ExecutionProvider:
|
|
||||||
for execution_provider in facefusion.choices.execution_providers:
|
|
||||||
if execution_provider in execution_providers:
|
|
||||||
return execution_provider
|
|
||||||
|
|
||||||
return get_last(facefusion.choices.execution_providers)
|
|
||||||
|
|
||||||
|
|
||||||
def get_available_execution_providers() -> List[ExecutionProvider]:
|
def get_available_execution_providers() -> List[ExecutionProvider]:
|
||||||
inference_session_providers = get_available_providers()
|
inference_session_providers = get_available_providers()
|
||||||
available_execution_providers = []
|
available_execution_providers = []
|
||||||
|
|
||||||
for execution_provider, execution_provider_value in facefusion.choices.execution_provider_set.items():
|
for execution_provider, execution_provider_value in facefusion.choices.execution_provider_set.items():
|
||||||
if execution_provider_value in inference_session_providers:
|
if execution_provider_value in inference_session_providers:
|
||||||
available_execution_providers.append(execution_provider)
|
index = facefusion.choices.execution_providers.index(execution_provider)
|
||||||
|
available_execution_providers.insert(index, execution_provider)
|
||||||
|
|
||||||
return available_execution_providers
|
return available_execution_providers
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ from argparse import ArgumentParser, HelpFormatter
|
|||||||
import facefusion.choices
|
import facefusion.choices
|
||||||
from facefusion import config, metadata, state_manager, wording
|
from facefusion import config, metadata, state_manager, wording
|
||||||
from facefusion.common_helper import create_float_metavar, create_int_metavar, get_first, get_last
|
from facefusion.common_helper import create_float_metavar, create_int_metavar, get_first, get_last
|
||||||
from facefusion.execution import get_available_execution_providers, suggest_execution_provider
|
from facefusion.execution import get_available_execution_providers
|
||||||
from facefusion.ffmpeg import get_available_encoder_set
|
from facefusion.ffmpeg import get_available_encoder_set
|
||||||
from facefusion.filesystem import get_file_name, resolve_file_paths
|
from facefusion.filesystem import get_file_name, resolve_file_paths
|
||||||
from facefusion.jobs import job_store
|
from facefusion.jobs import job_store
|
||||||
@@ -198,7 +198,7 @@ def create_execution_program() -> ArgumentParser:
|
|||||||
available_execution_providers = get_available_execution_providers()
|
available_execution_providers = get_available_execution_providers()
|
||||||
group_execution = program.add_argument_group('execution')
|
group_execution = program.add_argument_group('execution')
|
||||||
group_execution.add_argument('--execution-device-id', help = wording.get('help.execution_device_id'), default = config.get_str_value('execution.execution_device_id', '0'))
|
group_execution.add_argument('--execution-device-id', help = wording.get('help.execution_device_id'), default = config.get_str_value('execution.execution_device_id', '0'))
|
||||||
group_execution.add_argument('--execution-providers', help = wording.get('help.execution_providers').format(choices = ', '.join(available_execution_providers)), default = config.get_str_list('execution.execution_providers', suggest_execution_provider(available_execution_providers)), choices = available_execution_providers, nargs = '+', metavar = 'EXECUTION_PROVIDERS')
|
group_execution.add_argument('--execution-providers', help = wording.get('help.execution_providers').format(choices = ', '.join(available_execution_providers)), default = config.get_str_list('execution.execution_providers', get_first(available_execution_providers)), choices = available_execution_providers, nargs = '+', metavar = 'EXECUTION_PROVIDERS')
|
||||||
group_execution.add_argument('--execution-thread-count', help = wording.get('help.execution_thread_count'), type = int, default = config.get_int_value('execution.execution_thread_count', '4'), choices = facefusion.choices.execution_thread_count_range, metavar = create_int_metavar(facefusion.choices.execution_thread_count_range))
|
group_execution.add_argument('--execution-thread-count', help = wording.get('help.execution_thread_count'), type = int, default = config.get_int_value('execution.execution_thread_count', '4'), choices = facefusion.choices.execution_thread_count_range, metavar = create_int_metavar(facefusion.choices.execution_thread_count_range))
|
||||||
group_execution.add_argument('--execution-queue-count', help = wording.get('help.execution_queue_count'), type = int, default = config.get_int_value('execution.execution_queue_count', '1'), choices = facefusion.choices.execution_queue_count_range, metavar = create_int_metavar(facefusion.choices.execution_queue_count_range))
|
group_execution.add_argument('--execution-queue-count', help = wording.get('help.execution_queue_count'), type = int, default = config.get_int_value('execution.execution_queue_count', '1'), choices = facefusion.choices.execution_queue_count_range, metavar = create_int_metavar(facefusion.choices.execution_queue_count_range))
|
||||||
job_store.register_job_keys([ 'execution_device_id', 'execution_providers', 'execution_thread_count', 'execution_queue_count' ])
|
job_store.register_job_keys([ 'execution_device_id', 'execution_providers', 'execution_thread_count', 'execution_queue_count' ])
|
||||||
|
|||||||
Reference in New Issue
Block a user