Name | Description | Type | Default |
---|---|---|---|
name |
The name of this object. This will be used in the following places: - how you refer to this object in Python/YAML/CLI - visualization - log message header - ... When not given, then the default naming strategy will apply. |
string |
None |
workspace |
The working directory for any IO operations in this object. If not set, then derive from its parent workspace . |
string |
None |
log_config |
The YAML config of the logger used in this object. | string |
default |
quiet |
If set, then no log will be emitted from this object. | boolean |
False |
quiet_error |
If set, then exception stack information will not be added to the log | boolean |
False |
timeout_ctrl |
The timeout in milliseconds of the control request, -1 for waiting forever | number |
60 |
polling |
The polling strategy of the Deployment and its endpoints (when shards>1 ).Can be defined for all endpoints of a Deployment or by endpoint. Define per Deployment: - ANY: only one (whoever is idle) Pod polls the message - ALL: all Pods poll the message (like a broadcast) Define per Endpoint: JSON dict, {endpoint: PollingType} {'/custom': 'ALL', '/search': 'ANY', '*': 'ANY'} |
string |
ANY |
uses |
The config of the executor, it could be one of the followings: * the string literal of an Executor class name * an Executor YAML file (.yml, .yaml, .jaml) * a Jina Hub Executor (must start with jinahub:// or jinahub+docker:// )* a docker image (must start with docker:// )* the string literal of a YAML config (must start with ! or jtype: )* the string literal of a JSON config When use it under Python, one can use the following values additionally: - a Python dict that represents the config - a text file stream has .read() interface |
string |
BaseExecutor |
uses_with |
Dictionary of keyword arguments that will override the with configuration in uses |
object |
None |
uses_metas |
Dictionary of keyword arguments that will override the metas configuration in uses |
object |
None |
uses_requests |
Dictionary of keyword arguments that will override the requests configuration in uses |
object |
None |
py_modules |
The customized python modules need to be imported before loading the executor Note that the recommended way is to only import a single module - a simple python file, if your executor can be defined in a single file, or an __init__.py file if you have multiple files,which should be structured as a python package. For more details, please see the Executor cookbook <https://docs.jina.ai/fundamentals/executor/executor-files/> __ |
array |
None |
port |
The port for input data to bind to, default is a random port between [49152, 65535]. In the case of an external Executor (--external or external=True ) this can be a list of ports, separated by commas. Then, every resulting address will be considered as one replica of the Executor. |
string |
random in [49152, 65535] |
host_in |
The host address for binding to, by default it is 0.0.0.0 | string |
0.0.0.0 |
native |
If set, only native Executors is allowed, and the Executor is always run inside WorkerRuntime. | boolean |
False |
output_array_type |
The type of array tensor and embedding will be serialized to.Supports the same types as docarray.to_protobuf(.., ndarray_type=...) , which can be found here <https://docarray.jina.ai/fundamentals/document/serialization/#from-to-protobuf> .Defaults to retaining whatever type is returned by the Executor. |
string |
None |
grpc_server_options |
Dictionary of kwargs arguments that will be passed to the grpc server as options when starting the server, example : {'grpc.max_send_message_length': -1} | object |
None |
exit_on_exceptions |
List of exceptions that will cause the Executor to shut down. | array |
[] |
entrypoint |
The entrypoint command overrides the ENTRYPOINT in Docker image. when not set then the Docker image ENTRYPOINT takes effective. | string |
None |
docker_kwargs |
Dictionary of kwargs arguments that will be passed to Docker SDK when starting the docker ' container. More details can be found in the Docker SDK docs: https://docker-py.readthedocs.io/en/stable/ |
object |
None |
volumes |
The path on the host to be mounted inside the container. Note, - If separated by : , then the first part will be considered as the local host path and the second part is the path in the container system. - If no split provided, then the basename of that directory will be mounted into container's root path, e.g. --volumes="/user/test/my-workspace" will be mounted into /my-workspace inside the container. - All volumes are mounted with read-write mode. |
array |
None |
gpus |
This argument allows dockerized Jina executor discover local gpu devices. Note, - To access all gpus, use --gpus all .- To access multiple gpus, e.g. make use of 2 gpus, use --gpus 2 .- To access specified gpus based on device id, use --gpus device=[YOUR-GPU-DEVICE-ID] - To access specified gpus based on multiple device id, use --gpus device=[YOUR-GPU-DEVICE-ID1],device=[YOUR-GPU-DEVICE-ID2] - To specify more parameters, use `--gpus device=[YOUR-GPU-DEVICE-ID],runtime=nvidia,capabilities=display |
string |
None |
disable_auto_volume |
Do not automatically mount a volume for dockerized Executors. | boolean |
False |
host |
The host address of the runtime, by default it is 0.0.0.0. In the case of an external Executor (--external or external=True ) this can be a list of hosts, separated by commas. Then, every resulting address will be considered as one replica of the Executor. |
string |
0.0.0.0 |
quiet_remote_logs |
Do not display the streaming of remote logs on local console | boolean |
False |
upload_files |
The files on the host to be uploaded to the remote workspace. This can be useful when your Deployment has more file dependencies beyond a single YAML file, e.g. Python files, data files. Note, - currently only flatten structure is supported, which means if you upload [./foo/a.py, ./foo/b.pp, ./bar/c.yml] , then they will be put under the same workspace on the remote, losing all hierarchies.- by default, --uses YAML file is always uploaded.- uploaded files are by default isolated across the runs. To ensure files are submitted to the same workspace across different runs, use --workspace-id to specify the workspace. |
array |
None |
runtime_cls |
The runtime class to run inside the Pod | string |
WorkerRuntime |
timeout_ready |
The timeout in milliseconds of a Pod waits for the runtime to be ready, -1 for waiting forever | number |
600000 |
env |
The map of environment variables that are available inside runtime | object |
None |
shards |
The number of shards in the deployment running at the same time. For more details check https://docs.jina.ai/fundamentals/flow/create-flow/#complex-flow-topologies | number |
1 |
replicas |
The number of replicas in the deployment | number |
1 |
monitoring |
If set, spawn an http server with a prometheus endpoint to expose metrics | boolean |
False |
port_monitoring |
The port on which the prometheus server is exposed, default is a random port between [49152, 65535] | string |
random in [49152, 65535] |
retries |
Number of retries per gRPC call. If <0 it defaults to max(3, num_replicas) | number |
-1 |
floating |
If set, the current Pod/Deployment can not be further chained, and the next .add() will chain after the last Pod/Deployment not this current one. |
boolean |
False |
tracing |
If set, the sdk implementation of the OpenTelemetry tracer will be available and will be enabled for automatic tracing of requests and customer span creation. Otherwise a no-op implementation will be provided. | boolean |
False |
span_exporter_host |
If tracing is enabled, this hostname will be used to configure the trace exporter agent. | string |
None |
span_exporter_port |
If tracing is enabled, this port will be used to configure the trace exporter agent. | number |
None |
metrics |
If set, the sdk implementation of the OpenTelemetry metrics will be available for default monitoring and custom measurements. Otherwise a no-op implementation will be provided. | boolean |
False |
metrics_exporter_host |
If tracing is enabled, this hostname will be used to configure the metrics exporter agent. | string |
None |
metrics_exporter_port |
If tracing is enabled, this port will be used to configure the metrics exporter agent. | number |
None |
install_requirements |
If set, install requirements.txt in the Hub Executor bundle to local |
boolean |
False |
force_update |
If set, always pull the latest Hub Executor bundle even it exists on local | boolean |
False |
compression |
The compression mechanism used when sending requests from the Head to the WorkerRuntimes. For more details, check https://grpc.github.io/grpc/python/grpc.html#compression. | string |
None |
uses_before_address |
The address of the uses-before runtime | string |
None |
uses_after_address |
The address of the uses-before runtime | string |
None |
connection_list |
dictionary JSON with a list of connections to configure | string |
None |
disable_reduce |
Disable the built-in reduce mechanism, set this if the reduction is to be handled by the Executor connected to this Head | boolean |
False |
timeout_send |
The timeout in milliseconds used when sending data requests to Executors, -1 means no timeout, disabled by default | number |
None |