目录
命令行接口(CLI)为常见任务提供了易于记住的命令。这一页描述了命令的行为和你可以传递给它们的参数。
Command | Effect |
---|---|
rasa init | Creates a new project with example training data, actions, and config files. |
rasa train | Trains a model using your NLU data and stories, saves trained model in ./models . |
rasa interactive | Starts an interactive learning session to create new training data by chatting to your assistant. |
rasa shell | Loads your trained model and lets you talk to your assistant on the command line. |
rasa run | Starts a server with your trained model. |
rasa run actions | Starts an action server using the Rasa SDK. |
rasa visualize | Generates a visual representation of your stories. |
rasa test | Tests a trained Rasa model on any files starting with test_ . |
rasa data split nlu | Performs a 80/20 split of your NLU training data. |
rasa data convert | Converts training data between different formats. |
rasa data validate | Checks the domain, NLU and conversation data for inconsistencies. |
rasa export | Exports conversations from a tracker store to an event broker. |
rasa x | Launches Rasa X in local mode. |
rasa -h | Shows all available commands. |
这个命令用一些示例训练数据为您设置了一个完整的助手:
rasa init
It creates the following files:
.
├── actions
│ ├── __init__.py
│ └── actions.py
├── config.yml
├── credentials.yml
├── data
│ ├── nlu.yml
│ └── stories.yml
├── domain.yml
├── endpoints.yml
├── models
│ └── <timestamp>.tar.gz
└── tests
└── test_stories.yml
它会问你是否想用这些数据训练一个初始模型。如果您回答no, models目录将是空的。
任何默认的CLI命令都需要这样的项目设置,所以这是开始的最佳方式。您可以运行rasa train, rasa shell和rasa test,而无需任何额外的配置。
下面的命令训练一个Rasa开源模型:
rasa train
如果您的目录中有现有的模型(默认情况下在models/下),那么只有模型中已更改的部分将被重新培训。例如,如果您只编辑您的NLU训练数据而不做其他,则只会训练NLU部分。
如果你想单独训练一个NLU或对话模型,你可以runrasa train NLU或rasa train core。如果您仅为其中一个命令提供训练数据,则rasa train默认将退回到这些命令中的一个。
rasa train将把训练过的模型存储在——out定义的目录中,默认情况下是models/。模型的名称默认为<timestamp>.tar.gz。</timestamp>如果想用不同的方式命名模型,可以使用——fixed-model-name标志指定名称。
可以使用以下参数来配置训练过程:
usage: rasa train [-h] [-v] [-vv] [--quiet] [--data DATA [DATA ...]]
[-c CONFIG] [-d DOMAIN] [--out OUT] [--dry-run]
[--augmentation AUGMENTATION] [--debug-plots]
[--num-threads NUM_THREADS]
[--fixed-model-name FIXED_MODEL_NAME] [--persist-nlu-data]
[--force] [--finetune [FINETUNE]]
[--epoch-fraction EPOCH_FRACTION]
{core,nlu} ...
positional arguments:
{core,nlu}
core Trains a Rasa Core model using your stories.
nlu Trains a Rasa NLU model using your NLU data.
optional arguments:
-h, --help show this help message and exit
--data DATA [DATA ...]
Paths to the Core and NLU data files. (default:
['data'])
-c CONFIG, --config CONFIG
The policy and NLU pipeline configuration of your bot.
(default: config.yml)
-d DOMAIN, --domain DOMAIN
Domain specification. This can be a single YAML file,
or a directory that contains several files with domain
specifications in it. The content of these files will
be read and merged together. (default: domain.yml)
--out OUT Directory where your models should be stored.
(default: models)
--dry-run If enabled, no actual training will be performed.
Instead, it will be determined whether a model should
be re-trained and this information will be printed as
the output. The return code is a 4-bit bitmask that
can also be used to determine what exactly needs to be
retrained: - 1 means Core needs to be retrained - 2
means NLU needs to be retrained - 4 means responses in
the domain should be updated - 8 means the training
was forced (--force argument is specified) (default:
False)
--augmentation AUGMENTATION
How much data augmentation to use during training.
(default: 50)
--debug-plots If enabled, will create plots showing checkpoints and
their connections between story blocks in a file
called `story_blocks_connections.html`. (default:
False)
--num-threads NUM_THREADS
Maximum amount of threads to use when training.
(default: 1)
--fixed-model-name FIXED_MODEL_NAME
If set, the name of the model file/directory will be
set to the given name. (default: None)
--persist-nlu-data Persist the NLU training data in the saved model.
(default: False)
--force Force a model training even if the data has not
changed. (default: False)
--finetune [FINETUNE]
Fine-tune a previously trained model. If no model path
is provided, Rasa Open Source will try to finetune the
latest trained model from the model directory
specified via '--out'. (default: None)
--epoch-fraction EPOCH_FRACTION
Fraction of epochs which are currently specified in
the model configuration which should be used when
finetuning a model. (default: 1.0)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
为了提高助手的性能,练习CDD并根据用户与助手的对话方式添加新的训练示例是很有帮助的。您可以使用rasa train—finetune用一个已经训练过的模型初始化管道,并在包含额外训练示例的新训练数据集上进一步微调它。这将有助于减少新模型的训练时间。
默认情况下,该命令会选取models/目录中的最新模型。如果你有一个想要改进的特定模型,你可以通过运行rasa train来指定它的路径——finetune 。</path>与从零开始训练相比,调整模型训练DIETClassifier、ResponseSelector和tedpolicy等机器学习组件所需的时间通常更少。要么使用模型配置进行微调,它定义的纪元比以前少,要么使用标志——epoch-fraction。epoch-fraction将使用模型配置文件中为每个机器学习组件指定的epoch的一部分。例如,如果DIETClassifier被配置为使用100个epoch,则指定——epoch-fraction 0.5将只使用50个epoch进行微调。
您还可以通过分别使用rasa train nlu -finetune和rasa train core - finetunet来微调nlu -only或对话管理模型。
为了能够对模型进行微调,必须满足以下条件:
提供的配置应该与用于训练正在调整的模型的配置完全相同。唯一可以改变的参数是单个机器学习组件和策略的时代。
基础模型所训练的标签集(意图、动作、实体和槽)应该与用于微调的训练数据中呈现的标签集完全相同。这意味着在增量训练期间,您不能向训练数据添加新的意图、动作、实体或插槽标签。您仍然可以为每个现有标签添加新的训练示例。如果在培训数据中添加/删除了标签,则需要从头对管道进行培训。
要调优的模型使用当前安装的rasa版本的MINIMUM_COMPATIBLE_VERSION进行训练。
查看countvectorsfeataturizer和regexfeataturizer的文档,了解如何为增量培训适当地配置它们。
你可以在本地模式下使用Rasa X在UI中进行交互学习,查看文档了解更多细节。
如果你更喜欢使用命令行,你可以运行以下命令来启动一个交互式学习会话:
rasa interactive
这将首先训练模型,然后启动交互式shell会话。然后,你可以一边跟它说话,一边纠正助手的预测。
如果您使用——model参数提供了一个训练过的模型,那么训练将被跳过,而该模型将被加载。
在互动学习中,Rasa将从训练数据中绘制当前对话和一些类似的对话,以帮助您跟踪您所处的位置。一旦会话开始,您就可以在http://localhost:5005/visualization.html上查看可视化。这个图表需要一些时间来生成。要跳过可视化,运行rasa interactive——skip-visualization。
可以使用以下参数配置交互式学习会话:
usage: rasa interactive [-h] [-v] [-vv] [--quiet] [--e2e] [-p PORT] [-m MODEL]
[--data DATA [DATA ...]] [--skip-visualization]
[--conversation-id CONVERSATION_ID]
[--endpoints ENDPOINTS] [-c CONFIG] [-d DOMAIN]
[--out OUT] [--augmentation AUGMENTATION]
[--debug-plots] [--finetune [FINETUNE]]
[--epoch-fraction EPOCH_FRACTION] [--force]
[--persist-nlu-data]
{core} ... [model-as-positional-argument]
positional arguments:
{core}
core Starts an interactive learning session model to create
new training data for a Rasa Core model by chatting.
Uses the 'RegexInterpreter', i.e. `/<intent>` input
format.
model-as-positional-argument
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: None)
optional arguments:
-h, --help show this help message and exit
--e2e Save story files in e2e format. In this format user
messages will be included in the stories. (default:
False)
-p PORT, --port PORT Port to run the server at. (default: 5005)
-m MODEL, --model MODEL
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: None)
--data DATA [DATA ...]
Paths to the Core and NLU data files. (default:
['data'])
--skip-visualization Disable plotting the visualization during interactive
learning. (default: False)
--conversation-id CONVERSATION_ID
Specify the id of the conversation the messages are
in. Defaults to a UUID that will be randomly
generated. (default: f41b89fc9d1943e08c0f419b4bb2cb0f)
--endpoints ENDPOINTS
Configuration file for the model server and the
connectors as a yml file. (default: None)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Train Arguments:
-c CONFIG, --config CONFIG
The policy and NLU pipeline configuration of your bot.
(default: config.yml)
-d DOMAIN, --domain DOMAIN
Domain specification. This can be a single YAML file,
or a directory that contains several files with domain
specifications in it. The content of these files will
be read and merged together. (default: domain.yml)
--out OUT Directory where your models should be stored.
(default: models)
--augmentation AUGMENTATION
How much data augmentation to use during training.
(default: 50)
--debug-plots If enabled, will create plots showing checkpoints and
their connections between story blocks in a file
called `story_blocks_connections.html`. (default:
False)
--finetune [FINETUNE]
Fine-tune a previously trained model. If no model path
is provided, Rasa Open Source will try to finetune the
latest trained model from the model directory
specified via '--out'. (default: None)
--epoch-fraction EPOCH_FRACTION
Fraction of epochs which are currently specified in
the model configuration which should be used when
finetuning a model. (default: 1.0)
--force Force a model training even if the data has not
changed. (default: False)
--persist-nlu-data Persist the NLU training data in the saved model.
(default: False)
您可以在本地模式下使用Rasa X在UI中与您的助手对话。查看Rasa X文档了解更多细节。
如果你更喜欢使用命令行,你可以运行以下命令来启动聊天会话:
rasa shell
默认情况下,这将加载最新的训练模型。您可以使用——model标志指定要加载的不同模型。
如果您使用仅nlu模型启动shell,那么rasa shell将输出您输入的任何消息的预期意图和实体。
如果您已经训练了一个组合的Rasa模型,但是只希望看到您的模型从文本中提取的意图和实体,那么您可以使用命令Rasa shell nlu。
要增加用于调试的日志级别,可以执行以下命令:
Copy
rasa shell --debug
可以使用以下参数来配置该命令:
usage: rasa shell [-h] [-v] [-vv] [--quiet]
[--conversation-id CONVERSATION_ID] [-m MODEL]
[--log-file LOG_FILE] [--endpoints ENDPOINTS] [-p PORT]
[-t AUTH_TOKEN] [--cors [CORS [CORS ...]]] [--enable-api]
[--response-timeout RESPONSE_TIMEOUT]
[--remote-storage REMOTE_STORAGE]
[--ssl-certificate SSL_CERTIFICATE]
[--ssl-keyfile SSL_KEYFILE] [--ssl-ca-file SSL_CA_FILE]
[--ssl-password SSL_PASSWORD] [--credentials CREDENTIALS]
[--connector CONNECTOR] [--jwt-secret JWT_SECRET]
[--jwt-method JWT_METHOD]
{nlu} ... [model-as-positional-argument]
positional arguments:
{nlu}
nlu Interprets messages on the command line using your NLU
model.
model-as-positional-argument
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: None)
optional arguments:
-h, --help show this help message and exit
--conversation-id CONVERSATION_ID
Set the conversation ID. (default:
14f6a63f1aca421194dec8652b6308eb)
-m MODEL, --model MODEL
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: models)
--log-file LOG_FILE Store logs in specified file. (default: None)
--endpoints ENDPOINTS
Configuration file for the model server and the
connectors as a yml file. (default: None)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Server Settings:
-p PORT, --port PORT Port to run the server at. (default: 5005)
-t AUTH_TOKEN, --auth-token AUTH_TOKEN
Enable token based authentication. Requests need to
provide the token to be accepted. (default: None)
--cors [CORS [CORS ...]]
Enable CORS for the passed origin. Use * to whitelist
all origins. (default: None)
--enable-api Start the web server API in addition to the input
channel. (default: False)
--response-timeout RESPONSE_TIMEOUT
Maximum time a response can take to process (sec).
(default: 3600)
--remote-storage REMOTE_STORAGE
Set the remote location where your Rasa model is
stored, e.g. on AWS. (default: None)
--ssl-certificate SSL_CERTIFICATE
Set the SSL Certificate to create a TLS secured
server. (default: None)
--ssl-keyfile SSL_KEYFILE
Set the SSL Keyfile to create a TLS secured server.
(default: None)
--ssl-ca-file SSL_CA_FILE
If your SSL certificate needs to be verified, you can
specify the CA file using this parameter. (default:
None)
--ssl-password SSL_PASSWORD
If your ssl-keyfile is protected by a password, you
can specify it using this paramer. (default: None)
Channels:
--credentials CREDENTIALS
Authentication credentials for the connector as a yml
file. (default: None)
--connector CONNECTOR
Service to connect to. (default: None)
JWT Authentication:
--jwt-secret JWT_SECRET
Public key for asymmetric JWT methods or shared
secretfor symmetric methods. Please also make sure to
use --jwt-method to select the method of the
signature, otherwise this argument will be ignored.
(default: None)
--jwt-method JWT_METHOD
Method used for the signature of the JWT
authentication payload. (default: HS256)
To start a server running your trained model, run:
rasa run
默认情况下,Rasa服务器使用HTTP进行通信。为了保证与SSL的通信安全,并在HTTPS上运行服务器,您需要提供有效的证书和相应的私钥文件。您可以将这些文件指定为rasa run命令的一部分。如果在创建过程中使用密码加密了密钥文件,那么还需要添加——ssl-password。
rasa run --ssl-certificate myssl.crt --ssl-keyfile myssl.key --ssl-password mypassword
下面的参数可以用来配置你的Rasa服务器:
usage: rasa run [-h] [-v] [-vv] [--quiet] [-m MODEL] [--log-file LOG_FILE]
[--endpoints ENDPOINTS] [-p PORT] [-t AUTH_TOKEN]
[--cors [CORS [CORS ...]]] [--enable-api]
[--response-timeout RESPONSE_TIMEOUT]
[--remote-storage REMOTE_STORAGE]
[--ssl-certificate SSL_CERTIFICATE]
[--ssl-keyfile SSL_KEYFILE] [--ssl-ca-file SSL_CA_FILE]
[--ssl-password SSL_PASSWORD] [--credentials CREDENTIALS]
[--connector CONNECTOR] [--jwt-secret JWT_SECRET]
[--jwt-method JWT_METHOD]
{actions} ... [model-as-positional-argument]
positional arguments:
{actions}
actions Runs the action server.
model-as-positional-argument
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: None)
optional arguments:
-h, --help show this help message and exit
-m MODEL, --model MODEL
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: models)
--log-file LOG_FILE Store logs in specified file. (default: None)
--endpoints ENDPOINTS
Configuration file for the model server and the
connectors as a yml file. (default: None)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Server Settings:
-p PORT, --port PORT Port to run the server at. (default: 5005)
-t AUTH_TOKEN, --auth-token AUTH_TOKEN
Enable token based authentication. Requests need to
provide the token to be accepted. (default: None)
--cors [CORS [CORS ...]]
Enable CORS for the passed origin. Use * to whitelist
all origins. (default: None)
--enable-api Start the web server API in addition to the input
channel. (default: False)
--response-timeout RESPONSE_TIMEOUT
Maximum time a response can take to process (sec).
(default: 3600)
--remote-storage REMOTE_STORAGE
Set the remote location where your Rasa model is
stored, e.g. on AWS. (default: None)
--ssl-certificate SSL_CERTIFICATE
Set the SSL Certificate to create a TLS secured
server. (default: None)
--ssl-keyfile SSL_KEYFILE
Set the SSL Keyfile to create a TLS secured server.
(default: None)
--ssl-ca-file SSL_CA_FILE
If your SSL certificate needs to be verified, you can
specify the CA file using this parameter. (default:
None)
--ssl-password SSL_PASSWORD
If your ssl-keyfile is protected by a password, you
can specify it using this paramer. (default: None)
Channels:
--credentials CREDENTIALS
Authentication credentials for the connector as a yml
file. (default: None)
--connector CONNECTOR
Service to connect to. (default: None)
JWT Authentication:
--jwt-secret JWT_SECRET
Public key for asymmetric JWT methods or shared
secretfor symmetric methods. Please also make sure to
use --jwt-method to select the method of the
signature, otherwise this argument will be ignored.
(default: None)
--jwt-method JWT_METHOD
Method used for the signature of the JWT
authentication payload. (default: HS256)
For more information on the additional parameters, see Model Storage. See the Rasa HTTP API page for detailed documentation of all the endpoints.
To start an action server with the Rasa SDK, run:
rasa run actions
The following arguments can be used to adapt the server settings:
usage: rasa run actions [-h] [-v] [-vv] [--quiet] [-p PORT]
[--cors [CORS [CORS ...]]] [--actions ACTIONS]
[--ssl-keyfile SSL_KEYFILE]
[--ssl-certificate SSL_CERTIFICATE]
[--ssl-password SSL_PASSWORD] [--auto-reload]
optional arguments:
-h, --help show this help message and exit
-p PORT, --port PORT port to run the server at (default: 5055)
--cors [CORS [CORS ...]]
enable CORS for the passed origin. Use * to whitelist
all origins (default: None)
--actions ACTIONS name of action package to be loaded (default: None)
--ssl-keyfile SSL_KEYFILE
Set the SSL certificate to create a TLS secured
server. (default: None)
--ssl-certificate SSL_CERTIFICATE
Set the SSL certificate to create a TLS secured
server. (default: None)
--ssl-password SSL_PASSWORD
If your ssl-keyfile is protected by a password, you
can specify it using this paramer. (default: None)
--auto-reload Enable auto-reloading of modules containing Action
subclasses. (default: False)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
To generate a graph of your stories in the browser, run:
rasa visualize
If your stories are located somewhere other than the default location data/
, you can specify their location with the --stories
flag.
The following arguments can be used to configure this command:
usage: rasa visualize [-h] [-v] [-vv] [--quiet] [-d DOMAIN] [-s STORIES]
[-c CONFIG] [--out OUT] [--max-history MAX_HISTORY]
[-u NLU]
optional arguments:
-h, --help show this help message and exit
-d DOMAIN, --domain DOMAIN
Domain specification. This can be a single YAML file,
or a directory that contains several files with domain
specifications in it. The content of these files will
be read and merged together. (default: domain.yml)
-s STORIES, --stories STORIES
File or folder containing your training stories.
(default: data)
-c CONFIG, --config CONFIG
The policy and NLU pipeline configuration of your bot.
(default: config.yml)
--out OUT Filename of the output path, e.g. 'graph.html'.
(default: graph.html)
--max-history MAX_HISTORY
Max history to consider when merging paths in the
output graph. (default: 2)
-u NLU, --nlu NLU File or folder containing your NLU data, used to
insert example messages into the graph. (default:
None)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
To evaluate a model on your test data, run:
rasa test
This will test your latest trained model on any end-to-end stories you have defined in files with the test_
prefix. If you want to use a different model, you can specify it using the --model
flag.
If you want to evaluate the dialogue and NLU models separately, you can use the commands below:
rasa test core
and
rasa test nlu
You can find more details in Evaluating an NLU Model and Evaluating a Core Model.
The following arguments are available for rasa test
:
usage: rasa test [-h] [-v] [-vv] [--quiet] [-m MODEL] [-s STORIES]
[--max-stories MAX_STORIES] [--endpoints ENDPOINTS]
[--fail-on-prediction-errors] [--url URL]
[--evaluate-model-directory] [-u NLU]
[-c CONFIG [CONFIG ...]] [--cross-validation] [-f FOLDS]
[-r RUNS] [-p PERCENTAGES [PERCENTAGES ...]] [--no-plot]
[--successes] [--no-errors] [--out OUT]
{core,nlu} ...
positional arguments:
{core,nlu}
core Tests Rasa Core models using your test stories.
nlu Tests Rasa NLU models using your test NLU data.
optional arguments:
-h, --help show this help message and exit
-m MODEL, --model MODEL
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: models)
--no-plot Don't render evaluation plots. (default: False)
--successes If set successful predictions will be written to a
file. (default: False)
--no-errors If set incorrect predictions will NOT be written to a
file. (default: False)
--out OUT Output path for any files created during the
evaluation. (default: results)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Core Test Arguments:
-s STORIES, --stories STORIES
File or folder containing your test stories. (default:
tests)
--max-stories MAX_STORIES
Maximum number of stories to test on. (default: None)
--endpoints ENDPOINTS
Configuration file for the connectors as a yml file.
(default: None)
--fail-on-prediction-errors
If a prediction error is encountered, an exception is
thrown. This can be used to validate stories during
tests, e.g. on travis. (default: False)
--url URL If supplied, downloads a story file from a URL and
trains on it. Fetches the data by sending a GET
request to the supplied URL. (default: None)
--evaluate-model-directory
Should be set to evaluate models trained via 'rasa
train core --config <config-1> <config-2>'. All models
in the provided directory are evaluated and compared
against each other. (default: False)
NLU Test Arguments:
-u NLU, --nlu NLU File or folder containing your NLU data. (default:
data)
-c CONFIG [CONFIG ...], --config CONFIG [CONFIG ...]
Model configuration file. If a single file is passed
and cross validation mode is chosen, cross-validation
is performed, if multiple configs or a folder of
configs are passed, models will be trained and
compared directly. (default: None)
To create a train-test split of your NLU training data, run:
rasa data split nlu
This will create a 80/20 split of train/test data by default. You can specify the training data, the fraction, and the output directory using the following arguments:
usage: rasa data split nlu [-h] [-v] [-vv] [--quiet] [-u NLU]
[--training-fraction TRAINING_FRACTION]
[--random-seed RANDOM_SEED] [--out OUT]
optional arguments:
-h, --help show this help message and exit
-u NLU, --nlu NLU File or folder containing your NLU data. (default:
data)
--training-fraction TRAINING_FRACTION
Percentage of the data which should be in the training
data. (default: 0.8)
--random-seed RANDOM_SEED
Seed to generate the same train/test split. (default:
None)
--out OUT Directory where the split files should be stored.
(default: train_test_split)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
If you have NLG data for retrieval actions, this will be saved to seperate files:
ls train_test_split
nlg_test_data.yml test_data.yml
nlg_training_data.yml training_data.yml
You can convert NLU data from
to
You can start the converter by running:
rasa data convert nlu
You can specify the input file or directory, output file or directory, and the output format with the following arguments:
usage: rasa data convert nlu [-h] [-v] [-vv] [--quiet] [-f {json,md,yaml}]
--data DATA [--out OUT] [-l LANGUAGE]
optional arguments:
-h, --help show this help message and exit
-f {json,md,yaml}, --format {json,md,yaml}
Output format the training data should be converted
into. Note: currently training data can be converted
to 'yaml' format only from 'md' format (default: yaml)
--data DATA Path to the file or directory containing Rasa NLU
data. (default: data)
--out OUT File (for `json` and `md`) or existing path (for
`yaml`) where to save training data in Rasa format.
(default: converted_data)
-l LANGUAGE, --language LANGUAGE
Language of data. (default: en)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
You can convert Core data from Markdown to YAML.
You can specify the input file or directory, output directory with the following arguments:
rasa data convert core --help
You can convert NLG data from Markdown to YAML.
You can specify the input file or directory, output directory with the following arguments:
rasa data convert nlg --help
You can check your domain, NLU data, or story data for mistakes and inconsistencies. To validate your data, run this command:
rasa data validate
验证器搜索数据中的错误,例如,两个意图有一些相同的训练示例。验证器还会检查您是否有任何故事,在这些故事中,不同的助手操作来自相同的对话历史记录。故事之间的冲突会阻碍一个模型学习对话的正确模式。
如果您将max_history值传递给配置中的一个或多个策略。在验证器命令中使用——max-history <max_history>标志提供这些值中的最小值。</max_history>
你也可以通过运行这个命令来验证故事结构:
Copy
rasa data validate stories
You can use rasa data validate
with additional arguments, e.g. to specify the location of your data and domain files:
usage: rasa data validate [-h] [-v] [-vv] [--quiet]
[--max-history MAX_HISTORY] [-c CONFIG]
[--fail-on-warnings] [-d DOMAIN] [--data DATA]
{stories} ...
positional arguments:
{stories}
stories Checks for inconsistencies in the story files.
optional arguments:
-h, --help show this help message and exit
--max-history MAX_HISTORY
Number of turns taken into account for story structure
validation. (default: None)
-c CONFIG, --config CONFIG
The policy and NLU pipeline configuration of your bot.
(default: config.yml)
--fail-on-warnings Fail validation on warnings and errors. If omitted
only errors will result in a non zero exit code.
(default: False)
-d DOMAIN, --domain DOMAIN
Domain specification. This can be a single YAML file,
or a directory that contains several files with domain
specifications in it. The content of these files will
be read and merged together. (default: domain.yml)
--data DATA Path to the file or directory containing Rasa data.
(default: data)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Rasa X is a tool for practicing Conversation-Driven Development. You can find more information about it here.You can start Rasa X in local mode by executing
rasa x
To be able to start Rasa X you need to have Rasa X local mode installedand you need to be in a Rasa project directory.
The following arguments are available for rasa x
:
usage: rasa x [-h] [-v] [-vv] [--quiet] [-m MODEL] [--data DATA] [-c CONFIG]
[-d DOMAIN] [--no-prompt] [--production]
[--rasa-x-port RASA_X_PORT] [--config-endpoint CONFIG_ENDPOINT]
[--log-file LOG_FILE] [--endpoints ENDPOINTS] [-p PORT]
[-t AUTH_TOKEN] [--cors [CORS [CORS ...]]] [--enable-api]
[--response-timeout RESPONSE_TIMEOUT]
[--remote-storage REMOTE_STORAGE]
[--ssl-certificate SSL_CERTIFICATE] [--ssl-keyfile SSL_KEYFILE]
[--ssl-ca-file SSL_CA_FILE] [--ssl-password SSL_PASSWORD]
[--credentials CREDENTIALS] [--connector CONNECTOR]
[--jwt-secret JWT_SECRET] [--jwt-method JWT_METHOD]
optional arguments:
-h, --help show this help message and exit
-m MODEL, --model MODEL
Path to a trained Rasa model. If a directory is
specified, it will use the latest model in this
directory. (default: models)
--data DATA Path to the file or directory containing stories and
Rasa NLU data. (default: data)
-c CONFIG, --config CONFIG
The policy and NLU pipeline configuration of your bot.
(default: config.yml)
-d DOMAIN, --domain DOMAIN
Domain specification. This can be a single YAML file,
or a directory that contains several files with domain
specifications in it. The content of these files will
be read and merged together. (default: domain.yml)
--no-prompt Automatic yes or default options to prompts and
oppressed warnings. (default: False)
--production Run Rasa X in a production environment. (default:
False)
--rasa-x-port RASA_X_PORT
Port to run the Rasa X server at. (default: 5002)
--config-endpoint CONFIG_ENDPOINT
Rasa X endpoint URL from which to pull the runtime
config. This URL typically contains the Rasa X token
for authentication. Example:
https://example.com/api/config?token=my_rasa_x_token
(default: None)
--log-file LOG_FILE Store logs in specified file. (default: None)
--endpoints ENDPOINTS
Configuration file for the model server and the
connectors as a yml file. (default: None)
Python Logging Options:
-v, --verbose Be verbose. Sets logging level to INFO. (default:
None)
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG. (default: None)
--quiet Be quiet! Sets logging level to WARNING. (default:
None)
Server Settings:
-p PORT, --port PORT Port to run the server at. (default: 5005)
-t AUTH_TOKEN, --auth-token AUTH_TOKEN
Enable token based authentication. Requests need to
provide the token to be accepted. (default: None)
--cors [CORS [CORS ...]]
Enable CORS for the passed origin. Use * to whitelist
all origins. (default: None)
--enable-api Start the web server API in addition to the input
channel. (default: False)
--response-timeout RESPONSE_TIMEOUT
Maximum time a response can take to process (sec).
(default: 3600)
--remote-storage REMOTE_STORAGE
Set the remote location where your Rasa model is
stored, e.g. on AWS. (default: None)
--ssl-certificate SSL_CERTIFICATE
Set the SSL Certificate to create a TLS secured
server. (default: None)
--ssl-keyfile SSL_KEYFILE
Set the SSL Keyfile to create a TLS secured server.
(default: None)
--ssl-ca-file SSL_CA_FILE
If your SSL certificate needs to be verified, you can
specify the CA file using this parameter. (default:
None)
--ssl-password SSL_PASSWORD
If your ssl-keyfile is protected by a password, you
can specify it using this paramer. (default: None)
Channels:
--credentials CREDENTIALS
Authentication credentials for the connector as a yml
file. (default: None)
--connector CONNECTOR
Service to connect to. (default: None)
JWT Authentication:
--jwt-secret JWT_SECRET
Public key for asymmetric JWT methods or shared
secretfor symmetric methods. Please also make sure to
use --jwt-method to select the method of the
signature, otherwise this argument will be ignored.
(default: None)
--jwt-method JWT_METHOD
Method used for the signature of the JWT
authentication payload. (default: HS256)