Intermediate ⏱️ 12 phút đọc

Xây Dựng AI Agent Full-Stack Siêu Tốc Với Astro và Cloudflare Workers

Hướng dẫn thực chiến từ A-Z cách tạo một AI Agent thông minh xử lý tác vụ tại Edge, lưu trữ trạng thái với Cloudflare D1 và tối ưu chi phí hạ tầng về mức 0 đồng.

L
Lê Nghĩa
• • 👀 Đang tải...
Xây Dựng AI Agent Full-Stack Siêu Tốc Với Astro và Cloudflare Workers
Công cụ trong bài: Astro 5 Cloudflare Workers Cloudflare D1 Google Gemini API Tailwind CSS

Hầu hết các lập trình viên khi nghĩ đến việc xây dựng AI Agent đều nghĩ ngay đến việc thuê máy chủ VPS (như EC2, DigitalOcean) để chạy Python FastAPI hay Node.js server. Tuy nhiên, kiến trúc này vừa tốn kém chi phí cố định hàng tháng, vừa gặp độ trễ cao khi người dùng phân bổ khắp thế giới.

Trong bài hướng dẫn này, chúng ta sẽ xây dựng một AI Agent hiện đại chạy hoàn toàn tại Edge (mạng lưới phân tán của Cloudflare) bằng Astro và Cloudflare Workers.


1. Tại sao lại là Astro + Cloudflare Workers?

  1. Cold Start < 5ms: Cloudflare Workers sử dụng V8 Isolates thay vì Container/VM, thời gian khởi động gần như tức thì.
  2. Global Edge Network: Code của bạn chạy tại hơn 300 thành phố trên toàn thế giới, đưa AI Agent đến gần người dùng nhất có thể.
  3. Chi Phí $0 Ban Đầu: Miễn phí 100,000 requests mỗi ngày, 5GB cơ sở dữ liệu D1 SQLite.
  4. Kiến Trúc Hybrid: Astro giúp chúng ta vừa có trang landing page tĩnh siêu nhanh cho SEO, vừa có các endpoint API SSR động để xử lý tương tác AI.

2. Bước 1: Khởi tạo Project và Cấu hình Adapter

Trước tiên, cài đặt Astro và adapter Cloudflare:

npm create astro@latest my-ai-agent -- --template minimal
cd my-ai-agent
npx astro add cloudflare tailwind

Chuyển chế độ sang static (hoặc server) trong astro.config.mjs:

// astro.config.mjs
import { defineConfig } from 'astro/config';
import cloudflare from '@astrojs/cloudflare';
import tailwind from '@astrojs/tailwind';

export default defineConfig({
  output: 'static', // Prerender tĩnh mặc định, SSR chỉ khi cần
  adapter: cloudflare({
    imageService: 'passthrough'
  }),
  integrations: [tailwind()],
});

3. Bước 2: Tạo Endpoint API cho AI Agent

Tạo file src/pages/api/agent.ts. Để route này chạy động trên Cloudflare Worker, chúng ta thêm export const prerender = false:

// src/pages/api/agent.ts
import type { APIRoute } from 'astro';

export const prerender = false;

export const POST: APIRoute = async ({ request, locals }) => {
  try {
    const { prompt, history } = await request.json();

    if (!prompt) {
      return new Response(JSON.stringify({ error: 'Prompt is required' }), {
        status: 400,
        headers: { 'Content-Type': 'application/json' },
      });
    }

    // Tận dụng Cloudflare Workers AI hoặc gọi API ngoài
    const apiKey = (locals as any).runtime?.env?.GEMINI_API_KEY || process.env.GEMINI_API_KEY;

    // Phản hồi giả lập hoặc kết nối LLM
    const reply = `AI Agent đã nhận được yêu cầu: "${prompt}". Đang kích hoạt chuỗi công cụ...`;

    return new Response(JSON.stringify({ success: true, reply }), {
      status: 200,
      headers: { 'Content-Type': 'application/json' },
    });
  } catch (err: any) {
    return new Response(JSON.stringify({ error: err.message }), { status: 500 });
  }
};

4. Bước 3: Lưu trữ Memory và Lịch sử với Cloudflare D1

Tạo bảng lưu hội thoại trong D1 Database:

-- schema.sql
CREATE TABLE IF NOT EXISTS agent_conversations (
    id TEXT PRIMARY KEY,
    user_id TEXT,
    prompt TEXT,
    response TEXT,
    tokens_used INTEGER,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Chạy migration cục bộ để kiểm tra:

npx wrangler d1 execute ai_portal_db --local --file=./schema.sql

5. Kết Luận & Các Bước Tiếp Theo

Với kiến trúc này, bạn đã sở hữu một nền tảng AI Agent có thể mở rộng tự động từ 1 đến 1 triệu người dùng mà không cần bận tâm về việc scale server hay trả tiền hosting hàng tháng!

✉️ Bản Tin AI Hàng Tuần

Đón Đầu Bước Tiến Trí Tuệ Nhân Tạo

Nhận bản tóm tắt các mô hình AI mới nhất, bài hướng dẫn kỹ thuật độc quyền và mã nguồn mẫu được gửi thẳng vào hộp thư mỗi thứ Hai. Không spam, hủy bất kỳ lúc nào.

Được bảo vệ bởi Cloudflare Edge. Dữ liệu của bạn luôn an toàn.