Gemini 및 Vercel의 AI SDK를 사용하는 시장 조사 에이전트

Vercel의 AI SDK는 TypeScript에서 AI 기반 애플리케이션, 사용자 인터페이스, 에이전트를 빌드하기 위한 강력한 오픈소스 라이브러리입니다.

이 가이드에서는 AI SDK를 사용하여 Google 생성형 AI 제공업체를 통해 Gemini API에 연결하고 자동화된 시장 동향 분석을 실행하는 TypeScript로 Node.js 애플리케이션을 빌드하는 방법을 안내합니다. 최종 애플리케이션은 다음을 수행합니다.

  1. Google 검색과 함께 Gemini를 사용하여 현재 시장 동향을 조사하세요.
  2. 조사에서 구조화된 데이터를 추출하여 차트를 생성합니다.
  3. 연구 결과와 차트를 전문적인 HTML 보고서로 결합하고 PDF로 저장합니다.

기본 요건

이 가이드를 완료하려면 다음이 필요합니다.

  • Gemini API 키 Google AI Studio에서 무료로 만들 수 있습니다.
  • Node.js 버전 18 이상
  • npm, pnpm, yarn와 같은 패키지 관리자

애플리케이션 설정

먼저 프로젝트의 새 디렉터리를 만들고 초기화합니다.

npm

mkdir market-trend-app
cd market-trend-app
npm init -y

pnpm

mkdir market-trend-app
cd market-trend-app
pnpm init

털실

mkdir market-trend-app
cd market-trend-app
yarn init -y

종속 항목 설치

그런 다음 AI SDK, Google 생성형 AI 제공자, 기타 필요한 종속 항목을 설치합니다.

npm

npm install ai @ai-sdk/google zod
npm install -D @types/node tsx typescript && npx tsc --init

TypeScript 컴파일러 오류를 방지하려면 생성된 tsconfig.json에서 다음 줄을 주석 처리하세요.

//"verbatimModuleSyntax": true,

pnpm

pnpm add ai @ai-sdk/google zod
pnpm add -D @types/node tsx typescript

털실

yarn add ai @ai-sdk/google zod
yarn add -D @types/node tsx typescript && yarn tsc --init

TypeScript 컴파일러 오류를 방지하려면 생성된 tsconfig.json에서 다음 줄을 주석 처리하세요.

//"verbatimModuleSyntax": true,

이 애플리케이션은 차트를 렌더링하고 PDF를 만들기 위해 서드 파티 패키지 PuppeteerChart.js도 사용합니다.

npm

npm install puppeteer chart.js
npm install -D @types/chart.js

pnpm

pnpm add puppeteer chart.js
pnpm add -D @types/chart.js

털실

yarn add puppeteer chart.js
yarn add -D @types/chart.js

puppeteer 패키지를 사용하려면 스크립트를 실행하여 Chromium 브라우저를 다운로드해야 합니다. 패키지 관리자에서 승인을 요청할 수 있으므로 메시지가 표시되면 스크립트를 승인해야 합니다.

API 키 구성

GOOGLE_GENERATIVE_AI_API_KEY 환경 변수를 Gemini API 키로 설정합니다. Google 생성형 AI 제공자는 이 환경 변수에서 API 키를 자동으로 찾습니다.

MacOS/Linux

export GOOGLE_GENERATIVE_AI_API_KEY="YOUR_API_KEY_HERE"

Powershell

setx GOOGLE_GENERATIVE_AI_API_KEY "YOUR_API_KEY_HERE"

자체 애플리케이션 구축

이제 애플리케이션의 기본 파일을 만들어 보겠습니다. 프로젝트 디렉터리에 main.ts라는 새 파일을 만듭니다. 이 파일에서 로직을 단계별로 빌드합니다.

모든 항목이 올바르게 설정되었는지 빠르게 테스트하려면 main.ts에 다음 코드를 추가하세요. 이 기본 예에서는 generateText을 사용하여 Gemini로부터 간단한 대답을 가져옵니다.

import { google } from "@ai-sdk/google";
import { generateText } from "ai";

async function main() {
  const { text } = await generateText({
    model: google("gemini-3.7-flash"),
    prompt: 'What is plant-based milk?',
  });

  console.log(text);
}

main().catch(console.error);

더 복잡한 작업을 추가하기 전에 이 스크립트를 실행하여 환경이 올바르게 구성되었는지 확인하세요. 터미널에서 다음 명령어를 실행합니다.

npm

npx tsc && node main.js

pnpm

pnpm tsx main.ts

털실

yarn tsc && node main.js

모든 항목이 올바르게 설정되면 Gemini의 대답이 콘솔에 출력됩니다.

Google 검색으로 시장 조사하기

최신 정보를 얻으려면 Gemini의 Google 검색 도구를 사용 설정하세요. 이 도구가 활성화되면 모델이 웹을 검색하여 프롬프트에 답변하고 사용한 소스를 반환합니다.

main.ts의 콘텐츠를 다음 코드로 바꿔 분석의 첫 번째 단계를 실행합니다.

import { google } from "@ai-sdk/google";
import { generateText } from "ai";

async function main() {
  // Step 1: Search market trends
  const { text: marketTrends, sources } = await generateText({
    model: google("gemini-3.7-flash"),
    tools: {