Skip to main content

Python Versions and Dependencies

This page provides a comprehensive overview of the Python versions and dependency groups supported by Rasa Pro.

Supported Python Versions

Rasa Pro supports the following Python versions:

Python VersionSupport StatusNotes
3.10✅ SupportedFull support
3.11✅ SupportedFull support
3.12✅ SupportedLimited support (see TensorFlow limitations below)
3.13✅ SupportedLimited support (see TensorFlow limitations below)
TensorFlow Limitations

TensorFlow and related dependencies are only supported for Python < 3.12. This means that components requiring TensorFlow are not available for Python >= 3.12:

  • DIETClassifier
  • TEDPolicy
  • UnexpecTEDIntentPolicy
  • ResponseSelector
  • ConveRTFeaturizer
  • LanguageModelFeaturizer

If you need these components, use Python 3.10 or 3.11.

Dependency Groups

Rasa Pro uses optional dependency groups to allow you to install only the dependencies you need for your specific use case. This helps reduce installation time and keeps your environment lean.

Available Dependency Groups

Dependency GroupDescriptionInstallation Command
nluDependencies for NLU componentspip install 'rasa-pro[nlu]'
channelsDependencies for channel connectorspip install 'rasa-pro[channels]'

NLU Dependency Group

The nlu dependency group includes dependencies required for NLU components.

These include:

  • spacy (^3.5.4)
  • skops (~0.13.0)
  • mitie (^0.7.36)
  • jieba (>=0.42.1, <0.43)
  • sklearn-crfsuite (~0.5.0)
  • transformers (~4.38.2)

Plus the following dependencies, which are only available for Python < 3.12:

  • tensorflow (^2.19.0)
  • tensorflow-text (^2.19.0)
  • tensorflow-hub (^0.13.0)
  • tensorflow-metal (^1.2.0)
  • tf-keras (^2.15.0)
  • sentencepiece (~0.1.99)
  • tensorflow-io-gcs-filesystem (0.31 for sys_platform == 'win32', 0.34 for sys_platform == 'linux', 0.34 for sys_platform == 'linux' for "sys_platform == 'darwin' and platform_machine != 'arm64')

Channels Dependency Group

The channels dependency group includes dependencies required for channel connectors:

  • fbmessenger (~6.0.0)
  • twilio (~9.7.2)
  • webexteamssdk (>=1.6.1,<1.7.0)
  • mattermostwrapper (~2.2)
  • rocketchat_API (>=1.32.0,<1.33.0)
  • aiogram (~3.22.0)
  • slack-sdk (~3.36.0)
  • cvg-python-sdk (^0.5.1)
Channel Dependencies Not Included

The following channels do not require additional dependencies and are included in the main installation:

  • browser_audio
  • studio_chat
  • socketIO
  • rest

Installation Examples

Basic Installation

# Install Rasa Pro with default dependencies
pip install rasa-pro

With NLU Components

# Install Rasa Pro with NLU dependencies
pip install 'rasa-pro[nlu]'

With Channel Connectors

# Install Rasa Pro with channel dependencies
pip install 'rasa-pro[channels]'

With Both NLU and Channels

# Install Rasa Pro with both NLU and channel dependencies
pip install 'rasa-pro[nlu,channels]'

Using uv

# Using uv package manager (recommended for faster installation)
uv pip install 'rasa-pro[nlu,channels]'

When to Use Which Dependency Group

Use the nlu group when:

  • You are using NLU components in your pipeline (see NLU Components for a full list of all NLU components)
  • You need intent classification or entity extraction capabilities
  • You're using components like DIETClassifier, TEDPolicy, or ResponseSelector
  • You're building assistants that require traditional NLU capabilities
  • You need to process user input for intent recognition and entity extraction

Use the channels group when:

  • You're connecting to external messaging platforms (Slack, Telegram, Facebook Messenger, etc.)
  • You need voice channel connectors (Jambonz, Audiocodes, Twilio Voice, etc.)
  • You're deploying to platforms like Microsoft Bot Framework, Cisco Webex Teams, or RocketChat
  • You're building voice assistants that require real-time audio processing
  • You need to integrate with customer support platforms or communication systems

Use both groups when:

  • You're building a comprehensive assistant that uses both NLU components and external channel integrations
  • You need the full feature set of Rasa Pro with traditional NLU capabilities and multi-platform deployment