parlai.core.opt

Opt is the system for passing around options throughout ParlAI.

class parlai.core.opt.Opt(*args, **kwargs)[source]

Bases: dict

Class for tracking options.

Functions like a dict, but allows us to track the history of arguments as they are set.

__init__(*args, **kwargs)[source]
display_deepcopies()[source]

Display all deepcopies.

display_history(key)[source]

Display the history for an item in the dict.

save(filename: str) None[source]

Save the opt to disk.

Attempts to ‘clean up’ any residual values automatically.

classmethod load(optfile: str) Opt[source]

Load an Opt from disk.

classmethod load_init(optfile: str) Opt[source]

Like load, but also looks in opt_presets folders.

optfile may also be a comma-separated list of multiple presets/files.

parlai.core.params

Provide an argument parser and default command line options for using ParlAI.

parlai.core.params.print_git_commit()[source]

Print the current git commit of ParlAI and parlai_internal.

parlai.core.params.print_announcements(opt)[source]

Output any announcements the ParlAI team wishes to make to users.

Also gives the user the option to suppress the output.

parlai.core.params.get_model_name(opt)[source]

Get the model name from either –model or –model-file.

parlai.core.params.str2none(value: str)[source]

If the value is a variant of none, return None.

Otherwise, return the original value.

parlai.core.params.str2bool(value)[source]

Convert ‘yes’, ‘false’, ‘1’, etc.

into a boolean.

parlai.core.params.str2floats(s)[source]

Look for single float or comma-separated floats.

parlai.core.params.str2class(value)[source]

From import path string, returns the class specified.

For example, the string ‘parlai.agents.hugging_face.dict:Gpt2DictionaryAgent’ returns <class ‘parlai.agents.hugging_face.dict.Gpt2DictionaryAgent’>.

parlai.core.params.class2str(value)[source]

Inverse of params.str2class().

parlai.core.params.fix_underscores(args)[source]

Convert underscores to hyphens in args.

For example, converts ‘–gradient_clip’ to ‘–gradient-clip’.

Parameters

args – iterable, possibly containing args strings with underscores.

class parlai.core.params.CustomHelpFormatter(*args, **kwargs)[source]

Bases: HelpFormatter

Produce a custom-formatted –help option.

See https://goo.gl/DKtHb5 for details.

__init__(*args, **kwargs)[source]
class parlai.core.params.ParlaiParser(add_parlai_args=True, add_model_args=False, description=None, **kwargs)[source]

Bases: ArgumentParser

Provide an opt-producer and CLI argument parser.

Pseudo-extension of argparse which sets a number of parameters for the ParlAI framework. More options can be added specific to other modules by passing this object and calling add_arg() or add_argument() on it.

For an example, see parlai.core.dict.DictionaryAgent.add_cmdline_args.

Parameters
  • add_parlai_args – (default True) initializes the default arguments for ParlAI package, including the data download paths and task arguments.

  • add_model_args – (default False) initializes the default arguments for loading models, including initializing arguments from that model.

__init__(add_parlai_args=True, add_model_args=False, description=None, **kwargs)[source]

Initialize the ParlAI parser.

add_parlai_data_path(argument_group=None)[source]

Add –datapath CLI arg.

add_mturk_args()[source]

Add standard mechanical turk arguments.

add_chatservice_args()[source]

Arguments for all chat services.

add_websockets_args()[source]

Add websocket arguments.

add_messenger_args()[source]

Add Facebook Messenger arguments.

add_parlai_args(args=None)[source]

Add common ParlAI args across all scripts.

add_distributed_training_args()[source]

Add CLI args for distributed training.

add_model_args()[source]

Add arguments related to models such as model files.

add_model_subargs(model: str, partial: Opt)[source]

Add arguments specific to a particular model.

add_task_args(task: str, partial: Opt)[source]

Add arguments specific to the specified task.

add_world_args(task: str, interactive_task: Optional[str], selfchat_task: Optional[str], partial: Opt)[source]

Add arguments specific to the world.

add_image_args(image_mode)[source]

Add additional arguments for handling images.

add_extra_args(args=None)[source]

Add more args depending on how known args are set.

parse_known_args(args=None, namespace=None, nohelp=False)[source]

Parse known args to ignore help flag.

parse_and_process_known_args(args=None)[source]

Parse provided arguments and return parlai opts and unknown arg list.

Runs the same arg->opt parsing that parse_args does, but doesn’t throw an error if the args being parsed include additional command line arguments that parlai doesn’t know what to do with.

parse_args(args=None, namespace=None, **kwargs)[source]

Parse the provided arguments and returns a dictionary of the args.

We specifically remove items with None as values in order to support the style opt.get(key, default), which would otherwise return None.

parse_kwargs(**kwargs)[source]

Parse kwargs, with type checking etc.

set_params(**kwargs)[source]

Set overridable kwargs.

add_argument(*args, **kwargs)[source]

Override to convert underscores to hyphens for consistency.

add_argument_group(*args, **kwargs)[source]

Override to make arg groups also convert underscores to hyphens.

error(message)[source]

Override to print custom error message.

parlai.core.params.default(val, default)[source]

shorthand for explicit None check for optional arguments.