Function Calling trong AI API: Cách để mô hình ngôn ngữ tương tác an toàn với cơ sở dữ liệu nội bộ

Ad822b7d929e4e7cba05259e1ebfa7d0

Khám phá kỹ thuật Function Calling trong AI (OpenAI và Gemini API): cách định nghĩa cấu trúc hàm (schema) để AI tự động trích xuất tham số và gọi API truy vấn dữ liệu công ty bảo mật.

1. Function Calling trong AI là gì?

Trước đây, các mô hình ngôn ngữ lớn (LLM) chỉ có thể trò chuyện dựa trên dữ liệu huấn luyện có sẵn hoặc văn bản bạn cung cấp trong prompt. Điều này khiến AI không thể biết được các số liệu thời gian thực trong cơ sở dữ liệu nội bộ của doanh nghiệp.

Function Calling trong AI là tính năng mang tính đột phá, cho phép mô hình ngôn ngữ hiểu được khi nào cần gọi một hàm lập trình có sẵn, tự động trích xuất các tham số từ câu hỏi của người dùng và trả về một cấu trúc dữ liệu chuẩn để ứng dụng của bạn thực thi việc truy vấn cơ sở dữ liệu.

2. Lợi ích vượt trội của Function Calling đối với Data Analyst

  • Kết nối AI với hệ thống dữ liệu thực tế: Giúp chatbot hoặc trợ lý ảo của công ty có thể tra cứu trực tiếp doanh thu, tồn kho từ SQL Server hay gọi các API nội bộ.

  • Đảm bảo tính chính xác tuyệt đối: Thay vì để AI tự “bịa” ra con số (hallucination), AI sẽ đóng vai trò là bộ phân tích ngôn ngữ tự nhiên để lấy đúng tham số truyền vào hàm thống kê chính thống.

  • Bảo mật và kiểm soát chặt chẽ: Doanh nghiệp hoàn toàn kiểm soát được các hàm nào được phép gọi, ngăn chặn tuyệt đối việc AI thực hiện các lệnh nguy hiểm xuống hệ thống cơ sở dữ liệu.

3. Cách thức hoạt động của cơ chế Function Calling

Quy trình tương tác diễn ra trong vòng 4 bước cực kỳ chặt chẽ:

  1. Người dùng đặt câu hỏi: Ví dụ: “Cho tôi biết doanh thu của chi nhánh Hà Nội trong tháng này.”

  2. AI phân tích và gọi hàm: Mô hình nhận diện câu hỏi khớp với hàm lay_doanh_thu(chi_nhanh, thoi_gian), sau đó tự động trích xuất tham số: chi_nhanh = "Ha Noi", thoi_gian = "thang nay".

  3. Ứng dụng thực thi: Code backend của bạn nhận cấu trúc JSON từ AI, tiến hành thực thi câu lệnh SQL truy vấn vào database thật.

  4. AI tổng hợp kết quả: Dữ liệu trả về từ database được đưa ngược lại cho AI để diễn giải thành một câu trả lời hoàn chỉnh, mượt mà cho người dùng.

4. Ví dụ định nghĩa Schema cho Function Calling bằng Python

Dưới đây là cách bạn định nghĩa cấu trúc hàm cho OpenAI API để AI hiểu được nghiệp vụ tra cứu dữ liệu:

Python

import openai

# Định nghĩa danh sách các hàm (functions) cho phép AI gọi
tools = [
    {
        "type": "function",
        "function": {
            "name": "lay_doanh_thu_chi_nhanh",
            "description": (
                "Truy vấn tổng doanh thu của một chi nhánh theo khoảng thời"
                " gian"
            ),
            "parameters": {
                "type": "object",
                "properties": {
                    "ten_chi_nhanh": {
                        "type": "string",
                        "description": "Tên thành phố hoặc khu vực chi nhánh",
                    },
                    "thang": {
                        "type": "integer",
                        "description": "Tháng cần xem báo cáo (1-12)",
                    },
                },
                "required": ["ten_chi_nhanh", "thang"],
            },
        },
    }
]

5. Ứng dụng thực tế trong việc xây dựng AI Agent nội bộ

  • Trợ lý báo cáo tự động: Nhân viên kinh doanh chỉ cần chat với bot để lấy biểu đồ và số liệu mà không cần biết viết câu lệnh SQL phức tạp.

  • Hệ thống chăm sóc khách hàng thông minh: Bot tự động gọi API tra cứu lịch sử mua hàng và vận đơn của khách ngay trong khung chat trực tuyến.

6. Tổng kết

Làm chủ công nghệ Function Calling trong AI giúp các Data Analyst và lập trình viên vượt qua giới hạn của mô hình ngôn ngữ thông thường, mở ra khả năng xây dựng các hệ thống AI Agent thông minh, kết nối sâu rộng và an toàn với cơ sở dữ liệu nội bộ của doanh nghiệp.

✍️ Tác giả: Phan Thị Như Phước – Data Analyst tại MCNA Technology School

📞 Hotline: 0939.866.825 (Mr. Minh Khang)

🌐 Website: mcna.vn

📍 Hà Nội: 30 Trung Liệt, Đống Đa | Liền kề 44B TT2 Văn Quán, Hà Đông

📍 TP.HCM: 50B Phan Tây Hồ, Cầu Kiệu

→ Chỉ mục