Rasa Architecture Components
flowchart TD
subgraph INPUT["User Input"]
direction LR
Slack["Slack"]:::userface
Teams["Teams"]:::userface
Web["Web Widget"]:::userface
end
subgraph NLU["Rasa NLU Pipeline"]
direction TB
Tokenizer["Tokenizer"]:::nlu
Featurizer["Featurizer
word embeddings"]:::nlu Intent["Intent Classifier"]:::nlu Entity["Entity Extractor"]:::nlu end subgraph CORE["Rasa Core"] direction TB Tracker["Tracker Store
conversation history"]:::core Policy["Dialog Policy
ML or rule-based"]:::core ActionSrv["Action Server"]:::core end subgraph ACTIONS["Custom Actions"] direction TB DBConn["Database Connector"]:::custom APIClient["External API Client"]:::custom BizLogic["Business Logic Functions"]:::custom end subgraph RASAX["Rasa X Tooling"] direction TB Review["Conversation Review UI"]:::rasax Annotate["Training Data Annotation"]:::rasax Dashboard["Performance Dashboard"]:::rasax end Output["Response Templates and
Generated Messages"]:::userface INPUT --> Tokenizer Tokenizer --> Featurizer --> Intent --> Entity Entity -->|Predictions| Tracker Tracker <-->|State tracking| Policy Policy --> ActionSrv ActionSrv --> DBConn ActionSrv --> APIClient ActionSrv --> BizLogic DBConn -.->|API calls| ExternalSys["External Systems"]:::ext APIClient -.->|API calls| ExternalSys ActionSrv --> Output RASAX -.->|Training data| NLU RASAX -.->|Training data| CORE classDef userface fill:#3b82f6,stroke:#1e3a8a,stroke-width:2px,color:#fff,font-size:14px classDef nlu fill:#22c55e,stroke:#15803d,stroke-width:2px,color:#fff,font-size:14px classDef core fill:#f97316,stroke:#9a3412,stroke-width:2px,color:#fff,font-size:14px classDef custom fill:#8b5cf6,stroke:#5b21b6,stroke-width:2px,color:#fff,font-size:14px classDef rasax fill:#eab308,stroke:#854d0e,stroke-width:2px,color:#1f2937,font-size:14px classDef ext fill:#64748b,stroke:#334155,stroke-width:2px,color:#fff,font-size:14px linkStyle default stroke:#94a3b8,stroke-width:2px,font-size:13px
word embeddings"]:::nlu Intent["Intent Classifier"]:::nlu Entity["Entity Extractor"]:::nlu end subgraph CORE["Rasa Core"] direction TB Tracker["Tracker Store
conversation history"]:::core Policy["Dialog Policy
ML or rule-based"]:::core ActionSrv["Action Server"]:::core end subgraph ACTIONS["Custom Actions"] direction TB DBConn["Database Connector"]:::custom APIClient["External API Client"]:::custom BizLogic["Business Logic Functions"]:::custom end subgraph RASAX["Rasa X Tooling"] direction TB Review["Conversation Review UI"]:::rasax Annotate["Training Data Annotation"]:::rasax Dashboard["Performance Dashboard"]:::rasax end Output["Response Templates and
Generated Messages"]:::userface INPUT --> Tokenizer Tokenizer --> Featurizer --> Intent --> Entity Entity -->|Predictions| Tracker Tracker <-->|State tracking| Policy Policy --> ActionSrv ActionSrv --> DBConn ActionSrv --> APIClient ActionSrv --> BizLogic DBConn -.->|API calls| ExternalSys["External Systems"]:::ext APIClient -.->|API calls| ExternalSys ActionSrv --> Output RASAX -.->|Training data| NLU RASAX -.->|Training data| CORE classDef userface fill:#3b82f6,stroke:#1e3a8a,stroke-width:2px,color:#fff,font-size:14px classDef nlu fill:#22c55e,stroke:#15803d,stroke-width:2px,color:#fff,font-size:14px classDef core fill:#f97316,stroke:#9a3412,stroke-width:2px,color:#fff,font-size:14px classDef custom fill:#8b5cf6,stroke:#5b21b6,stroke-width:2px,color:#fff,font-size:14px classDef rasax fill:#eab308,stroke:#854d0e,stroke-width:2px,color:#1f2937,font-size:14px classDef ext fill:#64748b,stroke:#334155,stroke-width:2px,color:#fff,font-size:14px linkStyle default stroke:#94a3b8,stroke-width:2px,font-size:13px
Color Key
User-facing layers
NLU components
Dialog management (Core)
Custom business logic
Rasa X tooling
External systems
Component Details
Hover a component to see its role in the Rasa pipeline, from channel input through NLU, dialog management, and custom actions.