Agent
These docs are for version 1.x of Rasa Open Source.
User Guide
- Installation
- Rasa Tutorial
- Command Line Interface
- Architecture
- Messaging and Voice Channels
- Evaluating Models
- Validate Data
- Running the Server
- Running Rasa with Docker
- Cloud Storage
NLU
- About
- Using NLU Only
- Training Data Format
- Choosing a Pipeline
- Language Support
- Entity Extraction
- Components
Core
- About
- Stories
- Domains
- Responses
- Actions
- Policies
- Slots
- Forms
- Retrieval Actions
- Interactive Learning
- Fallback Actions
- Knowledge Base Actions
Conversation Design
API Reference
- Action Server
- HTTP API
- Jupyter Notebooks
- Agent
- Custom NLU Components
- Events
- Tracker
- Tracker Stores
- Event Brokers
- Lock Stores
- Training Data Importers
- Featurization
- Migration Guide
- Rasa Change Log
Migrate from (beta)
Reference
Versions
viewing: 1.4.6
Tags
1.10.26 1.10.25 1.10.24 1.10.23 1.10.22 1.10.21 1.10.20 1.10.19 1.10.18 1.10.17 1.10.16 1.10.15 1.10.14 1.10.13 1.10.12 1.10.11 1.10.10 1.10.9 1.10.8 1.10.7 1.10.6 1.10.5 1.10.4 1.10.3 1.10.2 1.10.1 1.10.0 1.9.7 1.9.6 1.9.5 1.9.4 1.9.3 1.9.2 1.9.1 1.9.0 1.8.3 1.8.2 1.8.1 1.8.0 1.7.4 1.7.3 1.7.2 1.7.1 1.7.0 1.6.2 1.5.3 1.4.6 1.3.10 1.2.9
Warning: This document is for an old version of Rasa. The latest version is 1.10.26.
Agent
Class rasa.core.agent.Agent
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.
class 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,
)
create_processor(preprocessor=None)
Instantiates a processor based on the set state of the agent.
Return type: MessageProcessor
async execute_action(sender_id, action, output_channel, policy, confidence)
Handle a single message.
Return type: DialogueStateTracker
handle_channels(channels, http_port=5005, route='/webhooks/', cors=None)
Start a webserver attaching the input channels and handling msgs.
Return type: Sanic
async handle_message(message, message_preprocessor=None, **kwargs)
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')
Handle a single message.
Example:
from rasa.core.agent import Agent
from rasa.core.interpreter import RasaNLUInterpreter
agent = Agent.load("examples/restaurantbot/models/current")
await agent.handle_text("hello")
[u'how can I help you?']
Return type: Optional[List[Dict[str, Any]]]
is_core_ready()
Check if all necessary components and policies are ready to use the agent.
Return type: bool
is_ready()
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)
Load a persisted model from the passed path.
Return type: 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)
Load training data from a resource.
Return type: List[DialogueStateTracker]
async log_message(message, message_preprocessor=None, **kwargs)
Append a message to a dialogue - does not predict actions.
Return type: DialogueStateTracker
async parse_message_using_nlu_interpreter(message_data, tracker=None)
Handles message text and intent payload input messages.
Return type: Dict[str, Any]
persist(model_path)
Persists this agent into a directory for later loading and usage.
Return type: None
async predict_next(sender_id, **kwargs)
Handle a single message.
Return type: Optional[Dict[str, Any]]
toggle_memoization(activate)
Toggles the memoization on and off.
Return type: None
train(training_trackers, **kwargs)
Train the policies/policy ensemble using dialogue data from file.
Return type: None
async trigger_intent(intent_name, entities, output_channel, tracker)
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.