Chuyển đến nội dung chính

getFormsDataByVectorSearch

Tìm kiếm ngữ nghĩa (vector) cho dữ liệu biểu mẫu.

Mô tả

Phương thức này thực hiện tìm kiếm ngữ nghĩa (vector) cho dữ liệu biểu mẫu từ một truy vấn bằng ngôn ngữ tự nhiên - nó khớp với ý nghĩa thay vì từ khóa chính xác. Nó trả về một Promise mà khi giải quyết sẽ trả về một đối tượng IFormsDataSearchResponse - một container với itemstotal.

Các bản ghi được trả về dưới dạng IFormDataSearchEntity, mà - khác với IFormDataEntity được trả về bởi getFormsDataByMarker() - cũng mang theo các trường kiểm duyệt và người gửi của bản ghi gốc (status, ip, fingerprint, isUserAdmin, userIdentifier, entityIdentifier, parentId).

FormData.getFormsDataByVectorSearch(

body*, langCode, offset, limit

);

Sơ đồ tham số

Sơ đồ

body(bắt buộc): IFormsDataVectorSearch
Nội dung tìm kiếm vector
ví dụ:

{ queryText: "order confirmation" }

body.queryText(bắt buộc): string
Truy vấn tìm kiếm bằng ngôn ngữ tự nhiên.
ví dụ: "xác nhận đơn hàng"

body.vectorDistanceThreshold: number
Ghi đè ngưỡng khoảng cách cosine (0..2).
ví dụ: 0.3

body.maxHits: number
Các ứng viên hàng đầu được lấy trước khi phân trang. Mặc định: 100. Tối đa: 500.
ví dụ: 10

body.debug: boolean
Khi true, mỗi mục được trả về sẽ có trường distance.
ví dụ: false

langCode: string
Mã ngôn ngữ. Mặc định: "en_US"
ví dụ: "en_US"

offset: number
Tham số cho phân trang. Mặc định: 0
ví dụ: 0

limit: number
Tham số cho phân trang. Mặc định: 30
ví dụ: 30

Ví dụ

Ví dụ tối thiểu

const response = await FormData.getFormsDataByVectorSearch({ queryText: 'order confirmation' });

Ví dụ với các thuộc tính

const response = await FormData.getFormsDataByVectorSearch(
{
queryText: 'order confirmation',
vectorDistanceThreshold: 0.3,
maxHits: 50,
debug: true,
},
'en_US',
0,
30,
);

Ví dụ phản hồi

{
"items": [
{
"id": 8426,
"formIdentifier": "test-form",
"time": "2026-08-23T20:20:37.568Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"userIdentifier": "test@test.ru",
"entityIdentifier": "blog",
"parentId": null,
"ip": "31.31.109.247",
"fingerprint": "UQ_1ca96f07-cb2f-403f-850a-4c3b76c022ce",
"isUserAdmin": false,
"status": "sent",
"formModuleId": 2
},
{
"id": 8409,
"formIdentifier": "test-form",
"time": "2026-08-23T17:47:58.472Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"userIdentifier": null,
"entityIdentifier": "blog",
"parentId": null,
"ip": "31.31.109.247",
"fingerprint": "UQ_3c2e0387-2ceb-4b76-a64f-cb6ba0e655b2",
"isUserAdmin": false,
"status": "sent",
"formModuleId": 2
},
{
"id": 8392,
"formIdentifier": "test-form",
"time": "2026-08-23T14:37:47.250Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"userIdentifier": null,
"entityIdentifier": "blog",
"parentId": null,
"ip": "31.31.109.247",
"fingerprint": "UQ_125c6a79-1f43-4d42-89b0-3872fedfc9ed",
"isUserAdmin": false,
"status": "sent",
"formModuleId": 2
},
"..."
],
"total": 100
}

Sơ đồ phản hồi

Sơ đồ: IFormsDataSearchResponse

items: IFormDataSearchEntity[]
Mảng các bản ghi dữ liệu biểu mẫu đã tìm thấy.

items.id: number
Định danh duy nhất của bản ghi dữ liệu biểu mẫu.
ví dụ: 12345

items.formIdentifier: string
Định danh văn bản của biểu mẫu.
ví dụ: "contact_form"

items.time: Date | string
Ngày và giờ bản dữ liệu biểu mẫu được thay đổi lần cuối.
ví dụ: "2023-02-12 10:56"

items.formData: FormDataType[]
Dữ liệu được gửi bởi biểu mẫu.
ví dụ:

[
{
"marker": "name",
"type": "string",
"value": "Test"
}
]

items.userIdentifier: string | null
Định danh văn bản của người dùng đã gửi biểu mẫu, hoặc null cho một lần gửi ẩn danh.
ví dụ: null

items.entityIdentifier: string
Định danh văn bản của thực thể mà bản ghi thuộc về.
ví dụ: "blog"

items.parentId: number | null
Định danh của bản ghi dữ liệu biểu mẫu cha, hoặc null cho một bản ghi cấp cao nhất.
ví dụ: null

items.ip: string
Địa chỉ IP mà biểu mẫu được gửi từ đó.
ví dụ: "127.0.0.1"

items.fingerprint: string
Dấu vân tay thiết bị của người gửi.
ví dụ: "UQ_123456_abcdef"

items.isUserAdmin: boolean
Liệu bản ghi có được gửi bởi một quản trị viên hay không.
ví dụ: false

items.status: FormDataStatus
Trạng thái kiểm duyệt của bản ghi.
ví dụ: "đã gửi"

items.formModuleId: number
Định danh của mô-đun biểu mẫu mà bản ghi thuộc về.
ví dụ: 2

items.distance: number
Khoảng cách cosine đến truy vấn. Chỉ được trả về khi debug: true được truyền vào nội dung tìm kiếm.
ví dụ: 0.12

total: number
Tổng số bản ghi đã tìm thấy.
ví dụ: 100

ℹ️ Tìm kiếm ngữ nghĩa khớp với ý nghĩa, không phải với văn bản nguyên văn. Để khớp từ khóa trên mọi loại thực thể cùng một lúc, hãy sử dụng globalSearch().