0

AI Agent phân tích dữ liệu có cấu trúc trên CSV/Excel

Dữ liệu có cấu trúc (structured data) trong doanh nghiệp thường tồn tại dưới dạng CSV hoặc Excel từ báo cáo bán hàng, dữ liệu marketing đến log vận hành. Vấn đề không nằm ở việc thiếu dữ liệu, mà ở chỗ khai thác dữ liệu nhanh và đúng cách. Khi khối lượng dữ liệu tăng lên hàng nghìn dòng, thao tác thủ công bằng Excel hoặc viết script ad-hoc trở nên kém hiệu quả.

AI Agent mở ra một cách tiếp cận khác: cho phép đặt câu hỏi bằng ngôn ngữ tự nhiên, tự động chuyển đổi thành lệnh phân tích dữ liệu và trả kết quả tức thì. Bài viết này tập trung vào cách developer có thể xây dựng pipeline AI Agent làm việc trực tiếp với CSV/Excel, từ kiến trúc tổng thể đến ví dụ code thực tế.

CSV/Excel dưới góc nhìn Structured Data

Trong thực tế phát triển, CSV và Excel có thể được xem như một “database nhẹ”:

  • Mỗi dòng đại diện cho một record.
  • Mỗi cột tương ứng với một field.
  • Schema thường không được enforce chặt chẽ như RDBMS.

Điều này vừa là lợi thế (dễ trao đổi, dễ import/export), vừa là thách thức khi tích hợp với AI Agent. Vì vậy, trước khi đưa dữ liệu vào agent, developer cần xác định rõ schema logic và chuẩn hóa dữ liệu để tránh sai lệch trong quá trình query.

Kiến trúc tổng quát: AI Agent xử lý CSV/Excel

Một hệ thống AI Agent làm việc với dữ liệu có cấu trúc thường được thiết kế theo dạng pipeline. Mỗi layer đảm nhiệm một vai trò cụ thể, giúp tách biệt trách nhiệm và dễ mở rộng. kien-truc-ai-agent-phan-tich-du-lieu-17590728023397.png

1. Input Layer – Thu nhận dữ liệu

Dữ liệu có thể được đưa vào hệ thống theo nhiều cách:

  • Upload CSV/Excel trực tiếp từ UI.
  • Đọc từ Google Sheets (qua API).
  • Load từ object storage (S3, MinIO, OneDrive…).

Trong môi trường production, Input Layer thường được bọc bởi một service ingest (FastAPI, Flask, NestJS…) để kiểm soát định dạng và kích thước file.

Lưu ý kỹ thuật:

  • CSV: parse nhanh, phù hợp với batch nhỏ và trung bình.
  • Excel (XLSX): hỗ trợ nhiều sheet, nhưng cần thư viện chuyên dụng (openpyxl, xlrd).
  • Google Sheets: tiện cho dữ liệu cập nhật liên tục, nhưng cần xử lý auth và rate limit.

2. Parser Layer – Chuẩn hóa và làm sạch dữ liệu

Parser Layer đóng vai trò “phiên dịch” giữa dữ liệu thô và AI Agent. Ở bước này, dữ liệu thường được chuyển thành DataFrame (Python) hoặc JSON object (Node.js).

Các thao tác phổ biến:

  • Loại bỏ null / NaN.
  • Chuẩn hóa kiểu dữ liệu (date, number).
  • Đồng bộ naming convention cho column.

Nếu bỏ qua bước này, AI Agent có thể sinh code sai hoặc trả kết quả không nhất quán.

3. Agent Core – Trung tâm xử lý logic

Agent Core là nơi kết hợp giữa LLM và các tool chuyên biệt để thao tác dữ liệu. Với structured data, hai hướng tiếp cận phổ biến là:

  • Pandas DataFrame Agent: mapping câu hỏi → pandas operations.
  • SQL-based Agent: convert CSV/Excel sang SQLite để query bằng SQL.

AI Agent sẽ:

  1. Phân tích câu hỏi tự nhiên.
  2. Xác định cột liên quan và phép toán cần dùng.
  3. Sinh code tương ứng để thực thi trên dữ liệu.

Developer không cần viết query thủ công, nhưng vẫn cần kiểm soát logic sinh code.

4. Query Execution – Thực thi an toàn

Câu hỏi tự nhiên sau khi được parse sẽ được chuyển thành code thao tác dữ liệu.

Ví dụ:

df.groupby("customer")["order_value"] \
  .sum() \
  .sort_values(ascending=False) \
  .head(5)

Ở layer này, yếu tố an toàn rất quan trọng:

  • Giới hạn quyền thực thi (sandbox).
  • Chặn các lệnh phá hoại như drop, delete, os.system.
  • Log toàn bộ code được sinh ra để audit.

5. Output Layer – Trả kết quả và trực quan hóa

Kết quả có thể được trả về dưới nhiều dạng:

  • DataFrame / JSON.
  • Giá trị tổng hợp (sum, mean, count).
  • Biểu đồ (bar, line, pie).

Trong nhiều use case doanh nghiệp, visualization giúp người dùng hiểu insight nhanh hơn so với việc đọc bảng số liệu thuần.

Ví dụ triển khai với Python: LangChain + Pandas Agent

Một cách tiếp cận phổ biến là sử dụng LangChain kết hợp Pandas DataFrame Agent để dựng hệ thống Q&A trên Excel/CSV.

from langchain.agents import create_pandas_dataframe_agent
from langchain.llms import OpenAI
import pandas as pd

df = pd.read_excel("marketing_data.xlsx")

agent = create_pandas_dataframe_agent(
    OpenAI(temperature=0),
    df,
    verbose=True
)

print(agent.run("Chiến dịch nào có ROI cao nhất trong quý 3?"))

Ở đây:

  • DataFrame đóng vai trò nguồn dữ liệu chính.
  • Agent tự động sinh code pandas tương ứng với câu hỏi.
  • Developer chỉ cần tập trung vào kiểm soát input/output.

Quy trình triển khai khuyến nghị cho Developer

Bước 1 – Chuẩn hóa dữ liệu

Đây là bước nền tảng nhưng thường bị xem nhẹ. Dữ liệu không sạch sẽ làm giảm độ chính xác của AI Agent.

df.columns = (
    df.columns
    .str.strip()
    .str.lower()
    .str.replace(" ", "_")
)

df["date"] = pd.to_datetime(df["date"], errors="coerce")
df.dropna(inplace=True)

buoc-1-chuan-hoa-du-lieu-17590735460276.png

Bước 2 – Tích hợp AI Agent

  • Python: pandas + LangChain / LlamaIndex.
  • Node.js: xlsx / papaparse + LLM API.
  • Tạo middleware để kết nối câu hỏi → dữ liệu.

buoc-2-tich-hop-ai-agent-17590736814803.png

Bước 3 – Mapping ngôn ngữ tự nhiên sang query

Đây là “phần lõi” của AI Agent. Agent cần hiểu:

  • Cột nào liên quan.
  • Phép toán cần thực hiện (sum, group, sort…).

Developer nên:

  • Giới hạn scope thao tác.
  • Kiểm soát execution environment.

Bước 4 – Visualization (tùy nhu cầu)

Khi cần trực quan hóa:

  • matplotlib / seaborn cho use case đơn giản.
  • plotly cho dashboard web.
monthly_sales = df.groupby("month")["revenue"].sum()
monthly_sales.plot(kind="bar", title="Doanh thu theo tháng")

Kết luận

AI Agent mang lại một cách tiếp cận mới trong việc khai thác dữ liệu có cấu trúc từ CSV/Excel. Thay vì viết script thủ công hoặc xử lý dữ liệu rời rạc, developer có thể xây dựng một pipeline cho phép hỏi – phân tích – trả kết quả theo thời gian thực.

Khi được triển khai đúng cách, AI Agent không chỉ tiết kiệm thời gian xử lý dữ liệu mà còn trở thành lớp trung gian giúp doanh nghiệp tiếp cận insight nhanh hơn, chính xác hơn và có thể mở rộng trong tương lai.

Nguồn tham khảo: https://bizfly.vn/techblog/xu-ly-du-lieu-co-cau-truc-bang-ai-agent-tren-csv-excel.html


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí