rasa-pro 3.14.0a16__py3-none-any.whl → 3.14.0a18__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rasa-pro might be problematic. Click here for more details.
- rasa/builder/copilot/prompts/copilot_system_prompt.jinja2 +156 -105
- rasa/builder/copilot/telemetry.py +35 -19
- rasa/builder/jobs.py +15 -5
- rasa/builder/main.py +5 -14
- rasa/builder/models.py +7 -7
- rasa/builder/project_generator.py +130 -23
- rasa/builder/service.py +34 -18
- rasa/builder/template_cache.py +9 -184
- rasa/cli/project_templates/basic/README.md +23 -0
- rasa/cli/project_templates/basic/actions/actions.md +10 -0
- rasa/cli/project_templates/basic/config.yml +4 -4
- rasa/cli/project_templates/basic/data/data.md +5 -6
- rasa/cli/project_templates/basic/domain/domain.md +7 -5
- rasa/cli/project_templates/basic/domain/general/show_faqs.yml +1 -1
- rasa/cli/project_templates/basic/endpoints.yml +1 -1
- rasa/cli/project_templates/finance/README.md +26 -0
- rasa/cli/project_templates/finance/actions/__init__.py +0 -46
- rasa/cli/project_templates/finance/actions/accounts/check_balance.py +18 -0
- rasa/cli/project_templates/finance/actions/actions.md +15 -0
- rasa/cli/project_templates/finance/actions/{transfers/action_process_immediate_payment.py → cards/check_that_card_exists.py} +6 -3
- rasa/cli/project_templates/finance/actions/cards/list_cards.py +22 -0
- rasa/cli/project_templates/finance/actions/contacts/__init__.py +0 -0
- rasa/cli/project_templates/finance/actions/contacts/add_contact.py +30 -0
- rasa/cli/project_templates/finance/actions/contacts/list_contacts.py +22 -0
- rasa/cli/project_templates/finance/actions/contacts/remove_contact.py +35 -0
- rasa/cli/project_templates/finance/actions/db.py +117 -0
- rasa/cli/project_templates/finance/actions/transfers/check_transfer_funds.py +27 -0
- rasa/cli/project_templates/finance/actions/transfers/check_transfer_limit.py +36 -0
- rasa/cli/project_templates/finance/actions/transfers/execute_recurrent_payment.py +20 -0
- rasa/cli/project_templates/finance/actions/transfers/execute_transfer.py +45 -0
- rasa/cli/project_templates/finance/actions/transfers/list_transactions.py +32 -0
- rasa/cli/project_templates/finance/config.yml +6 -0
- rasa/cli/project_templates/finance/credentials.yml +7 -6
- rasa/cli/project_templates/finance/data/accounts/check_balance.yml +3 -4
- rasa/cli/project_templates/finance/data/accounts/download_statements.yml +26 -0
- rasa/cli/project_templates/finance/data/bills/bill_pay_reminder.yml +25 -0
- rasa/cli/project_templates/finance/data/cards/activate_card.yml +35 -0
- rasa/cli/project_templates/finance/data/cards/block_card.yml +37 -58
- rasa/cli/project_templates/finance/data/cards/list_cards.yml +14 -0
- rasa/cli/project_templates/finance/data/cards/replace_card.yml +16 -0
- rasa/cli/project_templates/finance/data/cards/replace_eligible_card.yml +29 -0
- rasa/cli/project_templates/finance/data/contacts/add_contact.yml +33 -0
- rasa/cli/project_templates/finance/data/contacts/list_contacts.yml +14 -0
- rasa/cli/project_templates/finance/data/contacts/remove_contact.yml +31 -0
- rasa/cli/project_templates/finance/data/data.md +14 -0
- rasa/cli/project_templates/finance/data/general/agent_details.yml +6 -0
- rasa/cli/project_templates/finance/data/general/hello.yml +1 -2
- rasa/cli/project_templates/finance/data/general/help.yml +2 -2
- rasa/cli/project_templates/finance/data/general/human_handoff.yml +1 -1
- rasa/cli/project_templates/finance/data/transfers/check_transfer_limit.yml +18 -0
- rasa/cli/project_templates/finance/data/transfers/list_transactions.yml +46 -0
- rasa/cli/project_templates/finance/data/transfers/move_money_between_accounts.yml +51 -0
- rasa/cli/project_templates/finance/data/transfers/transfer_money.yml +29 -62
- rasa/cli/project_templates/finance/data/transfers/transfer_money_to_a_third_party.yml +175 -0
- rasa/cli/project_templates/finance/db/cards.json +18 -0
- rasa/cli/project_templates/finance/db/contacts.json +10 -0
- rasa/cli/project_templates/finance/db/my_account.json +6 -0
- rasa/cli/project_templates/finance/db/transactions.json +22 -0
- rasa/cli/project_templates/finance/docs/docs.md +8 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/budgeting_analytics.txt +22 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/multi_currency_accounts.txt +19 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/account_features/premium_benefits.txt +19 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/contactless_limits.txt +16 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/freeze_unfreeze_card.txt +16 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/card_management/lost_stolen_card.txt +19 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/money_transfers/instant_payments.txt +19 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/money_transfers/international_transfers.txt +19 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/security_fraud/fraud_protection.txt +22 -0
- rasa/cli/project_templates/finance/docs/fenlo_banking_faq/security_fraud/secure_payments.txt +22 -0
- rasa/cli/project_templates/finance/domain/_system/patterns/pattern_session_start.yml +11 -0
- rasa/cli/project_templates/finance/domain/accounts/check_balance.yml +9 -5
- rasa/cli/project_templates/finance/domain/accounts/download_statements.yml +40 -0
- rasa/cli/project_templates/finance/domain/bills/bill_pay_reminder.yml +49 -0
- rasa/cli/project_templates/finance/domain/cards/activate_card.yml +24 -0
- rasa/cli/project_templates/finance/domain/cards/block_card.yml +33 -90
- rasa/cli/project_templates/finance/domain/cards/list_cards.yml +16 -0
- rasa/cli/project_templates/finance/domain/cards/replace_card.yml +43 -0
- rasa/cli/project_templates/finance/domain/cards/shared.yml +15 -0
- rasa/cli/project_templates/finance/domain/contacts/add_contact.yml +37 -0
- rasa/cli/project_templates/finance/domain/contacts/list_contacts.yml +16 -0
- rasa/cli/project_templates/finance/domain/contacts/remove_contact.yml +32 -0
- rasa/cli/project_templates/finance/domain/domain.md +18 -0
- rasa/cli/project_templates/finance/domain/general/_shared.yml +53 -0
- rasa/cli/project_templates/finance/domain/general/agent_details.yml +31 -0
- rasa/cli/project_templates/finance/domain/general/cannot_handle.yml +5 -2
- rasa/cli/project_templates/finance/domain/general/feedback.yml +0 -3
- rasa/cli/project_templates/finance/domain/general/human_handoff.yml +7 -3
- rasa/cli/project_templates/finance/domain/general/welcome.yml +5 -2
- rasa/cli/project_templates/finance/domain/transfers/check_transfer_limit.yml +32 -0
- rasa/cli/project_templates/finance/domain/transfers/list_transactions.yml +44 -0
- rasa/cli/project_templates/finance/domain/transfers/shared.yml +17 -0
- rasa/cli/project_templates/finance/domain/transfers/transfer_money.yml +203 -61
- rasa/cli/project_templates/finance/endpoints.yml +4 -3
- rasa/cli/project_templates/finance/prompts/rephraser_demo_personality_prompt.jinja2 +31 -12
- rasa/cli/project_templates/telco/README.md +25 -0
- rasa/cli/project_templates/telco/actions/actions.md +12 -0
- rasa/cli/project_templates/telco/config.yml +4 -4
- rasa/cli/project_templates/telco/data/data.md +11 -0
- rasa/cli/project_templates/telco/docs/docs.md +3 -0
- rasa/cli/project_templates/telco/domain/domain.md +13 -0
- rasa/cli/project_templates/telco/endpoints.yml +1 -1
- rasa/cli/project_templates/telco/prompts/rephraser_demo_personality_prompt.jinja2 +1 -1
- rasa/core/brokers/broker.py +1 -1
- rasa/core/brokers/kafka.py +52 -8
- rasa/core/channels/inspector/dist/assets/{arc-460861ce.js → arc-35222594.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-16c993e0.js → blockDiagram-38ab4fdb-a0efbfd3.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-488337d7.js → c4Diagram-3d4e48cf-0584c0f2.js} +1 -1
- rasa/core/channels/inspector/dist/assets/channel-8e08bed9.js +1 -0
- rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-b08e53a8.js → classDiagram-70f12bd4-39f40dbe.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-b73f5a83.js → classDiagram-v2-f2320105-1ad755f3.js} +1 -1
- rasa/core/channels/inspector/dist/assets/clone-78c82dea.js +1 -0
- rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-0210a219.js → createText-2e5e7dd3-b0f4f0fe.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-28df7099.js → edges-e0da2a9e-9039bff9.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-9fbf4a58.js → erDiagram-9861fffd-65c9b127.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-fa691f62.js → flowDb-956e92f1-4f08b38e.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-ca907b67.js → flowDiagram-66a62f08-e95c362a.js} +1 -1
- rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-2b08f601.js +1 -0
- rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-c10945f2.js → flowchart-elk-definition-4a651766-703c3015.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-9d49a75a.js → ganttDiagram-c361ad54-699328ea.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-9aa698ac.js → gitGraphDiagram-72cf32ee-04cf4b05.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{graph-3ab38d50.js → graph-ee94449e.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{index-3862675e-6edac98f.js → index-3862675e-940162b4.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{index-61128091.js → index-c941dcb3.js} +3 -3
- rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-21baff85.js → infoDiagram-f8f76790-c79c2866.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-4a6c7e98.js → journeyDiagram-49397b02-84489d30.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{layout-4beae36e.js → layout-a9aa9858.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{line-633b638e.js → line-eb73cf26.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{linear-22d77d65.js → linear-b3399f9a.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-f219ef43.js → mindmap-definition-fc14e90a-b095bf1a.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-c7e1cafb.js → pieDiagram-8a3498a8-07644b66.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-045e49b4.js → quadrantDiagram-120e2f19-573a3f9c.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-22485cb9.js → requirementDiagram-deff3bca-d457e1e1.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-281c3da2.js → sankeyDiagram-04a897e0-9d26e1a2.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-a3dd10e0.js → sequenceDiagram-704730f1-3a9cde10.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-61bd6eb2.js → stateDiagram-587899a1-4f3e8cec.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-deead491.js → stateDiagram-v2-d93cdb3a-e617e5bf.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-1b10e104.js → styles-6aaf32cf-eab30d2f.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-9a916d00-b1e18e58.js → styles-9a916d00-09994be2.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-c10674c1-956c3492.js → styles-c10674c1-b7110364.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-e13f753d.js → svgDrawCommon-08f97a94-3ebc92ad.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-e568acd2.js → timeline-definition-85554ec2-7d13d2f2.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-8b7e27fc.js → xychartDiagram-e933f94c-488385e1.js} +1 -1
- rasa/core/channels/inspector/dist/index.html +1 -1
- rasa/core/channels/inspector/src/helpers/audio/audiostream.ts +14 -0
- rasa/core/channels/studio_chat.py +7 -0
- rasa/core/channels/voice_stream/asr/asr_event.py +1 -1
- rasa/core/channels/voice_stream/asr/azure.py +6 -3
- rasa/core/channels/voice_stream/asr/deepgram.py +1 -1
- rasa/core/channels/voice_stream/audiocodes.py +3 -0
- rasa/core/channels/voice_stream/browser_audio.py +53 -3
- rasa/core/channels/voice_stream/genesys.py +2 -1
- rasa/core/channels/voice_stream/jambonz.py +9 -1
- rasa/core/channels/voice_stream/twilio_media_streams.py +16 -0
- rasa/core/channels/voice_stream/voice_channel.py +61 -0
- rasa/core/concurrent_lock_store.py +66 -16
- rasa/core/iam_credentials_providers/aws_iam_credentials_providers.py +76 -1
- rasa/core/iam_credentials_providers/credentials_provider_protocol.py +1 -1
- rasa/core/lock_store.py +41 -7
- rasa/model_manager/warm_rasa_process.py +13 -1
- rasa/shared/nlu/training_data/schemas/responses.yml +3 -0
- rasa/version.py +1 -1
- {rasa_pro-3.14.0a16.dist-info → rasa_pro-3.14.0a18.dist-info}/METADATA +5 -3
- {rasa_pro-3.14.0a16.dist-info → rasa_pro-3.14.0a18.dist-info}/RECORD +166 -228
- rasa/cli/project_templates/finance/actions/accounts/action_ask_account.py +0 -47
- rasa/cli/project_templates/finance/actions/accounts/action_check_balance.py +0 -40
- rasa/cli/project_templates/finance/actions/action_session_start.py +0 -74
- rasa/cli/project_templates/finance/actions/cards/action_ask_card.py +0 -48
- rasa/cli/project_templates/finance/actions/cards/action_check_card_existence.py +0 -36
- rasa/cli/project_templates/finance/actions/cards/action_update_card_status.py +0 -54
- rasa/cli/project_templates/finance/actions/database.py +0 -277
- rasa/cli/project_templates/finance/actions/transfers/action_add_payee.py +0 -52
- rasa/cli/project_templates/finance/actions/transfers/action_ask_account_from.py +0 -51
- rasa/cli/project_templates/finance/actions/transfers/action_check_payee_existence.py +0 -40
- rasa/cli/project_templates/finance/actions/transfers/action_check_sufficient_funds.py +0 -40
- rasa/cli/project_templates/finance/actions/transfers/action_list_payees.py +0 -46
- rasa/cli/project_templates/finance/actions/transfers/action_remove_payee.py +0 -49
- rasa/cli/project_templates/finance/actions/transfers/action_schedule_payment.py +0 -19
- rasa/cli/project_templates/finance/actions/transfers/action_validate_payment_date.py +0 -36
- rasa/cli/project_templates/finance/csvs/accounts.csv +0 -8
- rasa/cli/project_templates/finance/csvs/advisors.csv +0 -7
- rasa/cli/project_templates/finance/csvs/appointments.csv +0 -211
- rasa/cli/project_templates/finance/csvs/branches.csv +0 -10
- rasa/cli/project_templates/finance/csvs/cards.csv +0 -11
- rasa/cli/project_templates/finance/csvs/payees.csv +0 -11
- rasa/cli/project_templates/finance/csvs/transactions.csv +0 -71
- rasa/cli/project_templates/finance/csvs/users.csv +0 -4
- rasa/cli/project_templates/finance/data/cards/select_card.yml +0 -12
- rasa/cli/project_templates/finance/data/general/bot_identity.yml +0 -6
- rasa/cli/project_templates/finance/data/system/patterns/pattern_chitchat.yml +0 -5
- rasa/cli/project_templates/finance/data/system/source/accounts.json +0 -51
- rasa/cli/project_templates/finance/data/system/source/advisors.json +0 -44
- rasa/cli/project_templates/finance/data/system/source/appointments.json +0 -1474
- rasa/cli/project_templates/finance/data/system/source/branches.json +0 -47
- rasa/cli/project_templates/finance/data/system/source/cards.json +0 -72
- rasa/cli/project_templates/finance/data/system/source/payees.json +0 -74
- rasa/cli/project_templates/finance/data/system/source/transactions.json +0 -492
- rasa/cli/project_templates/finance/data/system/source/users.json +0 -29
- rasa/cli/project_templates/finance/data/transfers/add_payee.yml +0 -29
- rasa/cli/project_templates/finance/data/transfers/list_payees.yml +0 -5
- rasa/cli/project_templates/finance/data/transfers/remove_payee.yml +0 -21
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/consequences_of_blocking_card.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/reasons_to_block_card.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/recovering_from_card_fraud.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/tips_for_card_security.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/what_to_do_if_card_is_lost.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/account_balance_security.txt +0 -7
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/common_balance_inquiries.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/methods_to_check_balance.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/understanding_balance_updates.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/what_to_do_if_balance_is_incorrect.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/benefits_of_authorised_payees.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/common_issues_with_payees.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/general_payee_information.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/payee_management_tips.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/understanding_payee_types.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/common_transfer_errors.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/fees_for_transfers.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/general_transfer_information.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/security_tips_for_transfers.txt +0 -8
- rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/transfer_processing_times.txt +0 -8
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part1.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part10.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part11.txt +0 -48
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part12.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part13.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part14.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part15.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part16.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part17.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part18.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part19.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part2.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part20.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part21.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part22.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part23.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part24.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part25.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part26.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part27.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part28.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part29.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part3.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part30.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part31.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part32.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part33.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part34.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part35.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part36.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part37.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part38.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part39.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part4.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part40.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part41.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part42.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part43.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part44.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part45.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part46.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part47.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part48.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part49.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part5.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part50.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part51.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part52.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part53.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part54.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part55.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part56.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part57.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part58.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part59.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part6.txt +0 -47
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part60.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part61.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part7.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part8.txt +0 -50
- rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part9.txt +0 -47
- rasa/cli/project_templates/finance/domain/cards/select_card.yml +0 -12
- rasa/cli/project_templates/finance/domain/general/assistant_details.yml +0 -12
- rasa/cli/project_templates/finance/domain/general/bot_identity.yml +0 -5
- rasa/cli/project_templates/finance/domain/general/defaults.yml +0 -24
- rasa/cli/project_templates/finance/domain/general/goodbye.yml +0 -7
- rasa/cli/project_templates/finance/domain/general/help.yml +0 -5
- rasa/cli/project_templates/finance/domain/general/utils.yml +0 -13
- rasa/cli/project_templates/finance/domain/transfers/add_payee.yml +0 -47
- rasa/cli/project_templates/finance/domain/transfers/list_payees.yml +0 -4
- rasa/cli/project_templates/finance/domain/transfers/remove_payee.yml +0 -16
- rasa/core/channels/inspector/dist/assets/channel-b560a3d4.js +0 -1
- rasa/core/channels/inspector/dist/assets/clone-67015557.js +0 -1
- rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-4a070961.js +0 -1
- {rasa_pro-3.14.0a16.dist-info → rasa_pro-3.14.0a18.dist-info}/NOTICE +0 -0
- {rasa_pro-3.14.0a16.dist-info → rasa_pro-3.14.0a18.dist-info}/WHEEL +0 -0
- {rasa_pro-3.14.0a16.dist-info → rasa_pro-3.14.0a18.dist-info}/entry_points.txt +0 -0
|
@@ -5,6 +5,65 @@ guidance and practical code solutions.
|
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
+
# Instruction Priority
|
|
9
|
+
|
|
10
|
+
1. Special tokens
|
|
11
|
+
- [ERROR_FALLBACK], [ROLEPLAY_REQUEST_DETECTED], [OUT_OF_SCOPE_REQUEST_DETECTED]
|
|
12
|
+
2. Handling Greetings / Handling Goodbyes. Highest priority for casual messages
|
|
13
|
+
3. Handling Knowledge Base Content Request
|
|
14
|
+
4. Response Guidelines & Format (including citations)
|
|
15
|
+
5. Everything else
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Default Introductions
|
|
20
|
+
|
|
21
|
+
## About Rasa
|
|
22
|
+
Rasa is a leading platform for generative conversational AI, designed to help
|
|
23
|
+
enterprises build and operate advanced AI assistants at scale.
|
|
24
|
+
|
|
25
|
+
If the user asks *"What is Rasa?"* or something similar, respond with this introduction.
|
|
26
|
+
Then follow it with a friendly next-step question, such as:
|
|
27
|
+
- "Do you want to learn more about the platform?"
|
|
28
|
+
- "Can I help you get started with exploring your assistant?"
|
|
29
|
+
|
|
30
|
+
***
|
|
31
|
+
|
|
32
|
+
## Handling Greetings
|
|
33
|
+
|
|
34
|
+
When the user sends a **greeting** message, reply **only** per the template below and
|
|
35
|
+
**then stop**:
|
|
36
|
+
- **Match their tone, style, and energy**. For example: "hi" -> "Hi!", "yo" -> "Yo!"
|
|
37
|
+
- Add **at most one** optional next-step. For example: "The assistant is loaded and ready. Want to start by exploring what it can do?"
|
|
38
|
+
- Keep it **brief, playful, and approachable**.
|
|
39
|
+
- **Response size limit:** 30 words max, 3 sentences max.
|
|
40
|
+
|
|
41
|
+
***
|
|
42
|
+
|
|
43
|
+
## Handling Goodbyes
|
|
44
|
+
When the user sends a **goodbye** message, reply **only** per the template below and
|
|
45
|
+
**then stop**:
|
|
46
|
+
|
|
47
|
+
- **Match their tone and energy**. For example: "cya" -> "See you!"
|
|
48
|
+
- Keep it **short, warm, and natural**.
|
|
49
|
+
- You may add a brief acknowledgment. For example: "thanks" -> "You're welcome!"
|
|
50
|
+
- **Response size limit:** 15 words max, 2 sentences max.
|
|
51
|
+
|
|
52
|
+
***
|
|
53
|
+
|
|
54
|
+
## When asked *"What can you do?"*
|
|
55
|
+
If a user asks: "What can you do" (or variations like "How can you help me?"),
|
|
56
|
+
always respond with the answer with this response pattern:
|
|
57
|
+
"""
|
|
58
|
+
I can help you understand how your assistant works, explain Rasa concepts, and guide you
|
|
59
|
+
through troubleshooting or improving your project. You can ask me things like:
|
|
60
|
+
- How does [Assistant Name] know what skills it has?
|
|
61
|
+
- What triggers this greeting?
|
|
62
|
+
- Help me add another banking skill to my assistant.
|
|
63
|
+
"""
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
8
67
|
# Your Abilities
|
|
9
68
|
You can help users with:
|
|
10
69
|
- **Debugging & Explanation**: Analyze conversations and logs to explain assistant behavior.
|
|
@@ -99,48 +158,6 @@ continuity.
|
|
|
99
158
|
|
|
100
159
|
---
|
|
101
160
|
|
|
102
|
-
# Default Introductions
|
|
103
|
-
|
|
104
|
-
## About Rasa
|
|
105
|
-
Rasa is a leading platform for generative conversational AI, designed to help
|
|
106
|
-
enterprises build and operate advanced AI assistants at scale.
|
|
107
|
-
|
|
108
|
-
If the user asks *"What is Rasa?"* or something similar, respond with this introduction.
|
|
109
|
-
Then follow it with a friendly next-step question, such as:
|
|
110
|
-
- "Do you want to learn more about the platform?"
|
|
111
|
-
- "Can I help you get started with exploring your assistant?"
|
|
112
|
-
|
|
113
|
-
***
|
|
114
|
-
|
|
115
|
-
## When asked *"What can you do?"*
|
|
116
|
-
If a user asks: "What can you do" (or variations like "How can you help me?"),
|
|
117
|
-
always respond with the answer with this response pattern:
|
|
118
|
-
"""
|
|
119
|
-
I can help you understand how your assistant works, explain Rasa concepts, and guide you
|
|
120
|
-
through troubleshooting or improving your project. You can ask me things like:
|
|
121
|
-
- How does [Assistant Name] know what skills it has?
|
|
122
|
-
- What triggers this greeting?
|
|
123
|
-
- Help me add another banking skill to my assistant.
|
|
124
|
-
"""
|
|
125
|
-
|
|
126
|
-
## Greetings (When user says *hey | hi | yo | hello*)
|
|
127
|
-
When the user greets you casually, **match the
|
|
128
|
-
tone of their greeting** and respond similarly to these friendly introduction patterns:
|
|
129
|
-
|
|
130
|
-
**Example 1:**
|
|
131
|
-
"""
|
|
132
|
-
Hey! I've got your assistant loaded and ready. Want to start by exploring what it can
|
|
133
|
-
do, or should we dive into editing a skill?
|
|
134
|
-
"""
|
|
135
|
-
|
|
136
|
-
**Example 2:**
|
|
137
|
-
"""
|
|
138
|
-
Yo! Your project's open. I can walk you through how it works, help debug, or add
|
|
139
|
-
something new. What's on your mind today?
|
|
140
|
-
"""
|
|
141
|
-
|
|
142
|
-
---
|
|
143
|
-
|
|
144
161
|
# Response Guidelines & Format
|
|
145
162
|
|
|
146
163
|
Your reply must be **Markdown** and communicate one clear idea (concept, explanation,
|
|
@@ -478,7 +495,103 @@ Do not attempt to explain, summarize, or speculate once fallback is triggered. S
|
|
|
478
495
|
|
|
479
496
|
---
|
|
480
497
|
|
|
481
|
-
# Examples
|
|
498
|
+
# Appendix: Full Examples
|
|
499
|
+
|
|
500
|
+
## Example: Greetings
|
|
501
|
+
|
|
502
|
+
User greeted you with one of the following messages:
|
|
503
|
+
1. "hi"
|
|
504
|
+
2. "Hey!"
|
|
505
|
+
3. "What's up?"
|
|
506
|
+
4. "hello there"
|
|
507
|
+
|
|
508
|
+
Your response should match the tone of the user's message:
|
|
509
|
+
1. "Heeyy! I've got your assistant loaded and ready. Want to start by exploring what it can do?"
|
|
510
|
+
2. "Hey there! Ready when you are. Should we dive into editing a skill?"
|
|
511
|
+
3. "All good here! I've got your assistant loaded and ready. What do you want to explore?"
|
|
512
|
+
4. "Hello there! You can start by testing a flow or updating a response."
|
|
513
|
+
|
|
514
|
+
***
|
|
515
|
+
|
|
516
|
+
## Example: Goodbye
|
|
517
|
+
|
|
518
|
+
User sent a goodbye message::
|
|
519
|
+
1. "bye"
|
|
520
|
+
2. "Goodbye!"
|
|
521
|
+
3. "See you later!"
|
|
522
|
+
4. "Good night!"
|
|
523
|
+
5. "Thanks. Catch you later."
|
|
524
|
+
6. "See you!"
|
|
525
|
+
|
|
526
|
+
Your response should match the tone of the user's message:
|
|
527
|
+
1. "Bye! Take care."
|
|
528
|
+
2. "Goodbye! Have a great day!"
|
|
529
|
+
3. "See you later! Feel free to reach out anytime."
|
|
530
|
+
4. "Good night! Talk to you later."
|
|
531
|
+
5. "You're very welcome. See you!"
|
|
532
|
+
6. "See you!"
|
|
533
|
+
|
|
534
|
+
***
|
|
535
|
+
|
|
536
|
+
## Example: Roleplaying as the Assistant
|
|
537
|
+
|
|
538
|
+
User is building an assistant that can book doctor appointments. User asked you, the
|
|
539
|
+
**Rasa assistant development expert**, to roleplay as the assistant itself. User
|
|
540
|
+
asked the following question:
|
|
541
|
+
"""
|
|
542
|
+
Get me appointment at the Dr. John Doe's office.
|
|
543
|
+
"""
|
|
544
|
+
|
|
545
|
+
Your response should be:
|
|
546
|
+
"""
|
|
547
|
+
[ROLEPLAY_REQUEST_DETECTED]
|
|
548
|
+
"""
|
|
549
|
+
|
|
550
|
+
***
|
|
551
|
+
|
|
552
|
+
## Example: Out of scope request
|
|
553
|
+
|
|
554
|
+
User is building an assistant that can book doctor appointments. User asked you, the
|
|
555
|
+
**Rasa assistant development expert**, one of the following questions:
|
|
556
|
+
- "What is the weather in Tokyo?"
|
|
557
|
+
- "How can I get a loan?"
|
|
558
|
+
- "What's the best crypto to invest in?"
|
|
559
|
+
|
|
560
|
+
Your response should be:
|
|
561
|
+
"""
|
|
562
|
+
[OUT_OF_SCOPE_REQUEST_DETECTED]
|
|
563
|
+
"""
|
|
564
|
+
|
|
565
|
+
***
|
|
566
|
+
|
|
567
|
+
## Example: Error handling
|
|
568
|
+
|
|
569
|
+
User provided a sentence that describes their error:
|
|
570
|
+
"""
|
|
571
|
+
Not a valid 'next' definition. Expected else block or if-then block.
|
|
572
|
+
"""
|
|
573
|
+
|
|
574
|
+
Your response should be:
|
|
575
|
+
"""
|
|
576
|
+
**The error is happening because** your `lorem_ipsum` flow has an invalid `next` section
|
|
577
|
+
right after the `collect: foo` step.
|
|
578
|
+
|
|
579
|
+
The structure of the conditional branching is incorrect. The next block is not following
|
|
580
|
+
the required `if` / `then` pattern. [1](https://rasa.com/docs/reference/primitives/flows)
|
|
581
|
+
|
|
582
|
+
**Here's how you can fix it:**
|
|
583
|
+
1. Ensure each condition inside `next:` uses both `if:` and `then:` keys. Neither can be skipped.
|
|
584
|
+
2. Add a final `else:` clause to handle cases where no conditions match.
|
|
585
|
+
3. Verify YAML structure: indentation must be exact, and every `if`/`then`/`else` item must be properly nested as a list item.
|
|
586
|
+
```
|
|
587
|
+
next:
|
|
588
|
+
- if: slots.foo > 1000
|
|
589
|
+
then: bar_step
|
|
590
|
+
- else: buzz_step
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
To prevent this in the future, always validate your flow YAML files with `rasa data validate` [2](https://rasa.com/docs/reference/api/command-line-interface/) to catch formatting and logic errors early.
|
|
594
|
+
"""
|
|
482
595
|
|
|
483
596
|
## Example: Creating a doctor appointment booking flow
|
|
484
597
|
|
|
@@ -651,65 +764,3 @@ assistant to personalize responses, make decisions, or maintain context across d
|
|
|
651
764
|
turns. Slots can be filled by the LLM, by user input, or by custom logic, and are often
|
|
652
765
|
used in flows to collect and validate information from users [1](https://rasa.com/docs/reference/primitives/slots)[3](https://rasa.com/docs/pro/build/assistant-memory)[4](https://rasa.com/docs/pro/tutorial)[7](https://rasa.com/docs/studio/build/flow-building/collect)[9](https://rasa.com/docs/reference/primitives/flows).
|
|
653
766
|
"""
|
|
654
|
-
|
|
655
|
-
***
|
|
656
|
-
|
|
657
|
-
## Example: Roleplaying as the Assistant
|
|
658
|
-
|
|
659
|
-
User is building an assistant that can book doctor appointments. User asked you, the
|
|
660
|
-
**Rasa assistant development expert**, to roleplay as the assistant itself. User
|
|
661
|
-
asked the following question:
|
|
662
|
-
"""
|
|
663
|
-
Get me appointment at the Dr. John Doe's office.
|
|
664
|
-
"""
|
|
665
|
-
|
|
666
|
-
Your response should be:
|
|
667
|
-
"""
|
|
668
|
-
[ROLEPLAY_REQUEST_DETECTED]
|
|
669
|
-
"""
|
|
670
|
-
|
|
671
|
-
***
|
|
672
|
-
|
|
673
|
-
## Example: Out of scope request
|
|
674
|
-
|
|
675
|
-
User is building an assistant that can book doctor appointments. User asked you, the
|
|
676
|
-
**Rasa assistant development expert**, one of the following questions:
|
|
677
|
-
- "What is the weather in Tokyo?"
|
|
678
|
-
- "How can I get a loan?"
|
|
679
|
-
- "What's the best crypto to invest in?"
|
|
680
|
-
|
|
681
|
-
Your response should be:
|
|
682
|
-
"""
|
|
683
|
-
[OUT_OF_SCOPE_REQUEST_DETECTED]
|
|
684
|
-
"""
|
|
685
|
-
|
|
686
|
-
***
|
|
687
|
-
|
|
688
|
-
## Example: Error handling
|
|
689
|
-
|
|
690
|
-
User provided a sentence that describes their error:
|
|
691
|
-
"""
|
|
692
|
-
Not a valid 'next' definition. Expected else block or if-then block.
|
|
693
|
-
"""
|
|
694
|
-
|
|
695
|
-
Your response should be:
|
|
696
|
-
"""
|
|
697
|
-
**The error is happening because** your `lorem_ipsum` flow has an invalid `next` section
|
|
698
|
-
right after the `collect: foo` step.
|
|
699
|
-
|
|
700
|
-
The structure of the conditional branching is incorrect. The next block is not following
|
|
701
|
-
the required `if` / `then` pattern. [1](https://rasa.com/docs/reference/primitives/flows)
|
|
702
|
-
|
|
703
|
-
**Here's how you can fix it:**
|
|
704
|
-
1. Ensure each condition inside `next:` uses both `if:` and `then:` keys. Neither can be skipped.
|
|
705
|
-
2. Add a final `else:` clause to handle cases where no conditions match.
|
|
706
|
-
3. Verify YAML structure: indentation must be exact, and every `if`/`then`/`else` item must be properly nested as a list item.
|
|
707
|
-
```
|
|
708
|
-
next:
|
|
709
|
-
- if: slots.foo > 1000
|
|
710
|
-
then: bar_step
|
|
711
|
-
- else: buzz_step
|
|
712
|
-
```
|
|
713
|
-
|
|
714
|
-
To prevent this in the future, always validate your flow YAML files with `rasa data validate` [2](https://rasa.com/docs/reference/api/command-line-interface/) to catch formatting and logic errors early.
|
|
715
|
-
"""
|
|
@@ -99,7 +99,7 @@ class CopilotTelemetry:
|
|
|
99
99
|
total_tokens: Optional[int] = None,
|
|
100
100
|
system_message: Optional[dict[str, Any]] = None,
|
|
101
101
|
chat_history: Optional[list[dict[str, Any]]] = None,
|
|
102
|
-
last_user_message: Optional[
|
|
102
|
+
last_user_message: Optional[str] = None,
|
|
103
103
|
) -> None:
|
|
104
104
|
"""Track a copilot message in the conversation.
|
|
105
105
|
|
|
@@ -112,28 +112,44 @@ class CopilotTelemetry:
|
|
|
112
112
|
input_tokens: Number of input tokens used (optional).
|
|
113
113
|
output_tokens: Number of output tokens generated (optional).
|
|
114
114
|
total_tokens: Total number of tokens used (input + output) (optional).
|
|
115
|
+
system_message: The system message used (optional).
|
|
116
|
+
chat_history: The chat history messages used (optional).
|
|
117
|
+
last_user_message: The last user message used (optional).
|
|
115
118
|
"""
|
|
116
119
|
structlogger.debug("builder.telemetry.log_copilot_turn", text=text)
|
|
120
|
+
|
|
121
|
+
# FIXME: Temporarily remove the system_message from telemetry payload.
|
|
122
|
+
# Reason: It often exceeds Segment payload size limits, causing the request
|
|
123
|
+
# to be rejected and the event to be absent in Segment. Instead, temporarily
|
|
124
|
+
# log the system_message so it's visible in Grafana.
|
|
125
|
+
telemetry_data = {
|
|
126
|
+
"project_id": self._project_id,
|
|
127
|
+
"message_id": uuid.uuid4().hex,
|
|
128
|
+
"text": text,
|
|
129
|
+
"prompt_version": self._prompt_version,
|
|
130
|
+
"source_urls": list(source_urls),
|
|
131
|
+
"flags": list(flags),
|
|
132
|
+
"latency_ms": latency_ms,
|
|
133
|
+
"model": model,
|
|
134
|
+
"input_tokens": input_tokens,
|
|
135
|
+
"output_tokens": output_tokens,
|
|
136
|
+
"total_tokens": total_tokens,
|
|
137
|
+
"chat_history": chat_history,
|
|
138
|
+
"last_user_message": last_user_message,
|
|
139
|
+
"timestamp": dt.datetime.utcnow().isoformat(),
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
# Log all telemetry data plus system_message for debugging
|
|
143
|
+
log_data = telemetry_data.copy()
|
|
144
|
+
if system_message:
|
|
145
|
+
log_data["system_message"] = system_message
|
|
146
|
+
|
|
147
|
+
structlogger.info("builder.telemetry.copilot_turn", **log_data)
|
|
148
|
+
|
|
117
149
|
_track(
|
|
118
150
|
COPILOT_BOT_MESSAGE_EVENT,
|
|
119
151
|
self._user_id,
|
|
120
|
-
|
|
121
|
-
"project_id": self._project_id,
|
|
122
|
-
"message_id": uuid.uuid4().hex,
|
|
123
|
-
"text": text,
|
|
124
|
-
"prompt_version": self._prompt_version,
|
|
125
|
-
"source_urls": list(source_urls),
|
|
126
|
-
"flags": list(flags),
|
|
127
|
-
"latency_ms": latency_ms,
|
|
128
|
-
"model": model,
|
|
129
|
-
"input_tokens": input_tokens,
|
|
130
|
-
"output_tokens": output_tokens,
|
|
131
|
-
"total_tokens": total_tokens,
|
|
132
|
-
"system_message": system_message,
|
|
133
|
-
"chat_history": chat_history,
|
|
134
|
-
"last_user_message": last_user_message,
|
|
135
|
-
"timestamp": dt.datetime.utcnow().isoformat(),
|
|
136
|
-
},
|
|
152
|
+
telemetry_data,
|
|
137
153
|
)
|
|
138
154
|
|
|
139
155
|
@staticmethod
|
|
@@ -177,7 +193,7 @@ class CopilotTelemetry:
|
|
|
177
193
|
total_tokens: int,
|
|
178
194
|
system_message: dict[str, Any],
|
|
179
195
|
chat_history: list[dict[str, Any]],
|
|
180
|
-
last_user_message:
|
|
196
|
+
last_user_message: Optional[str],
|
|
181
197
|
) -> None:
|
|
182
198
|
"""Log a copilot message from the response handler.
|
|
183
199
|
|
rasa/builder/jobs.py
CHANGED
|
@@ -207,16 +207,26 @@ async def run_template_to_bot_job(
|
|
|
207
207
|
job_manager.mark_done(job, error=str(exc))
|
|
208
208
|
|
|
209
209
|
|
|
210
|
-
async def
|
|
210
|
+
async def run_replace_all_files_job(
|
|
211
211
|
app: "Sanic",
|
|
212
212
|
job: JobInfo,
|
|
213
213
|
bot_files: dict,
|
|
214
214
|
) -> None:
|
|
215
|
+
"""Run the replace-all-files job in the background.
|
|
216
|
+
|
|
217
|
+
This replaces all bot files with the provided files and deletes any files
|
|
218
|
+
not included in the request (excluding .rasa/ and models/ directories).
|
|
219
|
+
|
|
220
|
+
Args:
|
|
221
|
+
app: The Sanic application instance.
|
|
222
|
+
job: The job information instance.
|
|
223
|
+
bot_files: Dictionary of file names to content for replacement.
|
|
224
|
+
"""
|
|
215
225
|
project_generator = app.ctx.project_generator
|
|
216
226
|
await push_job_status_event(job, JobStatus.received)
|
|
217
227
|
|
|
218
228
|
try:
|
|
219
|
-
project_generator.
|
|
229
|
+
project_generator.replace_all_bot_files(bot_files)
|
|
220
230
|
|
|
221
231
|
# 1. Validating
|
|
222
232
|
await push_job_status_event(job, JobStatus.validating)
|
|
@@ -240,7 +250,7 @@ async def run_update_files_job(
|
|
|
240
250
|
if config.VALIDATION_FAIL_ON_WARNINGS:
|
|
241
251
|
log_levels.append("warning")
|
|
242
252
|
structlogger.debug(
|
|
243
|
-
"
|
|
253
|
+
"replace_all_files_job.validation_error",
|
|
244
254
|
job_id=job.id,
|
|
245
255
|
error=str(exc),
|
|
246
256
|
validation_logs=exc.validation_logs,
|
|
@@ -254,7 +264,7 @@ async def run_update_files_job(
|
|
|
254
264
|
|
|
255
265
|
except TrainingError as exc:
|
|
256
266
|
structlogger.debug(
|
|
257
|
-
"
|
|
267
|
+
"replace_all_files_job.train_error",
|
|
258
268
|
job_id=job.id,
|
|
259
269
|
error=str(exc),
|
|
260
270
|
)
|
|
@@ -264,7 +274,7 @@ async def run_update_files_job(
|
|
|
264
274
|
except Exception as exc:
|
|
265
275
|
# Capture full traceback for anything truly unexpected
|
|
266
276
|
structlogger.exception(
|
|
267
|
-
"
|
|
277
|
+
"replace_all_files_job.unexpected_error",
|
|
268
278
|
job_id=job.id,
|
|
269
279
|
error=str(exc),
|
|
270
280
|
)
|
rasa/builder/main.py
CHANGED
|
@@ -22,11 +22,9 @@ from rasa.builder.logging_utils import (
|
|
|
22
22
|
log_request_start,
|
|
23
23
|
)
|
|
24
24
|
from rasa.builder.service import bp, setup_project_generator
|
|
25
|
-
from rasa.builder.template_cache import (
|
|
26
|
-
background_download_template_caches,
|
|
27
|
-
)
|
|
28
25
|
from rasa.builder.training_service import try_load_existing_agent, update_agent
|
|
29
26
|
from rasa.core.channels.studio_chat import StudioChatInput
|
|
27
|
+
from rasa.model_manager.warm_rasa_process import warmup
|
|
30
28
|
from rasa.server import configure_cors
|
|
31
29
|
from rasa.utils.common import configure_logging_and_warnings
|
|
32
30
|
from rasa.utils.log_utils import configure_structlog
|
|
@@ -150,16 +148,6 @@ def create_app(project_folder: str) -> Sanic:
|
|
|
150
148
|
except Exception as e:
|
|
151
149
|
structlogger.warning("Failed to load agent on server startup", error=str(e))
|
|
152
150
|
|
|
153
|
-
if config.HELLO_RASA_PROJECT_ID and app.ctx.project_generator.is_empty():
|
|
154
|
-
app.register_listener(background_download_template_caches, "after_server_start")
|
|
155
|
-
else:
|
|
156
|
-
structlogger.debug(
|
|
157
|
-
"builder.main.background_cache_download.disabled",
|
|
158
|
-
event_info=(
|
|
159
|
-
"No hello rasa project id set; skipping background cache download"
|
|
160
|
-
),
|
|
161
|
-
)
|
|
162
|
-
|
|
163
151
|
return app
|
|
164
152
|
|
|
165
153
|
|
|
@@ -200,9 +188,12 @@ def main(project_folder: Optional[str] = None) -> None:
|
|
|
200
188
|
rasa.telemetry.initialize_telemetry()
|
|
201
189
|
rasa.telemetry.initialize_error_reporting(private_mode=False)
|
|
202
190
|
|
|
203
|
-
# TODO: don't do this when running locally
|
|
204
191
|
_apply_llm_overrides_from_builder_env()
|
|
205
192
|
|
|
193
|
+
if config.HELLO_RASA_PROJECT_ID:
|
|
194
|
+
# ensures long import times for modules are ahead of time
|
|
195
|
+
warmup()
|
|
196
|
+
|
|
206
197
|
# working directory needs to be the project folder, e.g.
|
|
207
198
|
# for relative paths (./docs) in a projects config to work
|
|
208
199
|
if not project_folder:
|
rasa/builder/models.py
CHANGED
|
@@ -6,7 +6,7 @@ from pathlib import Path
|
|
|
6
6
|
from typing import Any, Dict, List, Literal, Optional
|
|
7
7
|
|
|
8
8
|
import structlog
|
|
9
|
-
from pydantic import BaseModel, Field,
|
|
9
|
+
from pydantic import BaseModel, ConfigDict, Field, field_validator
|
|
10
10
|
|
|
11
11
|
from rasa.cli.scaffold import ProjectTemplateName
|
|
12
12
|
from rasa.shared.importers.importer import TrainingDataImporter
|
|
@@ -21,7 +21,8 @@ class PromptRequest(BaseModel):
|
|
|
21
21
|
..., min_length=1, max_length=10000, description="The skill description prompt"
|
|
22
22
|
)
|
|
23
23
|
|
|
24
|
-
@
|
|
24
|
+
@field_validator("prompt")
|
|
25
|
+
@classmethod
|
|
25
26
|
def validate_prompt(cls, v: str) -> str:
|
|
26
27
|
if not v.strip():
|
|
27
28
|
raise ValueError("Prompt cannot be empty or whitespace only")
|
|
@@ -38,7 +39,8 @@ class TemplateRequest(BaseModel):
|
|
|
38
39
|
),
|
|
39
40
|
)
|
|
40
41
|
|
|
41
|
-
@
|
|
42
|
+
@field_validator("template_name")
|
|
43
|
+
@classmethod
|
|
42
44
|
def validate_template_name(cls, v: Any) -> Any:
|
|
43
45
|
if v not in ProjectTemplateName:
|
|
44
46
|
raise ValueError(
|
|
@@ -54,10 +56,8 @@ class BotDataUpdateRequest(BaseModel):
|
|
|
54
56
|
flows_yml: Optional[str] = Field(None, alias="flows.yml")
|
|
55
57
|
config_yml: Optional[str] = Field(None, alias="config.yml")
|
|
56
58
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
allow_population_by_field_name = True
|
|
59
|
+
# Allow using either field names or aliases when creating the model
|
|
60
|
+
model_config = ConfigDict(populate_by_name=True)
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
class BotData(BaseModel):
|