OPEN HYPER STEP
← 목록으로 (ai-startup)
AI-STARTUP · 42 / 100
ai-startup
CHAPTER 42 / 100
읽기 약 2
FUNCTION

AI 챗봇: 고객 지원 자동화


핵심 개념

24/7 응답·티켓 분류·에스컬레이션 — CS 시간 80% 절감.

본문

AI CS 봇 아키텍처

📋 코드 (15줄)
사용자 질문
    ↓
1. 의도 분류 (LLM)
   - 결제·기능·버그·기타
    ↓
2. RAG 검색 (FAQ·문서)
    ↓
3. AI 답변 생성
    ↓
4. 자신감 평가
   - 90%+ → 자동 답변
   - 50~90% → 답변 + "도움 안 되면 알려주세요"
   - <50% → 사람 에스컬레이션
    ↓
5. 사용자 만족도 추적

통합 — 채널톡 / Crisp

TYPESCRIPT📋 코드 (33줄)
// 채널톡 webhook
app.post('/webhook/channeltalk', async (req, res) => {
  const { event, message, userId } = req.body;
  if (event !== 'message.created') return res.json({ ok: true });

  // RAG 검색
  const context = await searchKnowledgeBase(message.text);

  // 답변 생성
  const result = await generateText({
    model: anthropic('claude-sonnet-4-6'),
    system: `You are CS for [Product].
Be concise, friendly.
If unsure, say "잠시만요, 사람 상담사 연결해드릴게요."`,
    messages: [
      { role: 'system', content: `Context:\n${context}` },
      ...message.history,
      { role: 'user', content: message.text },
    ],
  });

  // 응답 전송
  await fetch(`https://api.channel.io/v5/channels/${CHANNEL_ID}/messages`, {
    method: 'POST',
    headers: { 'x-access-token': CHANNEL_TOKEN },
    body: JSON.stringify({
      userId,
      message: result.text,
    }),
  });

  res.json({ ok: true });
});

에스컬레이션 로직

TYPESCRIPT📋 코드 (27줄)
async function determineEscalation(message: string, aiResponse: string) {
  const result = await generateObject({
    model: openai('gpt-4o-mini'),
    schema: z.object({
      confidence: z.number().min(0).max(1),
      complexity: z.enum(['low', 'medium', 'high']),
      shouldEscalate: z.boolean(),
      reason: z.string().optional(),
    }),
    prompt: `User: ${message}
AI: ${aiResponse}

Should this be escalated to human?
- High emotion → escalate
- Refund/legal → escalate
- AI uncertain → escalate
- Account issue → escalate`,
  });

  return result.object;
}


if (escalation.shouldEscalate) {
  await assignToHuman({ userId, conversationId, reason });
  await sendMessage(`도움이 더 필요하신 것 같아 사람 상담사 연결해드릴게요. 곧 답장 드립니다.`);
}

FAQ 자동 학습

TYPESCRIPT📋 코드 (22줄)
// 매월 — 새 FAQ 후보 추출
const ticketsLastMonth = await db.ticket.findMany({
  where: { createdAt: { gte: lastMonth } },
});

const result = await generateObject({
  model: anthropic('claude-sonnet-4-6'),
  schema: z.object({
    candidates: z.array(z.object({
      question: z.string(),
      answer: z.string(),
      frequency: z.number(),
    })),
  }),
  prompt: `Extract recurring FAQ from these tickets:

${ticketsLastMonth.map(t => `- ${t.message}`).join('\n')}

Group similar questions. Suggest the answer based on resolutions.`,
});

// 검토 후 — knowledge base 추가

비용 vs 효과

📋 코드 (19줄)
[수동 CS]
- 일 100 ticket
- 1 ticket = 5분
- 일 8시간

[AI CS (80% 자동)]
- 80 ticket 자동 (즉시)
- 20 ticket 사람 (어려운 것)
- 일 1.5시간

→ 일 6.5시간 절감
→ 시간당 $30 = $195/일
→ 월 $5,800 절감

AI 비용:
- 100 ticket × $0.02 = $2/일
- 월 $60

ROI: $5,740/월 절감

다음 챕터

CH.43 "AI 문서 요약".


AI 프롬프트
🤖 AI에게 잘 물어보는 법 — 모델·전략별 프롬프트
무료

월 $0 — 검증·시작 단계

AI 챗봇 CS을 무료 도구만으로
시작하는 방법을 알려줘.
소자본

월 $20~50 — MVP·초기 운영

월 $20~50 예산으로 AI 챗봇 CS을
검증·MVP 단계까지 진행하는 전략은?
프로덕션

월 $200~500 — 성장 단계

AI 챗봇 CS을 프로덕션 단계로
확장할 때 필요한 도구·운영 체계는?
스택

풀스택 — 도구 조합 분석

2026년 AI 챗봇 CS 관련 도구 5개를
조합한 추천 스택을 알려줘.

⭐ 이것만 기억하세요
AI 챗봇: 고객 지원 자동화 이 3가지만 확실히 잡으세요
1.AI CS = 80% 자동 + 20% 인간 = 시간 6배 절감
2.RAG (FAQ·문서) + 자신감 평가 = 정확한 답변
3.FAQ 자동 학습 → 시간 갈수록 자동률 ↑


공유하기
진행도 42 / 100