# Agent [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#agent "Permalink to this headline")

_class_`rasa.core.agent.``Agent`( _domain=None_, _policies=None_, _interpreter=None_, _generator=None_, _tracker_store=None_, _lock_store=None_, _action_endpoint=None_, _fingerprint=None_, _model_directory=None_, _model_server=None_, _remote_storage=None_, _path_to_model_archive=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent "Permalink to this definition")

The Agent class provides a convenient interface for the most important
Rasa functionality.

This includes training, handling messages, loading a dialogue model,
getting the next action, and handling a channel.

`create_processor`( _preprocessor=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.create_processor "Permalink to this definition")

Instantiates a processor based on the set state of the agent.

Return type

`MessageProcessor`

_async_`execute_action`( _sender_id_, _action_, _output_channel_, _policy_, _confidence_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.execute_action "Permalink to this definition")

Handle a single message.

Return type

[`DialogueStateTracker`](https://legacy-docs-v1.rasa.com/1.10.14/api/tracker/#rasa.core.trackers.DialogueStateTracker "rasa.core.trackers.DialogueStateTracker")

`handle_channels`( _channels_, _http_port=5005_, _route='/webhooks/'_, _cors=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.handle_channels "Permalink to this definition")

Start a webserver attaching the input channels and handling msgs.

Return type

`Sanic`

_async_`handle_message`( _message_, _message_preprocessor=None_, _**kwargs_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.handle_message "Permalink to this definition")

Handle a single message.

Return type

`Optional`[`List`[`Dict`[`str`, `Any`"]]

_async_`handle_text`( _text_message_, _message_preprocessor=None_, _output_channel=None_, _sender_id='default'_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.handle_text "Permalink to this definition")

Handle a single message.

Return type

`Optional`[`List`[`Dict`[`str`, `Any`"]]

`is_core_ready`() [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.is_core_ready "Permalink to this definition")

Check if all necessary components and policies are ready to use the agent.

Return type

`bool`

`is_ready`() [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.is_ready "Permalink to this definition")

Check if all necessary components are instantiated to use agent.

Return type

`bool`

_classmethod_`load`( _model_path_, _interpreter=None_, _generator=None_, _tracker_store=None_, _lock_store=None_, _action_endpoint=None_, _model_server=None_, _remote_storage=None_, _path_to_model_archive=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.load "Permalink to this definition")

Load a persisted model from the passed path.

Return type

[`Agent`](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent "rasa.core.agent.Agent")

_async_`load_data`( _training_resource_, _remove_duplicates=True_, _unique_last_num_states=None_, _augmentation_factor=50_, _tracker_limit=None_, _use_story_concatenation=True_, _debug_plots=False_, _exclusion_percentage=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.load_data "Permalink to this definition")

Load training data from a resource.

Return type

`List`[ [`DialogueStateTracker`](https://legacy-docs-v1.rasa.com/1.10.14/api/tracker/#rasa.core.trackers.DialogueStateTracker "rasa.core.trackers.DialogueStateTracker")]

_async_`log_message`( _message_, _message_preprocessor=None_, _**kwargs_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.log_message "Permalink to this definition")

Append a message to a dialogue - does not predict actions.

Return type

_async_`parse_message_using_nlu_interpreter`( _message_data_, _tracker=None_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.parse_message_using_nlu_interpreter "Permalink to this definition")

Handles message text and intent payload input messages.

Return type

`Dict`[`str`, `Any`]

`persist`( _model_path_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.persist "Permalink to this definition")

Persists this agent into a directory for later loading and usage.

Return type

`None`

_async_`predict_next`( _sender_id_, _**kwargs_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.predict_next "Permalink to this definition")

Handle a single message.

Return type

`Optional`[`Dict`[`str`, `Any`"]]

`toggle_memoization`( _activate_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.toggle_memoization "Permalink to this definition")

Toggles the memoization on and off.

Return type

`None`

`train`( _training_trackers_, _**kwargs_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.train "Permalink to this definition")

Train the policies / policy ensemble using dialogue data from file.

Return type

`None`

_async_`trigger_intent`( _intent_name_, _entities_, _output_channel_, _tracker_) [¶](https://legacy-docs-v1.rasa.com/1.10.14/api/agent/#rasa.core.agent.Agent.trigger_intent "Permalink to this definition")

Trigger a user intent, e.g. triggered by an external event.

Return type

`None`

👋 I can help you get started with Rasa and answer your technical questions.
