Các thông số và điều kiện của Cấu hình từ xa


Bạn có thể định cấu hình mẫu cho cả trường hợp sử dụng máy khách và máy chủ. Mẫu ứng dụng được phân phát cho mọi phiên bản ứng dụng triển khai SDK ứng dụng Firebase cho Remote Config, bao gồm cả ứng dụng Android, Apple, Web, Unity, Flutter và C++. Các tham số và giá trị Remote Config từ các mẫu dành riêng cho máy chủ được phân phát cho các hoạt động triển khai Remote Config (bao gồm cả Cloud Run và Cloud Functions) sử dụng SDK Node.js dành cho quản trị viên Firebase phiên bản 12.1.0 trở lên.

Khi sử dụng bảng điều khiển Firebase hoặc API phần phụ trợ Remote Config, bạn sẽ xác định một hoặc nhiều tham số (cặp khoá-giá trị) và cung cấp giá trị mặc định trong ứng dụng cho các tham số đó. Bạn có thể ghi đè các giá trị mặc định trong ứng dụng bằng cách xác định giá trị tham số. Khoá tham số và giá trị tham số là chuỗi, nhưng giá trị tham số có thể được truyền dưới dạng các loại dữ liệu khác khi bạn sử dụng các giá trị này trong ứng dụng.

Khi sử dụng bảng điều khiển Firebase, Admin SDK hoặc Remote Config REST API, bạn có thể tạo các giá trị mặc định mới cho các thông số, cũng như các giá trị có điều kiện dùng để nhắm đến các nhóm thực thể ứng dụng. Mỗi khi bạn cập nhật cấu hình trong bảng điều khiển Firebase, Firebase sẽ tạo và phát hành phiên bản mới của mẫu Remote Config. Phiên bản trước đó được lưu trữ, cho phép bạn truy xuất hoặc khôi phục nếu cần. Bạn có thể thực hiện các thao tác này trong bảng điều khiển Firebase, Firebase Admin SDK và API REST. Các thao tác này được mô tả chi tiết hơn trong phần Quản lý phiên bản mẫu Remote Config.

Hướng dẫn này giải thích các tham số, điều kiện, quy tắc, giá trị có điều kiện và cách các giá trị tham số được ưu tiên trên phần phụ trợ Remote Config và trong ứng dụng của bạn. Hướng dẫn này cũng cung cấp thông tin chi tiết về các loại quy tắc dùng để tạo điều kiện.

Điều kiện, quy tắc và giá trị có điều kiện

Điều kiện được dùng để nhắm đến một nhóm thực thể ứng dụng. Điều kiện được tạo thành từ một hoặc nhiều quy tắc, tất cả đều phải đánh giá thành true để điều kiện đánh giá thành true cho một thực thể ứng dụng nhất định. Nếu giá trị cho một quy tắc không được xác định (ví dụ: khi không có giá trị nào), thì quy tắc đó sẽ đánh giá thành false.

Ví dụ: bạn có thể tạo một tham số xác định tên mô hình ngôn ngữ lớn (LLM) và chuỗi phiên bản, đồng thời phân phát phản hồi từ nhiều mô hình dựa trên quy tắc tín hiệu tuỳ chỉnh. Trong trường hợp sử dụng này, bạn có thể sử dụng phiên bản mô hình ổn định làm giá trị mặc định để phân phát hầu hết các yêu cầu và sử dụng tín hiệu tuỳ chỉnh để sử dụng mô hình thử nghiệm nhằm phản hồi các yêu cầu của ứng dụng kiểm thử.

Một tham số có thể có nhiều giá trị có điều kiện sử dụng các điều kiện khác nhau và các tham số có thể chia sẻ các điều kiện trong một dự án. Trong thẻ Thông số của bảng điều khiển Firebase, bạn có thể xem tỷ lệ phần trăm tìm nạp cho từng giá trị có điều kiện của thông số. Chỉ số này cho biết tỷ lệ phần trăm yêu cầu trong 24 giờ qua đã nhận được từng giá trị.

Mức độ ưu tiên của giá trị tham số

Khi sử dụng Remote Config trong các ứng dụng máy chủ bằng Firebase Admin SDK, bạn sẽ tìm nạp và tải toàn bộ mẫu để trích xuất các giá trị tham số phù hợp theo yêu cầu cho mỗi yêu cầu của ứng dụng khách. Một thông số có thể có nhiều giá trị có điều kiện được liên kết với thông số đó.

Các quy tắc sau đây xác định giá trị được chỉ định trong quá trình đánh giá mẫu tại một thời điểm cụ thể:

  1. Trước tiên, giá trị có điều kiện được áp dụng cho mọi điều kiện đánh giá thành true cho một yêu cầu cụ thể của ứng dụng. Nếu nhiều điều kiện đánh giá thành true, thì điều kiện đầu tiên (ở trên cùng) hiển thị trong giao diện người dùng bảng điều khiển Firebase sẽ được ưu tiên và các giá trị có điều kiện liên kết với điều kiện đó sẽ được cung cấp khi mẫu được đánh giá. Bạn có thể thay đổi mức độ ưu tiên của các điều kiện bằng cách kéo và thả các điều kiện trong thẻ Điều kiện.

  2. Nếu không có giá trị có điều kiện nào có điều kiện đánh giá thành true, thì giá trị mặc định của Remote Config sẽ được cung cấp trong quá trình đánh giá mẫu. Nếu một tham số không tồn tại trong mẫu hoặc nếu giá trị mặc định được đặt thành Sử dụng giá trị mặc định trong ứng dụng, thì sẽ không có giá trị nào được cung cấp cho tham số đó khi mẫu được đánh giá.

Để biết thêm thông tin về cách tải và đánh giá mẫu Remote Config trong ứng dụng máy chủ, hãy xem phần Sử dụng Remote Config trong môi trường máy chủ.

Loại dữ liệu giá trị tham số

Remote Config cho phép bạn chọn một kiểu dữ liệu cho mỗi tham số và xác thực tất cả giá trị Remote Config theo kiểu đó trước khi cập nhật mẫu. Loại dữ liệu được lưu trữ và trả về trên yêu cầu getRemoteConfig.

Các loại dữ liệu được hỗ trợ là:

  • String
  • Boolean
  • Number
  • JSON

Trong giao diện người dùng bảng điều khiển Firebase, bạn có thể chọn loại dữ liệu trong trình đơn thả xuống bên cạnh khoá thông số. Trong API REST, bạn có thể đặt loại bằng cách sử dụng trường value_type trong đối tượng tham số.

Nhóm thông số

Remote Config cho phép bạn nhóm các tham số lại với nhau để có giao diện người dùng được sắp xếp hợp lý hơn và nâng cao khả năng hữu dụng.

Ví dụ: giả sử bạn cần bật hoặc tắt 3 loại xác thực khác nhau trong khi triển khai một tính năng đăng nhập mới. Với Remote Config, bạn có thể tạo ba tham số để bật các loại bạn muốn, sau đó sắp xếp các tham số đó trong một nhóm có tên là "Đăng nhập mới" mà không cần thêm tiền tố hoặc sắp xếp đặc biệt.

Bạn có thể tạo nhóm thông số bằng bảng điều khiển Firebase hoặc API REST Remote Config. Mỗi nhóm tham số bạn tạo sẽ có một tên riêng trong mẫu Remote Config. Khi tạo nhóm tham số, hãy lưu ý:

  • Tại mỗi thời điểm, bạn chỉ có thể đưa các tham số vào một nhóm và khoá tham số vẫn phải là duy nhất trên tất cả các tham số.
  • Tên nhóm tham số chỉ được có tối đa 256 ký tự.
  • Nếu bạn sử dụng cả API REST và bảng điều khiển Firebase, hãy đảm bảo rằng mọi logic API REST đều được cập nhật để xử lý các nhóm tham số khi phát hành.

Tạo hoặc sửa đổi nhóm tham số bằng bảng điều khiển Firebase

Bạn có thể nhóm các tham số trong thẻ Parameters (Tham số) của bảng điều khiển Firebase. Cách tạo hoặc sửa đổi nhóm:

  1. Chọn Quản lý nhóm.
  2. Đánh dấu vào hộp đánh dấu cho các tham số bạn muốn thêm rồi chọn Chuyển sang nhóm.
  3. Chọn một nhóm hiện có hoặc tạo một nhóm mới bằng cách nhập tên và nội dung mô tả, rồi chọn Tạo nhóm mới. Sau khi bạn lưu một nhóm, bạn có thể xuất bản nhóm đó bằng nút Xuất bản thay đổi.

Loại quy tắc điều kiện

Mẫu Remote Config cho ứng dụng máy chủ hỗ trợ các loại điều kiện sau:

Người dùng theo tỷ lệ phần trăm ngẫu nhiên

Sử dụng trường này để áp dụng thay đổi cho một mẫu ngẫu nhiên của các phiên bản ứng dụng (với kích thước mẫu nhỏ nhất là 0,0001%), sử dụng tiện ích thanh trượt để phân đoạn người dùng (phiên bản ứng dụng) được xáo trộn ngẫu nhiên thành các nhóm.

Mỗi thực thể ứng dụng được liên kết liên tục với một số nguyên hoặc số thập phân ngẫu nhiên, theo một mã khởi tạo được xác định trong dự án đó.

Một quy tắc sẽ sử dụng khoá mặc định (hiển thị dưới dạng Chỉnh sửa giá trị ban đầu trong bảng điều khiển Firebase) trừ phi bạn sửa đổi giá trị ban đầu. Bạn có thể trả về một quy tắc để sử dụng khoá mặc định bằng cách xoá trường Seed (Giá trị khởi tạo).

Để liên tục giải quyết cùng một phiên bản ứng dụng trong các phạm vi tỷ lệ phần trăm nhất định, hãy sử dụng cùng một giá trị hạt trên các điều kiện. Hoặc chọn một nhóm thực thể ứng dụng mới được chỉ định ngẫu nhiên cho một phạm vi tỷ lệ phần trăm nhất định bằng cách chỉ định một giá trị hạt mới.

Ví dụ: để tạo hai điều kiện liên quan, mỗi điều kiện áp dụng cho 5% người dùng không trùng lặp của một ứng dụng, bạn có thể định cấu hình một điều kiện để khớp với tỷ lệ phần trăm từ 0% đến 5% và định cấu hình một điều kiện khác để khớp với phạm vi từ 5% đến 10%. Để cho phép một số người dùng xuất hiện ngẫu nhiên trong cả hai nhóm, hãy sử dụng các giá trị hạt khác nhau cho các quy tắc trong mỗi điều kiện.

Để tìm hiểu cách thêm các điều kiện tỷ lệ phần trăm ngẫu nhiên vào ứng dụng, hãy xem phần Định cấu hình ứng dụng máy chủ.

Tín hiệu tuỳ chỉnh

Với SDK Node.js dành cho quản trị viên Firebase phiên bản 12.5.0 trở lên, bạn có thể sử dụng loại điều kiện Tín hiệu tuỳ chỉnh để so khớp các điều kiện tuỳ ý mà bạn xác định trong ứng dụng. Điều này cho phép bạn điều chỉnh phản hồi của máy chủ cho từng yêu cầu của ứng dụng khách.

Ví dụ: nếu đang làm việc trên một ứng dụng máy chủ sử dụng AI tạo sinh để giúp tạo phản hồi bằng nhiều mô hình được điều chỉnh cho các nền tảng cụ thể, bạn có thể làm như sau:

  1. Thêm các tham số promptmodel_name vào mẫu máy chủ Remote Config.
  2. Thêm tín hiệu tuỳ chỉnh có giá trị là platform cho từng nền tảng mà bạn muốn nhắm đến.
  3. Thêm giá trị mặc định vào mẫu Remote Config dành riêng cho máy chủ và giá trị có điều kiện cho từng điều kiện nền tảng mà bạn đã xác định.
  4. Cập nhật mã ứng dụng để đặt và sử dụng tín hiệu tuỳ chỉnh platform.

Giờ đây, ứng dụng của bạn có thể trích xuất câu lệnh và mô hình thích hợp trong quá trình đánh giá mẫu và sử dụng các câu lệnh và mô hình đó để trả về phản hồi tuỳ chỉnh cho từng ứng dụng khách.

Bạn có thể sử dụng các loại quy tắc sau để tạo tín hiệu tuỳ chỉnh trong bảng điều khiển Firebase.

Danh mục nhà mạng Toán tử Giá trị Lưu ý
Văn bản khớp chính xác, chứa, không chứa, chứa biểu thức chính quy

Việc so sánh chuỗi cho quy tắc này có phân biệt chữ hoa chữ thường. Khi sử dụng toán tử khớp chính xác, chứa, không chứa hoặc chứa biểu thức chính quy, bạn có thể chọn nhiều giá trị.

Khi sử dụng toán tử contains regex (chứa biểu thức chính quy), bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng neo ^$ để khớp với phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu.

Số <, <=, =, !=, >, >= Số có không quá 10 chữ số ở mỗi bên dấu thập phân.
Phiên bản <, <=, =, !=, >, >= Số đại diện cho(các) số phiên bản cần so khớp (ví dụ: 2.1.0).

Để tìm hiểu cách thêm tín hiệu tuỳ chỉnh vào ứng dụng, hãy xem phần Định cấu hình ứng dụng máy chủ.

Thông số và điều kiện tìm kiếm

Bạn có thể tìm kiếm khoá tham số, giá trị tham số và điều kiện của dự án trong bảng điều khiển Firebase bằng cách sử dụng hộp tìm kiếm ở đầu thẻ Parameters (Tham số) Remote Config.

Giới hạn về thông số và điều kiện

Trong một dự án Firebase, bạn có thể có tối đa 2.000 tham số và tối đa 500 điều kiện. Khoá tham số có thể dài tối đa 256 ký tự, phải bắt đầu bằng dấu gạch dưới hoặc ký tự chữ cái tiếng Anh (A-Z, a-z) và cũng có thể bao gồm chữ số. Tổng chiều dài của chuỗi giá trị tham số trong một dự án không được vượt quá 1.000.000 ký tự.

Xem các thay đổi đối với thông số và điều kiện

Bạn có thể xem các thay đổi mới nhất đối với mẫu Remote Config trong bảng điều khiển Firebase. Đối với từng thông số và điều kiện riêng lẻ, bạn có thể:

  • Xem tên của người dùng đã sửa đổi thông số hoặc điều kiện gần đây nhất.

  • Nếu thay đổi xảy ra trong cùng một ngày, hãy xem số phút hoặc giờ đã trôi qua kể từ khi thay đổi được phát hành cho mẫu Remote Config đang hoạt động.

  • Nếu thay đổi xảy ra cách đây một hoặc nhiều ngày, hãy xem ngày mà thay đổi được phát hành cho mẫu Remote Config đang hoạt động.

Nhật ký thay đổi cho các tham số

Trên trang Remote Config Parameters (Thông số), cột Last published (Lần phát hành gần đây nhất) cho biết người dùng gần đây nhất đã sửa đổi từng thông số và ngày phát hành gần đây nhất của thay đổi:

  • Để xem siêu dữ liệu thay đổi cho các tham số được nhóm, hãy mở rộng nhóm tham số.

  • Để sắp xếp theo thứ tự tăng dần hoặc giảm dần theo ngày xuất bản, hãy nhấp vào nhãn cột Lần xuất bản gần đây nhất.

Nhật ký thay đổi cho các điều kiện

Trên trang Remote Config Điều kiện, bạn có thể xem người dùng gần đây nhất đã sửa đổi điều kiện và ngày họ sửa đổi điều kiện đó bên cạnh Lần sửa đổi gần đây nhất trong mỗi điều kiện.

Các bước tiếp theo

Để định cấu hình dự án Firebase và ứng dụng máy chủ để sử dụng Remote Config, hãy xem phần Sử dụng Remote Config trong môi trường máy chủ.