Tuyệt vời! Dưới đây là phân tích chi tiết về prompt template bạn cung cấp, dưới dạng HTML và bằng tiếng Việt, theo cấu trúc yêu cầu.
1. Phân tích Cấu trúc Prompt
Prompt template này được thiết kế để yêu cầu một quy trình thu thập và chuẩn hóa dữ liệu lịch sử giao dịch bất động sản. Cấu trúc của nó bao gồm:
- Yêu cầu chính: “Xây dựng một quy trình để thu thập dữ liệu lịch sử giao dịch bất động sản.” Đây là chỉ thị rõ ràng về hành động mong muốn từ mô hình.
- Biến (Placeholder):
[NGUỒN_1]
,[NGUỒN_2]
,[NGUỒN_3]
: Đây là các biến đại diện cho các nguồn dữ liệu cụ thể mà người dùng sẽ cung cấp. Số lượng nguồn có thể linh hoạt, mặc dù mẫu này chỉ định ba nguồn.[KHU_VỰC_TỔNG_QUÁT]
: Biến này cho phép người dùng chỉ định phạm vi địa lý của dữ liệu cần thu thập.
- Định dạng chuẩn hóa: Phần cuối của prompt (“Chuẩn hóa dữ liệu về định dạng chung bao gồm: ID giao dịch, ngày, giá, loại hình, diện tích, địa chỉ.”) đặt ra các yêu cầu cụ thể về cấu trúc và các trường dữ liệu mong muốn sau khi thu thập và xử lý.
Cấu trúc này rất rõ ràng, cho phép người dùng dễ dàng điền thông tin cụ thể vào các biến để có được kết quả mong muốn.
2. Ý nghĩa & Cách hoạt động
Prompt này hoạt động dựa trên nguyên tắc cung cấp ngữ cảnh và yêu cầu rõ ràng cho mô hình ngôn ngữ lớn (LLM). Cách nó hoạt động như sau:
- Thu thập dữ liệu: Khi bạn điền vào các biến
[NGUỒN_1]
,[NGUỒN_2]
,[NGUỒN_3]
bằng tên các website, cơ sở dữ liệu, API, hoặc bất kỳ nguồn truy cập thông tin nào, mô hình sẽ hiểu rằng nó cần truy xuất thông tin từ những nơi đó. - Phạm vi địa lý: Biến
[KHU_VỰC_TỔNG_QUÁT]
giúp giới hạn phạm vi tìm kiếm và thu thập dữ liệu, đảm bảo tính liên quan và tập trung. - Chuẩn hóa dữ liệu: Yêu cầu về định dạng chung (“ID giao dịch, ngày, giá, loại hình, diện tích, địa chỉ”) là một chỉ dẫn mạnh mẽ cho mô hình về cách cấu trúc lại dữ liệu đã thu thập. Điều này có nghĩa là mô hình sẽ cần phân tích thông tin từ các nguồn khác nhau và trích xuất các trường dữ liệu tương ứng, sau đó sắp xếp chúng theo một schema thống nhất.
- Quy trình: Thuật ngữ “quy trình” gợi ý rằng mô hình không chỉ cần liệt kê dữ liệu mà còn phải mô tả các bước logic để đạt được kết quả cuối cùng (ví dụ: cách truy cập, cách trích xuất, cách làm sạch, cách chuẩn hóa).
Về mặt kỹ thuật, một LLM có khả năng truy cập thông tin (nếu được tích hợp) hoặc có kiến thức đã được huấn luyện về các nguồn dữ liệu phổ biến. Nó sẽ sử dụng kỹ năng xử lý ngôn ngữ tự nhiên để hiểu yêu cầu, phân tích các nguồn được cung cấp, trích xuất thông tin cần thiết và định dạng chúng theo schema đã cho.
3. Ví dụ Minh họa
Dưới đây là hai ví dụ cụ thể khi điền các biến vào prompt template:
Ví dụ 1:
Prompt đã điền:
Xây dựng một quy trình để thu thập dữ liệu lịch sử giao dịch bất động sản từ các nguồn sau: https://batdongsan.com.vn, https://cafeland.vn, https://vnexpress.net/bat-dong-san cho khu vực TP. Hồ Chí Minh. Chuẩn hóa dữ liệu về định dạng chung bao gồm: ID giao dịch, ngày, giá, loại hình, diện tích, địa chỉ.
Kết quả mong đợi từ mô hình (mô tả quy trình và cấu trúc dữ liệu):
Mô hình có thể phản hồi bằng một mô tả quy trình chi tiết, bao gồm các bước sau:
- Truy cập nguồn: Sử dụng các API (nếu có) hoặc kỹ thuật scraping (sử dụng các thư viện như Beautiful Soup, Scrapy cho Python) để thu thập dữ liệu từ các URL đã cung cấp.
- Trích xuất thông tin: Đối với mỗi trang/bản tin bất động sản, tiến hành trích xuất các trường dữ liệu:
- ID giao dịch: Tạo một ID duy nhất cho mỗi giao dịch (ví dụ: kết hợp từ URL, ngày, và thông tin cơ bản).
- Ngày: Phân tích trường ngày đăng hoặc ngày giao dịch được ghi nhận.
- Giá: Trích xuất giá bán/cho thuê, xử lý đơn vị tiền tệ (VNĐ, USD, triệu, tỷ).
- Loại hình: Xác định loại bất động sản (căn hộ, nhà phố, đất nền, biệt thự, mặt bằng kinh doanh).
- Diện tích: Lấy thông số diện tích (m²) và xử lý các định dạng khác nhau.
- Địa chỉ: Trích xuất địa chỉ chi tiết, bao gồm số nhà, tên đường, phường/xã, quận/huyện, tỉnh/thành phố.
- Lọc theo khu vực: Tập trung vào các bất động sản nằm trong khu vực “TP. Hồ Chí Minh”, có thể bao gồm việc phân tích địa chỉ để xác định quận/huyện cụ thể trong thành phố.
- Chuẩn hóa định dạng: Đảm bảo tất cả các trường đều theo một định dạng nhất quán (ví dụ: ngày dạng YYYY-MM-DD, giá bằng số nguyên, diện tích bằng số thực).
- Lưu trữ: Đề xuất các phương thức lưu trữ dữ liệu đã chuẩn hóa (ví dụ: CSV, JSON, cơ sở dữ liệu SQL/NoSQL).
Mô hình cũng có thể cung cấp một bản phác thảo cấu trúc dữ liệu mẫu, ví dụ:
[
{
"ID_giao_dich": "BDSDATA-0001",
"Ngay": "2023-10-27",
"Gia": 5000000000,
"Loai_hinh": "Căn hộ",
"Dien_tich": 75.5,
"Dia_chi": "Số 123, Đường ABC, Phường XYZ, Quận 1, TP. Hồ Chí Minh"
},
...
]
Ví dụ 2:
Prompt đã điền:
Xây dựng một quy trình để thu thập dữ liệu lịch sử giao dịch bất động sản từ các nguồn sau: Dữ liệu nội bộ của công ty (file Excel), API của Sở Tài nguyên & Môi trường tỉnh Đồng Nai cho khu vực Huyện Nhơn Trạch. Chuẩn hóa dữ liệu về định dạng chung bao gồm: ID giao dịch, ngày, giá, loại hình, diện tích, địa chỉ.
Kết quả mong đợi từ mô hình:
Trong trường hợp này, mô hình sẽ thích ứng với sự kết hợp của nguồn dữ liệu. Đối với “Dữ liệu nội bộ của công ty (file Excel)”, nó sẽ hiểu rằng cần có hướng dẫn về cách đọc và xử lý file Excel (ví dụ: sử dụng Pandas trong Python).
- Truy cập nguồn:
- File Excel nội bộ: Hướng dẫn cách đọc file Excel, xác định cột dữ liệu tương ứng với các trường yêu cầu.
- API Sở Tài nguyên & Môi trường: Hướng dẫn cách gọi API (nếu biết về các API công khai hoặc mô tả chung về cách tương tác với API – yêu cầu khóa truy cập, endpoint, định dạng dữ liệu trả về).
- Trích xuất và Chuẩn hóa: Tương tự như trên, nhưng có sự lưu ý đến tính đặc thù của từng nguồn. Ví dụ, dữ liệu từ Sở có thể đã được chuẩn hóa ở một mức độ nhất định, trong khi