Build customizable chatbots and agents for enterprise workflows
Rasa is an open-source conversational AI framework for building, deploying, and scaling contextual chatbots and assistants. It suits developers and ML engineers who need full control over dialogue policies, NLU, and on-prem or cloud deployment, with an open-source core and paid enterprise support. Pricing spans a free open-source stack to subscription managed offerings and enterprise contracts for large deployments.
Rasa is an open-source conversational AI framework that helps teams build contextual chatbots and virtual assistants for web, mobile, and contact-center workflows. Its primary capability is developer-first NLU and dialogue management that you host and customize, not a closed cloud-only chatbot. The key differentiator is full control over models, data, and deployment (including on-premises), serving enterprises and developer teams that need compliance and extensibility. Rasa offers a free open-source core for experimentation and paid commercial tiers (Rasa Enterprise / Rasa X hosted) for production support and managed services.
Rasa is a developer-first, open-source conversational AI platform founded to give teams control over their chatbots and virtual assistants. Originally started by Rasa Technologies (headquartered in Berlin and San Francisco), the project grew from an open-source NLU and dialogue management toolkit into an enterprise platform. Its core value proposition is that organizations can train, test, and run custom intent classification and dialogue policies on their own infrastructure while avoiding vendor lock-in. Rasa positions itself between DIY frameworks and closed cloud assistants by combining an Apache-licensed core (Rasa Open Source) with commercial offerings and support for production deployments.
Rasa’s feature set focuses on three technical pillars: NLU, dialogue management, and orchestration. Rasa Open Source provides intent classification and entity extraction via trainable pipelines (e.g., DIETClassifier and Regex/CRF extractors), allowing multi-component pipelines and custom components. Dialogue management uses Rasa’s dialogue policies (RulePolicy, MemoizationPolicy combined historically, and newer machine-learned policies) and supports stories and rules to model conversational flows and slot filling. Rasa X is the companion product for annotation, conversation review, and iterative model improvement; it offers a UI to label user messages, re-train models, and push versions. For deployment and integration, Rasa offers Docker-based production installs, Kubernetes support, and connectors for channels like Slack, Twilio, and Microsoft Bot Framework.
Pricing mixes a free open-source core with commercial offerings. Rasa Open Source is free to use under its license for development and self-hosted production. Rasa X offers a free local edition for experimentation but the managed cloud and enterprise support options are paid. As of the latest available information, Rasa provides subscription commercial plans with custom pricing for Rasa Enterprise / Rasa X Managed — customers receive SLA-backed support, single-tenant managed instances, advanced analytics, and security/compliance features. Small teams can run the free Open Source stack, but production-grade hosted services and enterprise features require contacting Rasa for quotes or subscribing to managed plans.
Rasa is used by engineering and ML teams building customer service bots, virtual assistants, and automated workflows. Example adopters include Conversational AI Engineers deploying multi-channel customer support bots and Product Managers using Rasa X to iterate on conversation design and reduce escalation rates. Specifically, a Customer Support Engineering Manager might use Rasa to lower average handle time by 20% with automated triage, and an ML Engineer could use Rasa to deploy custom NLU models tuned for domain-specific entities. Compared to cloud-only platforms like Dialogflow or Microsoft Bot Framework, Rasa’s selling point is on-premise control and extensibility for privacy-sensitive or highly regulated industries.
Three capabilities that set Rasa apart from its nearest competitors.
Current tiers and what you get at each price point. Verified against the vendor's pricing page.
| Plan | Price | What you get | Best for |
|---|---|---|---|
| Rasa Open Source | Free | Self-hosted; no SLA, community support only | Developers prototyping and self-hosting |
| Rasa X Local | Free | Local single-instance use for testing and annotation | Small teams iterating on conversation design |
| Rasa Enterprise / Managed | Custom | SLA-backed, single-tenant, analytics, security | Enterprises needing compliance and support |
Copy these into Rasa as-is. Each targets a different high-value workflow.
Role: You are a Rasa NLU data engineer. Constraints: produce 10 distinct intents relevant to customer support (greet, goodbye, ask_refund, ask_shipping, ask_size, change_order, cancel_order, track_order, provide_feedback, fallback); for each intent provide 12 diverse English examples; annotate entities in Rasa YAML style (e.g., [order_123](order_number)); avoid slang, include formal and informal phrasings. Output format: a single Rasa-compatible nlu.yml snippet beginning with 'version' and 'nlu:' and listing intents and examples exactly in YAML. Example entry: - intent: ask_refund examples: - "I want a refund for order [#123](order_number)".
Role: You are a content engineer transforming an FAQ into Rasa responses. Constraints: produce 20 FAQ pairs mapped to unique utterance names (utter_faq_shipping, utter_faq_returns, etc.), each response ≤50 words, include one optional quick-reply follow-up question per FAQ, and provide slot suggestions when relevant (e.g., ask for order_number). Output format: Rasa domain-style YAML snippet with 'responses:' section listing utterances as keys and - text: entries; include an inline example mapping. Example: utter_faq_shipping: - text: "Standard shipping takes 3-5 business days." follow_up: "Would you like expedited options?"
Role: You are a Rasa dialogue designer. Constraints: create a domain.yml for an appointment booking assistant including intents, entities (service_type, date, time, customer_name), slots with types, one form 'booking_form', 4 custom actions (validate, submit, check_availability, notify_staff), and three utterances; then author 6 stories: 3 happy-path (different service_types) and 3 failure cases (missing date, unavailable slot, user cancels). Output format: two sections separated: '--- domain.yml ---' and '--- stories.yml ---' with valid Rasa YAML structures. Examples: show one story happy path and one failure path.
Role: You are an ML engineer designing a Rasa-based triage classifier for support ticket routing. Constraints: include model choice (DIET vs sklearn) justification, minimum dataset size per class (suggest numbers), data labeling schema, evaluation metrics (per-intent precision/recall/F1), cross-validation approach, confidence threshold for human handoff, and a deployment rollout plan with monitoring. Output format: structured numbered plan with sections: Dataset, Model & Config, Evaluation, Thresholds & Handoff, Rollout & Monitoring. Example: list three monitoring alerts (drop in F1, sudden class imbalance, high fallback rate).
Role: You are a senior Rasa engineer writing production-ready custom actions for payment processing. Multi-step instructions: 1) provide a complete actions.py implementing ActionProcessPayment, with dependency injection for a payment client, idempotency key handling, error handling for network/timeouts, and secure retrieval of API keys from environment variables; 2) include unit tests file tests/test_actions.py using pytest and a mocked payment client covering success, declined, and exception flows; 3) list required entries for requirements.txt and a short run/testing command. Constraints: Python 3.9+, follow Rasa action server conventions, avoid third-party secrets in code. Output format: clearly labeled code blocks: '--- actions.py ---', '--- tests/test_actions.py ---', '--- requirements.txt ---'.
Role: You are a conversational AI architect planning a migration from rule-based policies to ML policies in Rasa. Multi-step: provide a step-by-step migration checklist, risks and mitigation, dataset preparation steps (extract rule examples into stories, generate negative examples), recommended policy config (TEDPolicy/RulePolicy hybrid) with hyperparameters, and an A/B rollout strategy. Few-shot examples: include 2 converted examples (one rule → story happy path, one edge-case rule with failure converted to a negative story). Output format: numbered migration checklist + policy YAML snippet + two example stories labeled 'before' and 'after'.
Choose Rasa over Dialogflow CX if you need on-premise data control and fully customizable NLU pipelines for regulated environments.
Head-to-head comparisons between Rasa and top alternatives: