Chuyển tới nội dung chính

Tiêu chuẩn UX

Tổng quan

Xây dựng AI App tốt là tạo trải nghiệm tập trung, hội thoại, và tự nhiên trong ngữ cảnh Chat của Nền tảng. Mục tiêu là thiết kế trải nghiệm nhất quán, hữu ích, mở rộng khả năng của cuộc hội thoại theo cách mang lại giá trị thực.

Ví dụ tốt: Đặt xe, order đồ ăn, kiểm tra lịch trống, theo dõi vận đơn — các tác vụ mang tính hội thoại, có thời hạn, dễ tóm lược bằng UI đơn giản.

Ví dụ xấu: Copy toàn bộ website vào widget, tạo workflow nhiều bước phức tạp, dùng widget cho quảng cáo hoặc nội dung không liên quan.

5 Nguyên tắc UX

App phải làm ít nhất một việc tốt hơn nhờ sống trong môi trường Chat:

  • Composability — Actions là building blocks nhỏ, tái sử dụng được. Model có thể kết hợp với apps khác.
  • Native fit — App cảm giác như một phần tự nhiên của Chat, không phải webapp nhét vào.
  • Conversational leverage — Ngôn ngữ tự nhiên + context hội thoại mở khóa workflow mà UI truyền thống không làm được.

Nếu không thể mô tả lợi ích rõ ràng khi chạy trong Chat, hãy tiếp tục cải tiến trước khi publish.

1. Extract, don't port

Trích xuất, không sao chép. Thay vì nhân bản website hay native app, hãy tìm ra vài atomic actions cốt lõi và chuyển thành tools.

  • book_room, check_availability — mỗi tool làm đúng 1 việc
  • manage_calendar — tool quá rộng, model khó chọn đúng lúc

2. Design for conversational entry

Thiết kế cho lối vào hội thoại. Người dùng đến với nhiều mức intent:

LoạiVí dụ
First-run onboardingUser mới, chưa biết app làm gì
Direct command"Đặt phòng họp 3h chiều thứ 5"
Open-ended prompt"Giúp tôi lên kế hoạch team outing"

App cần hỗ trợ cả 3 trường hợp.

3. Design for Chat environment

Thiết kế cho môi trường Chat. Nền tảng cung cấp bề mặt hội thoại. Dùng UI một cách chọn lọc:

  • ✅ UI để xác nhận hành động, thu thập input, hoặc hiển thị kết quả structured
  • ❌ UI trang trí không phục vụ tác vụ hiện tại
  • Dựa vào conversation cho lịch sử, xác nhận, và follow-up

4. Optimize for conversation, not navigation

Tối ưu cho hội thoại, không cho điều hướng. Model xử lý state management và routing. App bạn cung cấp:

  • Follow-up suggestions — Gợi ý để model giữ user trong flow
  • Concise responses — Bảng, list, paragraph ngắn thay vì dashboard
  • Declarative actions — Parameters rõ ràng, well-typed

5. Embrace the ecosystem

Tận dụng hệ sinh thái:

  • Cho phép compose với apps khác khi tiết kiệm thời gian user
  • Cá nhân hóa từ context hội thoại
  • Chấp nhận ngôn ngữ tự nhiên thay vì form fields

Nguyên tắc riêng Nền tảng

Ngoài 5 nguyên tắc chung, Nền tảng yêu cầu tuân thủ thêm:

Destructive Confirmation

Mọi hành động nguy hiểm (xóa, ghi đè, gửi tiền) phải yêu cầu xác nhận rõ ràng từ người dùng trước khi thực thi.

  • Đánh dấu tool với destructiveHint: true
  • Host App sẽ tự động hiển thị confirmation dialog

PII Redaction

KHÔNG truyền dữ liệu nhạy cảm (PII: số điện thoại, CMND, tài khoản ngân hàng) lên LLM Server.

  • Sử dụng _meta (chỉ đến widget, không đến model) cho sensitive data
  • Xử lý PII tại server, chỉ trả về kết quả đã ẩn danh

Single-Focus Tool

Mỗi tool chỉ làm 1 việc duy nhất. Nếu cần cả read và write:

  • ✅ Tách thành get_tasks (readOnly) và create_task (write)
  • ❌ Gộp thành manage_tasks (quá nhiều behavior)

Checklist trước khi publish

Trả lời Có/Không cho các câu hỏi dưới đây. Câu trả lời "Không" = cơ hội cải thiện.

#Câu hỏi
1Platform fit — App tận dụng được khả năng của Chat (rich prompts, context, multi-tool)?
2Discoverability — Dễ hình dung prompts mà model sẽ tự tin chọn app?
3Performance — App phản hồi đủ nhanh để giữ nhịp chat?
4End-to-end — User hoàn thành ít nhất 1 task có ý nghĩa mà không cần rời Chat?
5Helpful UI — Nếu thay widget bằng plain text, trải nghiệm có giảm đáng kể?
6Atomic tools — Tools có indivisible, self-contained, input/output rõ ràng?
7Beyond base — App cung cấp kiến thức/hành động/hiển thị mới mà Chat không có sẵn?
8Conversational value — Ít nhất 1 tính năng dựa vào ngôn ngữ tự nhiên + context?

Anti-patterns (Tránh)

  • Duplicate system functions — Không tái tạo composer, search bar, hay các chức năng có sẵn
  • Expose sensitive info — Không hiển thị PII trực tiếp trong widget nơi người khác có thể thấy
  • Ads & upsells — Không dùng widget cho quảng cáo hoặc upsell
  • Complex multi-step — Không tạo workflow quá phức tạp vượt khả năng inline/fullscreen
  • Static long-form — Không đổ nội dung dài/tĩnh phù hợp với website hơn