Next.js AI SDK Tutorial - 3 - Generate Text
- Next.js 프로젝트 설정 후, AI 텍스트 생성 기능을 구현합니다. 🚀
- OpenAI와 통신하는 API 라우트 핸들러를 먼저 구축합니다. ⚙️
/api
폴더 내에 completion
폴더를 생성하고 route.ts
파일을 만듭니다. 📁
generateText
함수와 OpenAI 제공자를 임포트하여 OpenAI 모델을 사용합니다. 📦
- GPT-4.0-turbo 모델을 지정하고, 프롬프트를 설정하여 텍스트를 생성합니다. 🤖
- 생성된 텍스트를 JSON 형태로 반환하는 API 엔드포인트를 구축합니다. 📤
- ThunderClient를 사용하여 API 엔드포인트를 테스트하고 응답을 확인합니다. 🧪
- 사용자 입력을 받고 AI 응답을 표시하는 UI를 구현합니다. 🎨
ui/completion
폴더 내에 page.tsx
파일을 생성하여 UI 컴포넌트를 만듭니다. 🖼️
- React의
useState
를 사용하여 입력 값을 관리하고 API를 호출합니다. 🎣
- 로딩 상태, 에러 처리, 그리고 AI 응답을 UI에 표시합니다. ⏳
- 폼 제출 핸들러를 구현하여 API 라우트 핸들러를 호출합니다. ✍️
- 에러 발생 시 사용자에게 에러 메시지를 표시합니다. ⚠️
- API 라우트 핸들러에서 하드 코딩된 프롬프트 대신 요청 바디에서 프롬프트를 받도록 수정합니다. 📤
- 에러 핸들링을 추가하여 API 호출 실패 시 적절한 응답을 반환합니다. 🚨
- UI에서 모델 이름을 변경하여 에러를 강제로 발생시켜 에러 처리 기능을 테스트합니다. ✅
- 텍스트 완성 기능은 Q&A, 콘텐츠 요약 등 다양한 시나리오에 유용합니다. 💡
- API 호출 비용을 고려하여 학습 시 간단한 프롬프트부터 시작하고 OpenAI 사용량 대시보드를 주시합니다. 💰
- 스트리밍 응답을 통해 사용자 경험을 개선하는 방법을 알아봅니다. 🚄