Chat SDK

์ด์šฐ์ฒ ยท2025๋…„ 10์›” 20์ผ

๐Ÿง  Chat SDK๋ž€?
Chat SDK๋Š” Next.js 14์™€ AI SDK๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“  ์˜คํ”ˆ์†Œ์Šค ์ฑ—๋ด‡ ํ…œํ”Œ๋ฆฟ์ด์•ผ. ๋น ๋ฅด๊ฒŒ ๊ฐ•๋ ฅํ•œ ์ฑ—๋ด‡ ์•ฑ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋„๊ตฌ๋“ค์ด ํฌํ•จ๋ผ ์žˆ์–ด.

๐Ÿš€ ์ฃผ์š” ๊ธฐ๋Šฅ
Next.js App Router

๊ณ ๊ธ‰ ๋ผ์šฐํŒ… ๊ธฐ๋Šฅ์œผ๋กœ ๋น ๋ฅด๊ณ  ๋ถ€๋“œ๋Ÿฌ์šด ํŽ˜์ด์ง€ ์ „ํ™˜

React Server Components์™€ Server Actions๋กœ ์„ฑ๋Šฅ ํ–ฅ์ƒ

AI SDK

ํ…์ŠคํŠธ ์ƒ์„ฑ, ๊ตฌ์กฐํ™”๋œ ๊ฐ์ฒด, ํˆด ํ˜ธ์ถœ ๋“ฑ์„ ์œ„ํ•œ ํ†ตํ•ฉ API

๋™์ ์ธ ์ฑ— UI๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํ›… ์ œ๊ณต

xAI, OpenAI, Fireworks ๋“ฑ ๋‹ค์–‘ํ•œ ๋ชจ๋ธ ์ง€์›

shadcn/ui

Tailwind CSS ๊ธฐ๋ฐ˜์˜ ์Šคํƒ€์ผ๋ง

Radix UI ์ปดํฌ๋„ŒํŠธ๋กœ ์ ‘๊ทผ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ ํ™•๋ณด

๋ฐ์ดํ„ฐ ์ €์žฅ

Neon Serverless Postgres๋กœ ์ฑ„ํŒ… ๊ธฐ๋ก๊ณผ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ์ €์žฅ

Vercel Blob์œผ๋กœ ํŒŒ์ผ ์ €์žฅ

Auth.js

๊ฐ„๋‹จํ•˜๊ณ  ์•ˆ์ „ํ•œ ์ธ์ฆ ๊ธฐ๋Šฅ ์ œ๊ณต

๐Ÿค– ๋ชจ๋ธ ์ œ๊ณต์ž
๊ธฐ๋ณธ์ ์œผ๋กœ Vercel AI Gateway๋ฅผ ํ†ตํ•ด ์—ฌ๋Ÿฌ AI ๋ชจ๋ธ์— ์ ‘๊ทผํ•ด. ๊ธฐ๋ณธ ์„ค์ •์€ xAI์˜ grok-2-vision-1212, grok-3-mini ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด.

Vercel์— ๋ฐฐํฌํ•˜๋ฉด ์ธ์ฆ์€ ์ž๋™ ์ฒ˜๋ฆฌ๋จ

Vercel ์™ธ ๋ฐฐํฌ ์‹œ .env.local ํŒŒ์ผ์— AI_GATEWAY_API_KEY ์„ค์ • ํ•„์š”

OpenAI, Anthropic, Cohere ๋“ฑ ๋‹ค๋ฅธ ๋ชจ๋ธ๋กœ ์‰ฝ๊ฒŒ ์ „ํ™˜ ๊ฐ€๋Šฅ

# AI Gateway API ํ‚ค (Vercel ์™ธ ๋ฐฐํฌ ์‹œ ํ•„์ˆ˜)
AI_GATEWAY_API_KEY=your_ai_gateway_api_key_here

# ์ธ์ฆ ๊ด€๋ จ ์„ค์ • (Auth.js ์‚ฌ์šฉ ์‹œ)
NEXTAUTH_SECRET=your_nextauth_secret_here
NEXTAUTH_URL=http://localhost:3000

# ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค์ • (Neon ์‚ฌ์šฉ ์‹œ)
DATABASE_URL=your_neon_postgres_connection_url

# ํŒŒ์ผ ์ €์žฅ์†Œ (Vercel Blob ์‚ฌ์šฉ ์‹œ)
BLOB_READ_WRITE_TOKEN=your_vercel_blob_token

p```


๐Ÿงฉ ์„ค์น˜ ๋ฐ ๋กœ์ปฌ ์‹คํ–‰ ๋ฐฉ๋ฒ•
Vercel CLI ์„ค์น˜

bash
npm i -g vercel
Vercel ๋ฐ GitHub ๊ณ„์ •๊ณผ ์—ฐ๊ฒฐ

bash
vercel link
ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๋‹ค์šด๋กœ๋“œ

bash
vercel env pull
ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ์‹คํ–‰

bash
pnpm install
pnpm dev
๋ธŒ๋ผ์šฐ์ €์—์„œ ํ™•์ธ http://localhost:3000

โš ๏ธ .env ํŒŒ์ผ์€ ์ ˆ๋Œ€ ์ปค๋ฐ‹ํ•˜์ง€ ๋งˆ์„ธ์š”. API ํ‚ค์™€ ์ธ์ฆ ์ •๋ณด๊ฐ€ ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ์–ด์š”.
profile
๊ฐœ๋ฐœ ์ •๋ฆฌ ๊ณต๊ฐ„ - ์—…๋ฌด์ผ๋•Œ๋„ ์žˆ๊ณ , ๊ณต๋ถ€์ผ๋•Œ๋„ ์žˆ๊ณ ...

0๊ฐœ์˜ ๋Œ“๊ธ€