Công cụ Update state trong ElevenAgents

Cho phép agent của bạn cập nhật các biến động trong suốt cuộc hội thoại thông qua việc sử dụng những biểu thức.

Tổng quan

Công cụ Update state cho phép agent của bạn thiết lập một hoặc nhiều biến động trong khi cuộc hội thoại đang diễn ra. Giống như các công cụ hệ thống khác, nó chỉ thay đổi trạng thái nội bộ của cuộc hội thoại - hoàn toàn không gọi đến API bên ngoài hay hàm phía client.

Bạn có thể sử dụng công cụ này để ghi lại thông tin trong suốt quá trình hội thoại; chẳng hạn như đánh dấu rằng cuộc hội thoại cần được chuyển giao, lưu trữ giá trị do người dùng cung cấp, hoặc tính toán một giá trị dựa trên các biến động khác.

Để áp dụng các cập nhật trạng thái tại một điểm cố định trong workflow thay vì mỗi khi mô hình ngôn ngữ lớn (LLM) gọi một công cụ, bạn có thể sử dụng node update state. Node này hỗ trợ các kiểu cập nhật trạng thái tương tự.

Chức năng

  • Nhiều cập nhật trong một lần gọi: Một lần gọi công cụ có thể gán giá trị cho tối đa 50 biến động cùng lúc.
  • Giá trị dựa trên biểu thức: Mỗi giá trị là kết quả của một biểu thức, trong đó có thể kết hợp các hằng số, các biến động hiện có, các giá trị mà LLM trích xuất từ ​​cuộc hội thoại, cùng với các toán tử.
  • Chỉ trích xuất qua LLM khi cần thiết: Công cụ này chỉ yêu cầu LLM trích xuất tham số cho những cập nhật thực sự cần đến thông tin đó. Các cập nhật được xây dựng hoàn toàn từ hằng số và/hoặc những biến động sẵn có sẽ không thêm bất kỳ tham số nào vào lệnh gọi hàm.
  • Có hiệu lực ngay lập tức: Sau khi công cụ thực thi, các biến động đã cập nhật sẽ khả dụng cho phần còn lại của cuộc hội thoại - những prompt tiếp theo, các lệnh gọi công cụ khác, hoặc những lần ghi đè đều có thể tham chiếu đến chúng, giống như bất kỳ biến động nào khác.

Cách thức hoạt động

Mỗi cập nhật trạng thái sẽ gán kết quả của một biểu thức cho một biến động:

tên_biến = biểu thức

Một biểu thức có thể thuộc một trong các loại dưới đây; những biểu thức cũng có thể lồng vào nhau để xây dựng nên logic phức tạp hơn:

Loại Mô tả
Hằng số Một giá trị chuỗi, số, boolean hoặc null cố định.
Biến động Giá trị hiện tại của một biến động khác.
Giá trị được trích xuất bởi LLM Một giá trị mà mô hình ngôn ngữ lớn (LLM) suy ra từ cuộc hội thoại, khớp với kiểu dữ liệu do bạn xác định (chuỗi, số hoặc giá trị logic).
Toán tử logic and, or, hoặc một biểu thức có điều kiện (if / then / else) kết hợp các biểu thức khác.
Toán tử so sánh =, ≠, >, <, ≥, ≤, so sánh hai biểu thức.
Toán tử số học +, -, ×, ÷, kết hợp hai biểu thức dạng số (hoặc, đối với toán tử +, là dạng chuỗi).

Ví dụ, cập nhật trạng thái sau đây sẽ đặt should_escalate thành true nếu LLM đánh giá rằng người dùng đang cảm thấy thất vọng, hoặc nếu biến động retry_count đã lớn hơn 3:

should_escalate = (llm: "User sounds frustrated with the conversation") OR (retry_count > 3)

Nếu một cập nhật trạng thái không thể thực hiện - chẳng hạn như phép chia cho số không - lệnh gọi công cụ (tool call) sẽ trả về lỗi và không có cập nhật nào trong lệnh gọi đó được áp dụng.

Cấu hình

Bước 1: Thêm công cụ

Truy cập trang cấu hình agent của bạn. Trong phần Tools, nhấp vào Add tool và chọn Update state.

Bước 2: Xác định các cập nhật trạng thái

Đối với mỗi cập nhật trạng thái, hãy cung cấp:

  • Variable name (Tên biến): Biến động cần gán giá trị.
  • Expression (Biểu thức): Giá trị cần gán, được xây dựng từ các loại giá trị và toán tử đã mô tả ở trên. Các giá trị có thể được lồng vào nhau để tạo thành các biểu thức phức tạp hơn.
  • Required (Yêu cầu bắt buộc): Nếu tùy chọn này bị tắt, LLM có thể bỏ qua các giá trị mà cập nhật này phụ thuộc vào. Khi đó, cập nhật sẽ bị bỏ qua và biến sẽ giữ nguyên giá trị hiện tại.

Bạn có thể xác định tối đa 50 cập nhật trạng thái cho một công cụ.

Bước 3: Cấu hình mô tả (tùy chọn)

Bạn có thể cung cấp mô tả tùy chỉnh để hướng dẫn LLM về thời điểm nên gọi công cụ này. Nếu để trống, hệ thống sẽ sử dụng mô tả mặc định được tối ưu hóa cho công cụ này.

Các trường hợp sử dụng

  • Dấu hiệu cần chuyển giao: Thiết lập một biến động (ví dụ: should_escalate) để hệ thống hạ nguồn hoặc quy tắc nghiệp vụ kiểm tra, như được trình bày trong hướng dẫn tích hợp Genesys.
  • Lưu trữ thông tin trích xuất: Lưu lại giá trị do người dùng cung cấp (như mã đơn hàng, tùy chọn cá nhân, hoặc bộ phận được chọn) dưới dạng biến động để sử dụng sau này trong cuộc trò chuyện.
  • Giá trị dẫn xuất: Tính toán một giá trị dựa trên các biến động khác, chẳng hạn như tăng giá trị của một bộ đếm hoặc kết hợp hai biến thành một.

Mục đích: Cho phép agent cập nhật một hoặc nhiều biến động dựa trên nội dung cuộc trò chuyện mà không cần gọi đến API bên ngoài. Các điều kiện kích hoạt: LLM nên gọi công cụ này khi:

  • Cuộc hội thoại cung cấp thông tin cần được ghi lại (ví dụ: báo cáo vấn đề lên cấp trên, tùy chọn đã chọn, hoặc giá trị do người dùng cung cấp).
  • Một cập nhật trạng thái đã được cấu hình phụ thuộc vào một giá trị mà LLM cần đánh giá hoặc trích xuất từ ​​cuộc hội thoại.

Các tham số:

Các tham số của hàm phụ thuộc vào cách cấu hình công cụ. Mỗi cập nhật trạng thái sử dụng giá trị do LLM trích xuất sẽ thêm một thuộc tính vào schema; thuộc tính này được đặt tên theo biến động (dynamic variable) của cập nhật đó và có kiểu dữ liệu là chuỗi (string), số (number) hoặc giá trị logic (boolean). Các cập nhật trạng thái chỉ được xây dựng từ những hằng số hoặc các biến động khác sẽ không thêm bất kỳ tham số nào.

Định dạng gọi hàm:

{
  "type": "function",
  "function": {
    "name": "update_state",
    "arguments": "{\"should_escalate\": true}"
  }
}

Cách thức hoạt động: Agent đánh giá từng biểu thức đã được cấu hình bằng cách sử dụng các tham số được trích xuất cùng với những biến động hiện tại của cuộc hội thoại, sau đó gán kết quả vào các biến động tương ứng. Không có yêu cầu (request) nào được gửi ra bên ngoài.

Câu hỏi thường gặp

Công cụ này có thực hiện bất kỳ lệnh gọi nào ra bên ngoài không?

Không. Giống như tất cả các công cụ hệ thống khác, công cụ Update state chỉ thay đổi trạng thái nội bộ của cuộc hội thoại. Nó không gọi bất kỳ API bên ngoài hay hàm nào phía client.

Việc gọi công cụ này có luôn đòi hỏi mô hình ngôn ngữ lớn (LLM) phải trích xuất tham số không?

Không. Công cụ này chỉ yêu cầu LLM trích xuất tham số khi biểu thức cập nhật trạng thái có chứa giá trị cần được LLM trích xuất. Nếu mọi cập nhật được cấu hình đều xây dựng từ các hằng số và/hoặc những biến động hiện có, thì lệnh gọi hàm sẽ không cần tham số nào cả.

Có thể sử dụng các biến động do công cụ này thiết lập ở đâu?

Bạn có thể sử dụng chúng ở bất kỳ nơi nào cho phép dùng biến động: Trong các chỉ dẫn hệ thống (system prompt), tin nhắn mở đầu, tham số và tiêu đề của công cụ, cũng như các phần ghi đè.

Có thể cấu hình công cụ này thông qua API không?

Hiện tại, tính năng Update state chỉ có thể được cấu hình thông qua agent dashboard. Hỗ trợ qua API và SDK hiện chưa khả dụng.

Thứ Tư, 21/10/2026 09:54
5 ★ 1 👨 8
Xác thực tài khoản!

Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:

Số điện thoại chưa đúng định dạng!
Số điện thoại này đã được xác thực!
Bạn có thể dùng Sđt này đăng nhập tại đây!
Lỗi gửi SMS, liên hệ Admin
0 Bình luận
Sắp xếp theo
❖ Eleven Agents