AI Sparkup

복잡한 AI 세상을 읽는 힘

Cloudflare AI Agents로 나만의 AI 에이전트 만들기 – 설치부터 배포까지 완전 가이드

웹 인프라 분야의 글로벌 리더 Cloudflare가 2025년 2월, AI 에이전트 개발 플랫폼 시장에 본격 진출을 선언했습니다. 단순히 새로운 서비스를 출시한 것이 아니라, AI 에이전트 개발의 근본적인 문제들을 해결하는 혁신적인 플랫폼을 제공하기 시작한 것입니다.

출처: Claudflare

Cloudflare AI Agents 플랫폼이란?

Cloudflare AI Agents는 개발자들이 자율적으로 작업을 수행하는 AI 에이전트를 쉽게 구축하고 배포할 수 있게 해주는 통합 플랫폼입니다. 기존의 웹 애플리케이션을 만들듯 간단하게 AI 에이전트를 개발할 수 있도록 설계되었습니다.

핵심 구성 요소

1. agents-sdk: 전용 JavaScript 프레임워크 2025년 2월에 출시된 agents-sdk는 AI 에이전트 개발을 위해 특별히 설계된 JavaScript 프레임워크입니다. 복잡한 AI 로직을 간단한 코드로 구현할 수 있으며, React 기반 프론트엔드와의 연동도 자동으로 처리해줍니다.

2. Workers AI: 서버리스 AI 추론 엔진 Cloudflare의 글로벌 네트워크에서 직접 AI 모델을 실행할 수 있는 서버리스 플랫폼입니다. GPU 리소스를 미리 예약하거나 관리할 필요 없이, 필요할 때만 AI 모델을 호출하여 추론을 수행할 수 있습니다.

3. Durable Objects: 상태 관리의 핵심 AI 에이전트가 오랜 시간에 걸쳐 복잡한 작업을 수행할 때 필요한 상태 정보를 안정적으로 보관하는 스토리지 시스템입니다. 각 에이전트는 자신만의 전용 Durable Object를 가지며, 수천만 개의 에이전트를 동시에 실행할 수 있는 확장성을 제공합니다.

4. MCP(Model Context Protocol) 지원 2024년 말 Anthropic이 주도하여 개발한 Model Context Protocol을 완전 지원합니다. MCP는 AI 시스템과 외부 애플리케이션을 연결하는 개방형 표준으로, “AI를 위한 USB-C 포트”라고 할 수 있습니다. Cloudflare는 MCP 서버를 손쉽게 구축할 수 있는 도구를 제공합니다.

AI 에이전트 vs 기존 솔루션

Cloudflare AI Agents가 제공하는 에이전트는 기존의 자동화 솔루션이나 챗봇과는 근본적으로 다릅니다:

기존 워크플로우 자동화: 미리 정의된 순서대로만 작업을 수행하며, 예외 상황에서는 중단됩니다.

일반적인 AI 챗봇: 질문에 답변을 제공하지만, 실제 작업을 수행하지는 못합니다.

Cloudflare AI 에이전트: 목표가 주어지면 스스로 계획을 세우고, 필요한 도구를 선택하여 사용하며, 중간 결과에 따라 전략을 수정하면서 최종 목표를 달성합니다.

예를 들어 “이번 달 매출 보고서를 작성해줘”라는 요청을 받으면, 에이전트는 데이터베이스에서 매출 데이터를 조회하고, 차트를 생성하며, 문서를 작성한 후 이메일로 발송하는 모든 과정을 자동으로 수행할 수 있습니다.

Cloudflare AI Agents 플랫폼의 혁신적 특징

1. 진정한 서버리스 AI 개발 환경

기존 AI 플랫폼들의 가장 큰 문제는 사용하지 않는 시간에도 서버 비용을 지불해야 한다는 점이었습니다. Cloudflare는 이 문제를 근본적으로 해결했습니다.

CPU 시간 기반 과금: Cloudflare Workers는 실제 코드가 실행되는 시간(보통 2-3밀리초)에 대해서만 과금합니다. AI 모델이 응답을 생성하는 동안 기다리는 시간(보통 수십 초)에는 비용이 발생하지 않습니다. 이는 기존 플랫폼 대비 90% 이상의 비용 절감 효과를 가져옵니다.

자동 스케일링: 사용자가 늘어나면 자동으로 확장되고, 사용자가 없으면 0으로 축소됩니다. 인프라 관리나 용량 계획이 전혀 필요하지 않습니다.

2. 전 세계를 아우르는 AI 네트워크

190개 도시의 GPU 네트워크: Cloudflare는 전 세계 190개 이상 도시에 GPU를 배치하여 어디서든 낮은 지연시간으로 AI 서비스를 제공합니다. 서울의 사용자든 뉴욕의 사용자든 동일하게 빠른 응답을 받을 수 있습니다.

엣지 컴퓨팅 최적화: AI 추론이 사용자와 가장 가까운 서버에서 실행되어 네트워크 지연시간을 최소화합니다.

3. 차세대 AI 기능 지원

2025년 업데이트 내용:

  • JSON 모드: AI 모델이 구조화된 JSON 형태로 응답하도록 강제할 수 있어, 안정적인 API 연동이 가능합니다
  • 향상된 툴 호출: AI 에이전트가 외부 도구를 더욱 정확하고 효율적으로 사용할 수 있습니다
  • 확장된 컨텍스트 윈도우: 더 긴 대화와 복잡한 문서를 처리할 수 있습니다
  • 다양한 모델 지원: Llama 3.1, DeepSeek R1 등 최신 오픈소스 모델들을 지원합니다

4. MCP 생태계의 중심

Model Context Protocol 완전 지원: Anthropic이 주도하는 MCP 표준을 통해 AI 에이전트가 다양한 외부 서비스와 표준화된 방식으로 연동할 수 있습니다. Cloudflare는 MCP 서버를 구축하는 모든 도구를 제공하며, 실제로 일부 기업들이 24시간 내에 MCP 서버를 구축한 사례도 있습니다.

광범위한 연동 지원: Auth0, WorkOS, Stytch 등 주요 인증 서비스와의 원클릭 연동을 지원하여 엔터프라이즈급 보안을 쉽게 구현할 수 있습니다.

시작하기 전 준비사항

Cloudflare AI Agents를 시작하기 위해 필요한 것들을 준비해보겠습니다.

필수 요구사항

  1. Cloudflare 계정cloudflare.com에서 무료 계정 생성
  2. Node.js: 버전 18 이상 설치
  3. 기본적인 JavaScript 지식: React나 Node.js 경험이 있으면 더욱 좋습니다

API 키 준비

AI 에이전트를 만들기 위해서는 언어 모델 API가 필요합니다. Cloudflare Workers AI를 사용하거나 OpenAI API를 연동할 수 있습니다. 이 가이드에서는 두 가지 방법을 모두 다루겠습니다.

Code Editor Setup 출처: Unsplash

agents-sdk 시작하기

이제 본격적으로 AI 에이전트를 만들어보겠습니다.

프로젝트 생성

터미널에서 다음 명령어를 실행하여 새로운 프로젝트를 생성합니다:

npm create cloudflare@latest -- --template cloudflare/agents-starter

프로젝트 이름을 입력하라고 하면 원하는 이름을 입력하세요. 예를 들어 my-ai-agent라고 하겠습니다.

cd my-ai-agent
npm install

환경 설정

프로젝트 폴더에 .dev.vars 파일을 생성하고 API 키를 설정합니다:

# OpenAI를 사용하는 경우
OPENAI_API_KEY=your-openai-api-key-here

# 또는 Cloudflare AI Gateway를 사용하는 경우
GATEWAY_BASE_URL=your-gateway-url-here

실습: 간단한 AI 에이전트 만들기

기본 에이전트 구조

src/index.ts 파일을 열어보면 다음과 같은 기본 구조를 볼 수 있습니다:

import { Agent } from "agents-sdk";

export class MyAgent extends Agent {
  async onRequest(request) {
    return new Response("안녕하세요! AI 에이전트입니다.");
  }
}

이는 가장 기본적인 에이전트입니다. HTTP 요청을 받아 간단한 응답을 반환합니다.

지능형 챗 에이전트 만들기

더 실용적인 챗 에이전트를 만들어보겠습니다. AIChatAgent 클래스를 사용하면 복잡한 대화형 AI를 쉽게 구현할 수 있습니다:

import { AIChatAgent, agentContext } from "agents-sdk";
import { createOpenAI } from "@ai-sdk/openai";
import { streamText } from "ai";

export class IntelligentChat extends AIChatAgent<Env> {
  async onChatMessage(onFinish) {
    return agentContext.run(this, async () => {
      const openai = createOpenAI({
        apiKey: this.env.OPENAI_API_KEY,
      });

      const result = streamText({
        model: openai("gpt-4o-2024-11-20"),
        system: `
          당신은 도움이 되는 AI 어시스턴트입니다. 
          사용자의 질문에 친근하고 정확하게 답변해주세요.
          현재 시간: ${new Date().toISOString()}
        `,
        messages: this.messages,
        onFinish,
        maxSteps: 10,
      });

      return result;
    });
  }
}

도구 호출 기능 추가하기

AI 에이전트의 진정한 힘은 외부 도구를 사용할 수 있다는 점입니다. 날씨 정보를 조회하는 도구를 추가해보겠습니다:

const tools = {
  getWeather: {
    description: "특정 도시의 현재 날씨 정보를 조회합니다",
    parameters: {
      type: "object",
      properties: {
        city: {
          type: "string",
          description: "날씨를 조회할 도시명"
        }
      },
      required: ["city"]
    },
    execute: async ({ city }) => {
      // 실제 날씨 API 호출 로직
      const weather = await fetchWeatherData(city);
      return `${city}의 현재 날씨: ${weather.description}, 기온: ${weather.temperature}°C`;
    }
  }
};

이제 에이전트는 사용자가 “서울 날씨 어때?”라고 물어보면 자동으로 날씨 API를 호출하여 실시간 정보를 제공할 수 있습니다.

JSON 모드 활용하기

때로는 구조화된 데이터가 필요할 때가 있습니다. Cloudflare Workers AI의 JSON 모드를 사용하면 일관된 형식의 응답을 받을 수 있습니다:

const response = await ai.run('@cf/meta/llama-3.1-8b-instruct-fp8-fast', {
  messages: [
    {
      role: "system",
      content: "사용자 정보를 JSON 형식으로 추출하세요."
    },
    {
      role: "user", 
      content: "안녕하세요, 저는 김철수이고 서울에 살며 소프트웨어 개발자입니다."
    }
  ],
  response_format: {
    type: "json_schema",
    json_schema: {
      type: "object",
      properties: {
        name: { type: "string" },
        location: { type: "string" },
        occupation: { type: "string" }
      },
      required: ["name", "location", "occupation"]
    }
  }
});

배포 및 운영

로컬 테스트

개발 중인 에이전트를 로컬에서 테스트해보겠습니다:

npm run dev

브라우저에서 http://localhost:8787에 접속하면 에이전트와 상호작용할 수 있습니다.

Cloudflare Workers에 배포하기

에이전트가 제대로 작동하는 것을 확인했다면 배포해보겠습니다:

# 먼저 API 키를 프로덕션 환경에 업로드
wrangler secret bulk .dev.vars

# 에이전트 배포
npm run deploy

배포가 완료되면 Cloudflare가 제공하는 URL을 통해 전 세계 어디서나 에이전트에 접근할 수 있습니다.

모니터링과 관리

Cloudflare 대시보드에서 에이전트의 사용량, 성능, 오류 로그 등을 실시간으로 모니터링할 수 있습니다. 특히 다음 지표들을 주의 깊게 살펴보세요:

  • 요청 수: 에이전트가 얼마나 많이 사용되고 있는지
  • 응답 시간: 사용자 경험에 직접적인 영향을 미치는 지표
  • 오류율: 에이전트의 안정성을 나타내는 지표
  • 비용: 실제 사용량 기반 과금 현황

Dashboard Analytics 출처: Unsplash

실전 활용 사례와 팁

비즈니스 활용 아이디어

1. 고객 서비스 자동화 기존 챗봇과 달리 AI 에이전트는 고객의 문의를 이해하고 실제 시스템에서 정보를 조회하여 문제를 해결할 수 있습니다. 예를 들어 주문 상태 확인, 배송 일정 변경, 환불 처리 등을 자동으로 수행할 수 있습니다.

2. 콘텐츠 관리 시스템 블로그나 쇼핑몰을 운영한다면, 에이전트가 상품 정보를 업데이트하고, 재고를 관리하며, 심지어 마케팅 콘텐츠를 생성할 수도 있습니다.

3. 데이터 분석 어시스턴트 복잡한 데이터베이스 쿼리를 자연어로 요청하면 에이전트가 적절한 SQL을 생성하고 실행하여 결과를 시각화해주는 시스템을 만들 수 있습니다.

성능 최적화 팁

1. 모델 선택 최적화 작업의 복잡도에 따라 적절한 모델을 선택하세요. 간단한 분류나 요약 작업에는 작고 빠른 모델을, 복잡한 추론이 필요한 작업에는 큰 모델을 사용하는 것이 효율적입니다.

2. 캐싱 전략 자주 요청되는 정보는 Cloudflare의 KV 스토리지에 캐싱하여 응답 속도를 높이고 비용을 절감할 수 있습니다.

3. 에러 핸들링 외부 API 호출이 실패하거나 AI 모델이 예상치 못한 응답을 할 때를 대비한 견고한 에러 핸들링을 구현하세요.

보안 고려사항

AI 에이전트는 사용자를 대신해 작업을 수행하므로 보안이 매우 중요합니다. Cloudflare는 다음과 같은 보안 기능을 제공합니다:

  • HTTP 메시지 서명: 에이전트의 신원을 검증
  • mTLS 인증: 상호 인증을 통한 보안 강화
  • Auth0, WorkOS 등과의 연동: 기업용 인증 시스템과 쉬운 통합

AI 에이전트 개발의 새로운 가능성

Cloudflare AI Agents 플랫폼은 AI 에이전트 개발의 민주화를 이끌고 있습니다. 복잡한 인프라 관리 없이도 전문적인 AI 서비스를 구축할 수 있게 되면서, 더 많은 개발자들이 AI 에이전트 분야에 진입할 수 있게 되었습니다.

특히 주목할 점은 실제 기업들이 24시간 내에 MCP(Model Context Protocol) 서버를 구축했다는 사례입니다. 이는 Cloudflare 플랫폼의 접근성과 실용성을 보여주는 강력한 증거입니다.

앞으로 AI 에이전트는 단순한 자동화를 넘어 진정한 디지털 동료로 발전할 것입니다. 이메일 처리, 일정 관리, 심지어 창작 작업까지 에이전트가 담당하는 시대가 빠르게 다가오고 있습니다.

Cloudflare AI Agents 플랫폼은 이러한 미래를 현실로 만들어주는 도구입니다. 복잡한 설정 없이 바로 시작할 수 있는 접근성, 전 세계를 커버하는 인프라, 그리고 합리적인 비용 구조까지 갖춘 이 플랫폼을 통해 여러분만의 AI 에이전트를 만들어보세요.

AI의 미래는 더 이상 대기업만의 전유물이 아닙니다. 아이디어만 있다면 누구나 세상을 바꿀 수 있는 AI 에이전트를 만들 수 있는 시대가 열렸습니다.


참고자료:

Comments