dwave.cloud.client.Client.from_config¶
-
classmethod
Client.from_config(config_file=None, profile=None, client=None, endpoint=None, token=None, solver=None, proxy=None, headers=None, legacy_config_fallback=False, **kwargs)¶ Client factory method to instantiate a client instance from configuration.
Configuration values can be specified in multiple ways, ranked in the following order (with 1 the highest ranked):
- Values specified as keyword arguments in
from_config() - Values specified as environment variables
- Values specified in the configuration file
Configuration-file format is described in
dwave.cloud.config.If the location of the configuration file is not specified, auto-detection searches for existing configuration files in the standard directories of
get_configfile_paths().If a configuration file explicitly specified, via an argument or environment variable, does not exist or is unreadable, loading fails with
ConfigFileReadError. Loading fails withConfigFileParseErrorif the file is readable but invalid as a configuration file.Similarly, if a profile explicitly specified, via an argument or environment variable, is not present in the loaded configuration, loading fails with
ValueError. Explicit profile selection also fails if the configuration file is not explicitly specified, detected on the system, or defined via an environment variable.Environment variables:
DWAVE_CONFIG_FILE,DWAVE_PROFILE,DWAVE_API_CLIENT,DWAVE_API_ENDPOINT,DWAVE_API_TOKEN,DWAVE_API_SOLVER,DWAVE_API_PROXY,DWAVE_API_HEADERS.Environment variables are described in
dwave.cloud.config.Parameters: - config_file (str/[str]/None/False/True, default=None) –
Path to configuration file.
If
None, the value is taken fromDWAVE_CONFIG_FILEenvironment variable if defined. If the environment variable is undefined or empty, auto-detection searches for existing configuration files in the standard directories ofget_configfile_paths().If
False, loading from file is skipped; ifTrue, forces auto-detection (regardless of theDWAVE_CONFIG_FILEenvironment variable). - profile (str, default=None) –
Profile name (name of the profile section in the configuration file).
If undefined, inferred from
DWAVE_PROFILEenvironment variable if defined. If the environment variable is undefined or empty, a profile is selected in the following order:- From the default section if it includes a profile key.
- The first section (after the default section).
- If no other section is defined besides
[defaults], the defaults section is promoted and selected.
- client (str, default=None) – Client type used for accessing the API. Supported values are
qpufordwave.cloud.qpu.Clientandswfordwave.cloud.sw.Client. - endpoint (str, default=None) – API endpoint URL.
- token (str, default=None) – API authorization token.
- solver (dict/str, default=None) –
Default solver features to use in
get_solver().Defined via dictionary of solver feature constraints (see
get_solvers()). For backward compatibility, a solver name, as a string, is also accepted and converted to{"name": <solver name>}.If undefined,
get_solver()uses a solver definition from environment variables, a configuration file, or falls back to the first available online solver. - proxy (str, default=None) – URL for proxy to use in connections to D-Wave API. Can include username/password, port, scheme, etc. If undefined, client uses the system-level proxy, if defined, or connects directly to the API.
- headers (dict/str, default=None) – Newline-separated additional HTTP headers to include with each API request, or a dictionary of (key, value) pairs.
- legacy_config_fallback (bool, default=False) – If True and loading from a standard D-Wave Cloud Client configuration
file (
dwave.conf) fails, tries loading a legacy configuration file (~/.dwrc).
Other Parameters: Unrecognized keys (str) – All unrecognized keys are passed through to the appropriate client class constructor as string keyword arguments.
An explicit key value overrides an identical user-defined key value loaded from a configuration file.
Returns: Appropriate instance of a QPU or software client.
Return type: Client(dwave.cloud.qpu.Clientordwave.cloud.sw.Client, default=:class:dwave.cloud.qpu.Client)Raises: ConfigFileReadError– Config file specified or detected could not be opened or read.ConfigFileParseError– Config file parse failed.
Examples
A variety of examples are given in
dwave.cloud.config.This example initializes
Clientfrom an explicitly specified configuration file, “~/jane/my_path_to_config/my_cloud_conf.conf”:>>> from dwave.cloud import Client >>> client = Client.from_config(config_file='~/jane/my_path_to_config/my_cloud_conf.conf') >>> # code that uses client >>> client.close()
- Values specified as keyword arguments in