Tips Building Chatbots with Rasa NLU

angryfish971

New member
[TIẾNG VIỆT]:
## Xây dựng chatbots với Rasa NLU

Chatbots đang ngày càng trở nên phổ biến như một cách để cung cấp dịch vụ khách hàng, trả lời các câu hỏi và các nhiệm vụ đầy đủ.RASA NLU là một khung hiểu biết ngôn ngữ tự nhiên (NLU) có thể được sử dụng để xây dựng các chatbot có khả năng hiểu và phản ứng với ngôn ngữ của con người.

Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách xây dựng một chatbot với RASA NLU.Chúng tôi sẽ bắt đầu bằng cách tạo ra một chatbot đơn giản có thể trả lời các câu hỏi về thời tiết.Sau đó, chúng tôi sẽ thêm các tính năng phức tạp hơn vào chatbot, chẳng hạn như khả năng tạo các câu trả lời khác nhau cho cùng một câu hỏi và khả năng xử lý các lỗi.

### Điều kiện tiên quyết

Để làm theo với hướng dẫn này, bạn sẽ cần những điều sau đây:

* Một máy tính với Python 3 được cài đặt
* Thư viện Rasa NLU
* Thư viện lõi RASA
* Trình chỉnh sửa văn bản hoặc IDE

### Tạo một chatbot đơn giản

Để tạo một chatbot đơn giản với RASA NLU, trước tiên chúng ta sẽ cần tạo một dự án mới.Chúng ta có thể làm điều này bằng cách chạy lệnh sau:

`` `
Rasa init
`` `

Điều này sẽ tạo ra một thư mục mới gọi là `myproject`.Bên trong thư mục này, bạn sẽ tìm thấy một số tệp và thư mục.Các tệp quan trọng nhất là tệp `domain.yml` và tệp` Stories.yml`.

Tệp `domain.yml` xác định các ý định mà chatbot của bạn sẽ có thể hiểu.Một ý định là một loại yêu cầu người dùng.Ví dụ, ý định 'thời tiết' đại diện cho một yêu cầu thông tin về thời tiết.

Tệp `Stories.yml` xác định các cuộc hội thoại mà chatbot của bạn sẽ có thể có.Một câu chuyện là một chuỗi các yêu cầu của người dùng và phản hồi chatbot.Ví dụ, câu chuyện sau đây cho thấy người dùng yêu cầu thời tiết ở San Francisco:

`` `
- ý định: thời tiết
Các thực thể:
Thành phố: San Francisco
- Phản hồi: Thời tiết ở San Francisco hiện là 65 độ Fahrenheit với bầu trời đầy nắng.
`` `

Khi bạn đã tạo các tệp tên miền và câu chuyện của mình, bạn có thể đào tạo chatbot của mình bằng cách chạy lệnh sau:

`` `
Tàu Rasa
`` `

Điều này sẽ đào tạo chatbot của bạn trên dữ liệu của bạn và tạo một tệp mô hình.Sau đó, bạn có thể bắt đầu chatbot của mình bằng cách chạy lệnh sau:

`` `
Rasa chạy
`` `

Điều này sẽ khởi động một máy chủ trên cổng 5005. Bây giờ bạn có thể mở trình duyệt và truy cập `localhost: 5005` để trò chuyện với chatbot của bạn.

### Thêm các tính năng phức tạp hơn

Chatbot mà chúng tôi đã tạo trong phần trước rất đơn giản.Nó chỉ có thể hiểu một vài ý định cơ bản và nó chỉ có thể tạo ra một phản hồi duy nhất cho mỗi yêu cầu.Trong phần này, chúng tôi sẽ chỉ cho bạn cách thêm các tính năng phức tạp hơn vào chatbot của bạn.

#### Xử lý nhiều ý định

Theo mặc định, RASA NLU sẽ chỉ khớp với ý định đầu tiên trong yêu cầu người dùng.Tuy nhiên, bạn có thể sử dụng toán tử `hoặc` để phù hợp với nhiều ý định.Ví dụ: định nghĩa ý định sau sẽ phù hợp với ý định 'thời tiết' hoặc ý định `thời gian`:

`` `
Ý định: thời tiết hoặc thời gian
`` `

#### tạo ra các phản hồi khác nhau

Theo mặc định, RASA NLU sẽ tạo một phản hồi duy nhất cho mỗi yêu cầu.Tuy nhiên, bạn có thể sử dụng tham số `Generate_multiple_responses` để tạo nhiều phản hồi.Ví dụ, định nghĩa câu chuyện sau đây sẽ tạo ra hai câu trả lời cho ý định 'thời tiết`:

`` `
- ý định: thời tiết
Generate_Multiple_Responses: Đúng
- Phản hồi: Thời tiết ở San Francisco hiện là 65 độ Fahrenheit với bầu trời đầy nắng.
- Phản hồi: Thời tiết ở thành phố New York hiện là 45 độ Fahrenheit với bầu trời nhiều mây.
`` `

#### Lỗi xử lý

RASA NLU cũng có thể xử lý các lỗi.Ví dụ: nếu người dùng đưa ra yêu cầu mà chatbot của bạn không hiểu, RASA NLU sẽ tạo phản hồi lỗi.Bạn có thể tùy chỉnh phản hồi lỗi bằng cách đặt tham số `error_message` trong tệp` domain.yml`.

### Phần kết luận

Trong bài viết này, chúng tôi đã chỉ cho bạn cách xây dựng một chatbot với Rasa NLU.Chúng tôi bắt đầu bằng cách tạo ra một chatbot đơn giản có thể trả lời các câu hỏi về thời tiết.Sau đó, chúng tôi đã thêm các tính năng phức tạp hơn vào chatbot, chẳng hạn như khả năng xử lý nhiều ý định và

[ENGLISH]:
## Building Chatbots with Rasa NLU

Chatbots are becoming increasingly popular as a way to provide customer service, answer questions, and complete tasks. Rasa NLU is a natural language understanding (NLU) framework that can be used to build chatbots that are able to understand and respond to human language.

In this article, we will show you how to build a chatbot with Rasa NLU. We will start by creating a simple chatbot that can answer questions about the weather. Then, we will add more complex features to the chatbot, such as the ability to generate different responses to the same question and the ability to handle errors.

### Prerequisites

To follow along with this tutorial, you will need the following:

* A computer with Python 3 installed
* The Rasa NLU library
* The Rasa Core library
* A text editor or IDE

### Creating a Simple Chatbot

To create a simple chatbot with Rasa NLU, we will first need to create a new project. We can do this by running the following command:

```
rasa init
```

This will create a new directory called `myproject`. Inside this directory, you will find a number of files and folders. The most important files are the `domain.yml` file and the `stories.yml` file.

The `domain.yml` file defines the intents that your chatbot will be able to understand. An intent is a type of user request. For example, the `weather` intent represents a request for information about the weather.

The `stories.yml` file defines the conversations that your chatbot will be able to have. A story is a sequence of user requests and chatbot responses. For example, the following story shows a user asking for the weather in San Francisco:

```
- intent: weather
entities:
city: San Francisco
- response: The weather in San Francisco is currently 65 degrees Fahrenheit with sunny skies.
```

Once you have created your domain and stories files, you can train your chatbot by running the following command:

```
rasa train
```

This will train your chatbot on your data and generate a model file. You can then start your chatbot by running the following command:

```
rasa run
```

This will start a server on port 5005. You can now open a browser and go to `localhost:5005` to chat with your chatbot.

### Adding More Complex Features

The chatbot that we created in the previous section is very simple. It can only understand a few basic intents and it can only generate a single response to each request. In this section, we will show you how to add more complex features to your chatbot.

#### Handling Multiple Intents

By default, Rasa NLU will only match the first intent in a user request. However, you can use the `OR` operator to match multiple intents. For example, the following intent definition will match either the `weather` intent or the `time` intent:

```
intent: weather OR time
```

#### Generating Different Responses

By default, Rasa NLU will generate a single response to each request. However, you can use the `generate_multiple_responses` parameter to generate multiple responses. For example, the following story definition will generate two responses to the `weather` intent:

```
- intent: weather
generate_multiple_responses: true
- response: The weather in San Francisco is currently 65 degrees Fahrenheit with sunny skies.
- response: The weather in New York City is currently 45 degrees Fahrenheit with cloudy skies.
```

#### Handling Errors

Rasa NLU can also handle errors. For example, if a user makes a request that your chatbot does not understand, Rasa NLU will generate an error response. You can customize the error response by setting the `error_message` parameter in the `domain.yml` file.

### Conclusion

In this article, we showed you how to build a chatbot with Rasa NLU. We started by creating a simple chatbot that could answer questions about the weather. Then, we added more complex features to the chatbot, such as the ability to handle multiple intents and
 
Join Telegram ToolsKiemTrieuDoGroup
Back
Top