Chatbot

5 mẹo giúp người mới tạo agent trong Dialogflow hoàn hảo hơn

Dialogflow có thể giúp bạn tạo ra chatbot đơn giản nhưng để nó hoạt động hiệu quả lại là một chuyện khác. Bài viết này sẽ chia sẻ 5 mẹo hữu ích giúp người mới làm quen Dialogflow có thể tham khảo để nâng cao chất lượng và tính chuyên nghiệp cho chatbot của mình.

1. Hãy tạo ra một agent đơn giản và đi thẳng vào vấn đề 

Một agent thông minh là một agent được huấn luyện để xử lý các dữ liệu đầu vào rõ ràng, chính xác và nhanh chóng nhất. 

Hãy hình dung bạn là giám đốc còn nó là cô thư ký mới nhận việc của bạn vậy. Dù cô ta có xinh đẹp đến đâu thì chắc chắn cũng sẽ không thể làm hài lòng bạn nếu cô ta không giúp bạn tiết kiệm thời gian mà còn khiến mọi thứ trở nên phiền phức hơn.
 
Lấy một ví dụ về đoạn hội thoại như sau:
Người dùng: "Tìm cho tôi một nhà hàng Hàn Quốc ngon gần đây."
Agent: "Okie, bạn đang ở đâu?"
Người dùng: "Tôi ở khu vực Quận Thủ Đức."

Agent Don Gian

Bạn có nhận ra điều gì không ổn trong cách agent trả lời và cố gắng “moi” thêm thông tin từ người dùng không? Đó là người dùng có thể trả lời chung chung, hoặc điền những thông tin không chính xác, gây nhiễu cuộc hội thoại. 

Cũng là đoạn hội thoại trên nhưng mọi thứ sẽ “mượt như tơ” nếu agent đổi câu hỏi như sau: 
Người dùng: "Tìm cho tôi một nhà hàng Hàn Quốc ngon gần đây."
Agent: "Okie, bạn có thể cho tôi địa chỉ của bạn được không? "
Hoặc kỹ hơn, agent có thể hỏi: “Okie, bạn đang ở đường nào, quận nào?”

Bạn thấy đấy, như vậy thì ta sẽ có thể tránh được trường hợp người dùng hiểu nhầm ý của agent, hoặc agent phải hỏi thêm nhiều câu nữa, gây mất thời gian của người dùng.

2. Đặt tên tham số rõ ràng, chính xác

Tham số (Parameters) là một yếu tố rất quan trọng khi huấn luyện agent trong Dialogflow. Nhưng nhiều bạn chưa thực sự làm chủ được cách sử dụng tham số, và ngay từ bước đặt tên đã gặp sai sót nghiêm trọng.

Đặt tên của tham số cũng tương tự đặt tên biến trong code, nếu dài quá thì sau này sẽ khó quản lý mà ngắn quá thì cũng khó hiểu.

Ví dụ: Nếu muốn agent thu thập thông tin người dùng → bạn có thể đặt tên hành động là getUserDetails. Nhưng sau đó, bạn không cần lặp lại từ “user” trong mỗi tham số nữa, như “userName” hay “userMail”, bởi vì bản thân hành động đã xác định rõ ngữ cảnh là cần thu thập thông tin người dùng. 

Một lỗi sai nữa là người dùng thường đặt tên tham số chung chung, dẫn đến việc trùng lặp và gây ra lỗi.

Dat Tham so Trong Dialogflow

Ví dụ: Bạn cần thu thập hai thông tin từ người dùng: Vị trí hiện tại và vị trí đích đến.

Nếu chẳng may bạn đặt cả hai tham số là “location” thì hệ thống sẽ không phân biệt và ghi đè dữ liệu, khiến thông tin đầu vào bị mất hoặc không đầy đủ. Do đó, giải pháp là cần phải đặt 2 tên tên riêng biệt và rõ ràng là “currentLocation” (cho vị trí hiện tại) và “destLocation” (cho đích đến).

Do đó, bạn cần đặt tên tham số chính xác để hạn chế gây lỗi. Quá trình này đòi hỏi bạn cần thực hành nhiều lần để rút ra kinh nghiệm cho bản thân.

3. Thận trọng với sys.any

Dialogflow có các thực thể hệ thống (system entities) sẵn có giúp bot nhận diện và xử lý các kiểu dữ liệu phổ biến như ngày, tháng, số, email, địa chỉ… 

Trong đó, sys.any là một thực thể có khả năng trích xuất "bất kỳ nội dung nào" từ người dùng mà không phân biệt kiểu dữ liệu hay nội dung. Chính vì nó khá dễ dùng và linh hoạt nên nhiều người mới “nhập môn” Dialogflow thường hay lạm dụng sys.any, dễ dẫn đến kết quả không như ý.

Ví dụ, bạn tạo chatbot cho 1 cửa hàng bán hoa online, người dùng có thể đặt hoa và cần nhập tên loại hoa họ muốn.

Nếu bạn sử dụng sys.any để nhận loại hoa từ người dùng thì tình huống sau có thể xảy ra; 
Người dùng: "Tôi muốn đặt một bó hồng" 
Người dùng: "Tôi chưa quyết định, chỉ đang xem thôi." 

→ Với câu đầu tiên, bot sẽ hiểu người dùng muốn đặt "hoa hồng". Nhưng đến câu thứ hai thì nó có thể nhầm đây là loại hoa vì sys.any không phân biệt nội dung, dẫn đến sai ý định.

Sys Any

Vì sys.any có thể nhận bất kỳ nội dung nào nên một câu trả lời không liên quan từ người dùng cũng có thể được hiểu nhầm, khiến chatbot hoạt động không chính xác.

Do đó, bạn nên thận trọng khi dùng sys.any, chỉ nên dùng khi không thể dự đoán trước nội dung mà người dùng nhập vào. 

Ví dụ: Khi chatbot yêu cầu người dùng nhập một ghi chú, đánh giá tự do như:  

  1. Agent: "Hãy cho tôi biết ý kiến của bạn về dịch vụ của chúng tôi."
  2. Người dùng: "Dịch vụ rất tốt, nhưng giao hàng hơi chậm."
    → sys.any sẽ ghi nhận toàn bộ câu trả lời mà không cần định dạng cụ thể.

4. Xác định đúng lifespan

Lifespan (Thời gian tồn tại) là số lần trao đổi mà agent của bạn cần ghi nhớ một ngữ cảnh.

Ta cùng phân tích đoạn hội thoại sau:

(1)    Người dùng: "Tôi muốn gửi một email."
(2)    Agent: "Ok, bạn muốn gửi email cho ai?" → Intent 1: Hỏi thông tin người nhận
(3)    Người dùng: "Gửi đến a@example.com." 
(4)    Agent: "Email này đúng không: a@example.com?" → Intent 2: Xác nhận thông tin)
(5)    Người dùng: "Đúng vậy, email chính xác."
(6)    Đại lý: "Okay, tôi sẽ gửi email này cho bạn!" → Intent 3: Gửi email

Xac Dinh Lifespan

Trong ví dụ trên, tham số mailID xuất hiện trong lần trao đổi thứ (3) và (4), tức là nó cần tồn tại ít nhất 2 lần trao đổi. 

Nếu bạn đặt lifespan quá ngắn (ví dụ: 1 lần) → tham số mailID sẽ bị xóa trước khi bước (4) diễn ra → Agent không thể xác nhận địa chỉ email và dẫn đến lỗi xử lý.
Nếu lifespan quá dài (ví dụ: 10 lần) → tham số mailID có thể bị đè nếu có người dùng nhập thêm nhiều thông tin khác.

Vẫn có trường hợp là người dùng sẽ không trả lời ngay trong 1 dòng mà có thói quen nhắn tin ngắt quãng, ví dụ như:

(1)    Người dùng: "Tôi muốn gửi một email."
(2)    Agent: "Ok, bạn muốn gửi email cho ai?"
(3)    Người dùng: "Gửi giúp tôi”
(4)    Người dùng: "Đến địa chỉ”
(5)    Người dùng: " a@example.com.” 
(6)    Người dùng: "Được không?”

Do đó, để đảm bảo nhận đủ các tham số cần thiết, bạn có thể đặt thời gian tồn tại là 4-5.

Việc quản lý lifespan hợp lý giúp hội thoại với agent trở nên mượt mà, hiệu quả và thân thiện hơn đối với người dùng. Do đó, bạn nên nhớ đặt lifespan chính xác để giảm bộ nhớ tạm và đảm bảo agent xử lý đúng các intent. 

5. Đừng bỏ qua Intent trợ giúp 

Intent trợ giúp (Help Intent) là một tính năng cần thiết để hỗ trợ người dùng hiểu cách giao tiếp với chatbot của bạn. Đây cũng là một câu hỏi mà người dùng thường bắt đầu khi sử dụng chatbot.

Ví dụ, người dùng có thể hỏi những câu sau:
(1)    "Bot này có thể làm gì?"
(2)    "Tôi không biết hỏi gì. Bạn có thể giúp gì cho tôi không?"
(3)    "Làm thế nào để sử dụng bot này?"

5 Meo Trong Dialogflow 5

Do đó, bạn có thể cài đặt intent trợ giúp để agent trả lời như sau:
(1) "Xin chào! Tôi có thể giúp bạn đặt vé xem phim, kiểm tra lịch chiếu, hoặc giới thiệu phim hay. Bạn chỉ cần nói ví dụ như: 'Đặt vé phim Avatar', hoặc 'Lịch chiếu phim hôm nay'."
(2) "Chào bạn! Tôi hỗ trợ các dịch vụ như tra cứu số dư, chuyển khoản, và xem chi tiết tài khoản. Ví dụ, bạn có thể hỏi: 'Chuyển tiền đến tài khoản 987654', hoặc 'Giao dịch gần nhất của tôi là gì?'."
(3) "Xin chào! Tôi ở đây để hỗ trợ bạn đặt đồ ăn. Hãy thử nói: 'Đặt burger và khoai tây chiên', hoặc 'Món nào ngon nhất hôm nay?'."

Do đó, đừng quên tích hợp intent trợ giúp vào chatbot của bạn. Đây là cách hiệu quả nhất để tạo ấn tượng tốt với người dùng ngay từ lần đầu tiên đấy nhé!

Dung Thu Ngay

0/5 - (0 bình chọn)
son phuoc
Tác Giả
Bình luận (0)
Hơn 500K+ người dùng đã đăng ký nhận thông báo cập nhật bài viết mỗi ngày.
Để lại email để nhận thông báo về công cụ tiếp thị, xu hướng công nghệ mới nhất!
Khám phá
Bài viết cùng danh mục
so sanh asana va slack cong cu nao vuot troi hon trong nam 2025So sánh Asana và Slack: Công cụ nào vượt trội hơn trong năm 2025

Trong thời đại công nghệ phát triển như vũ bão, nơi mọi người làm việc từ xa, họp trực tuyến và quản lý dự án qua các nền tảng số, việc chọn đúng công cụ làm việc nhóm là yếu tố tiên quyết để đảm bảo hiệu suất. Với hàng loạt phần mềm hỗ trợ công việc trên thị trường, Asana và Slack luôn là hai cái tên “cộm cán” trong lĩnh vực quản lý công việc và giao tiếp nhóm. Câu hỏi đặt ra là: Asana hay Slack, nền tảng nào thực sự vượt trội hơn ở thời điểm hiện tại? Hãy cùng BENOCODE tìm hiểu đâu là lựa chọn tốt hơn cho nhu cầu của bạn trong bài viết này nhé!

trello hay asana se giup day nhanh tien do du anTrello hay Asana sẽ giúp đẩy nhanh tiến độ dự án?

Kể từ khi cuộc cách mạng công nghiệp 4.0 bùng nổ, các tập đoàn công nghệ đã nhanh chóng nắm bắt cơ hội và cho ra đời những sản phẩm thông minh như phần mềm quản lý công việc. Những công cụ này giúp doanh nghiệp tiết kiệm chi phí, tối ưu thời gian và nâng cao hiệu suất làm việc. Việc điều hành và quản lý cũng trở nên linh hoạt hơn khi bạn có thể giám sát mọi thứ từ xa, mọi lúc, mọi nơi. Trong bài viết này, chúng ta sẽ so sánh hai phần mềm quản lý công việc phổ biến hiện nay là Trello và Asana.