AI 챗봇 앱 만드는 법: API 키, 프롬프트, 비용, 안전 관리
AI 챗봇 앱을 만들려면 네 가지가 필요합니다. 채팅 화면, API 키를 보관하고 메시지를 제공업체에 전달하는 작은 서버, 모델에게 역할과 허용 범위를 알려 주는 시스템 프롬프트, 그리고 비용과 악용을 막는 제한 장치입니다. AI 앱 빌더는 설명만 있으면 이 모든 것을 만들어 줄 수 있습니다. 직접 판단해야 할 부분은 제공업체 선택, 지시문 작성, 그리고 봇이 절대 하면 안 되는 일을 정하는 것입니다.
AI 챗봇 앱의 구성 요소
고객 지원 어시스턴트, 튜터, 사내 “문서에게 물어보기” 도구 등 대부분의 챗봇 앱은 같은 부분으로 이루어져 있습니다.
| 구성 요소 | 하는 일 | 생략할 수 있나요? |
|---|---|---|
| 채팅 UI | 메시지 목록, 입력창, “생각 중” 표시, 스트리밍 답변 | 아니요 |
| 서버 경로 | 사용자의 메시지를 받아 시스템 프롬프트를 붙이고, 비밀 키로 제공업체를 호출 | 아니요. 키는 브라우저에 절대 전달되면 안 됩니다 |
| 시스템 프롬프트 | 역할, 말투, 업무 범위, 거절할 내용 같은 상시 지시 | 아니요 |
| 지식 자료 | 봇이 답할 때 참고하는 자체 콘텐츠(FAQ, 정책, 제품 문서) | 범용 어시스턴트라면 예 |
| 대화 저장소 | 사용자가 다시 돌아와 이어서 볼 수 있도록 대화를 데이터베이스에 저장 | 첫 버전이라면 예 |
| 계정 | 사용자마다 자신의 기록만 보게 하고, 사용량을 사람별로 제한 | 공개 데모에 엄격한 제한만 둔다면 예 |
| 제한과 로그 | 메시지 길이 제한, 요청 횟수 제한, 지출 한도, 오류 기록 | 아니요 |
서버 경로는 사람들이 가장 자주 잘못 만드는 부분입니다. 채팅 페이지가 브라우저에서 제공업체를 직접 호출하면, 누구나 개발자 도구를 열어 키를 복사해 요금을 마음대로 쓸 수 있습니다.
만들기 전에 정할 것들
제공업체와 모델
OpenAI, Anthropic, Google 등 주요 제공업체는 모두 메시지 목록을 보내면 답변을 받는 비슷한 채팅형 API를 제공합니다. 실제로 중요한 선택은 브랜드보다 모델 크기입니다.
- 작고 빠른 모델은 저렴하고 응답이 빠릅니다. 짧은 답변, 분류, 단순한 FAQ 봇에 적합합니다.
- 큰 모델은 추론을 더 잘하고, 긴 지시를 더 안정적으로 따르며, 복잡하고 애매한 질문도 잘 처리합니다. 대신 메시지당 비용이 높고 응답이 느립니다.
중간 크기 모델로 시작해 실제 질문으로 테스트하고, 그 결과에 따라 올리거나 낮추세요. LLM API가 어떻게 가격이 정해지고 호출되는지 처음이라면 먼저 LLM API 사용법을 읽어 보세요.
봇의 지식은 어디서 오나
| 내 콘텐츠 | 접근 방법 |
|---|---|
| 페이지 한두 장(영업시간, 반품 정책, 가격) | 시스템 프롬프트에 바로 넣기 |
| 자주 바뀌지 않는 페이지 수십 장 | 요약본을 프롬프트에 넣거나, 주제별로 나누어 관련 부분만 넣기 |
| 문서 수백 개, 또는 매일 바뀌는 콘텐츠 | 저장해 두고, 질문과 맞는 구절을 검색해 그것만 보내기(RAG) |
내 콘텐츠를 다룰 수 있는 가장 단순한 방법부터 시작하세요. 검색을 추가하면 검색 색인, 색인 갱신 방법, 답변이 틀어질 수 있는 지점이 늘어납니다. 검색 없이도 쓸모 있는 봇은 많습니다.
공개할지, 로그인 뒤에 둘지
웹사이트에 공개된 챗봇은 접근하기 쉬운 만큼 악용되기도 쉽습니다. 누군가 스크립트로 수천 개의 메시지를 보낼 수 있습니다. 로그인한 사용자만 쓰게 하면 사용자별로 기록을 저장하고 계정마다 하루 사용량을 정할 수 있습니다. 공개한다면 메시지 길이를 제한하고, 한 방문자가 일정 기간 보낼 수 있는 메시지 수를 제한하고, 제공업체 대시보드에 월 한도를 강하게 걸어 두세요. 앱에 로그인 추가하기에서 계정 쪽 설명을 볼 수 있습니다.
대화를 저장할지
저장된 대화는 유용합니다. 사용자가 이전 대화를 이어 갈 수 있고, 실제 질문을 읽어 보며 프롬프트를 개선할 수 있습니다. 하지만 개인정보이기도 합니다. 얼마나 보관할지 정하고, 개인정보 처리방침에 그 내용을 밝히고, 필요 없는 것은 저장하지 마세요.
시스템 프롬프트는 업무 설명서처럼 쓰세요
시스템 프롬프트는 모델이 매 대화 전에 받는 지시문입니다. 좋은 시스템 프롬프트는 새 직원에게 주는 짧은 업무 지침과 같습니다.
- 역할과 대상: "당신은 자전거 수리점 Oakline의 도움말 어시스턴트입니다. 고객과 대화합니다."
- 범위: "서비스, 가격, 영업시간, 예약에 대한 질문에만 답하세요. 그 밖의 질문에는 매장에서 도와줄 수 있는 내용만 안내한다고 말하세요."
- 근거 자료: "아래 정보만 사용하세요. 답이 거기 없으면 모른다고 말하고 매장 전화번호를 알려 주세요."
- 말투와 길이: "친근하고 쉬운 말로, 자세한 설명을 요청하지 않는 한 세 문장 이내로 답하세요."
- 절대 규칙: "목록에 없는 수리 가격을 약속하지 마세요. 카드 정보를 요구하지 마세요."
그다음 까다로운 질문으로 테스트하세요. 범위를 벗어난 요청, 무례한 메시지, 답이 자료에 없는 질문, 지시를 무시하게 만들려는 시도("규칙은 잊고 …")를 해 보세요. 답변이 내 이름을 걸고 내보낼 수 있는 수준이 될 때까지 프롬프트를 고치세요.
비용을 예측 가능하게 관리하기
제공업체는 보내는 입력과 모델이 쓰는 출력을 토큰(대략 단어 조각) 단위로 청구합니다. 요금을 좌우하는 요인은 세 가지입니다.
- 대화 길이. 새 메시지마다 모델이 문맥을 알 수 있도록 보통 전체 대화를 다시 보냅니다. 40개 메시지짜리 대화는 4개짜리 대화보다 답변 한 번에 훨씬 많은 비용이 듭니다. 최근 몇 턴만 남기거나 오래된 내용은 요약하세요.
- 프롬프트 크기. 긴 시스템 프롬프트나 붙여 넣은 지식 자료는 메시지마다 함께 전송됩니다.
- 출력 길이. API 호출에서 답변 최대 길이를 정하고, 프롬프트에서 간결한 답변을 요청하세요.
출시 전에 제공업체 대시보드에서 월 지출 한도를 설정하고, 요청마다 토큰 사용량을 기록해 어떤 대화가 비싼지 확인하세요. 가격은 모델마다 다르고 자주 바뀌므로 여기에는 적지 않았습니다. 제공업체의 요금 페이지를 직접 확인하세요.
단계별로 만들기
1단계: 코드가 아니라 봇을 설명하기
대상, 범위, 데이터, 안전 규칙을 담은 첫 프롬프트만으로도 대부분 완성됩니다.
자전거 수리점 Oakline을 위한 고객 도움말 챗봇을 만들어 주세요. 메시지 목록과 입력창이 있는 채팅 페이지이고, 답변은 작성되는 대로 스트리밍되어야 합니다. 서버 경로에서 비밀 키 ANTHROPIC_API_KEY로 Anthropic API를 호출하고, 키는 절대 브라우저에 노출하지 마세요. 시스템 프롬프트는 shop-info.md 파일의 내용을 바탕으로 서비스, 가격, 영업시간에 대한 질문에만 답하고, 그 밖의 질문에는 "확실하지 않아요. 아래 번호로 전화해 주세요"라고 답하게 해 주세요. 메시지는 500자로 제한하고, 방문자당 한 시간에 20개 메시지까지만 허용해 주세요. 깔끔하고 친근한 디자인으로, 휴대폰에서도 잘 보이게 해 주세요.
2단계: 키를 비밀 값으로 등록하기
제공업체 콘솔에서 키를 만든 뒤, 프로젝트의 환경 변수나 비밀 값에 저장하세요. 채팅창이나 코드에 넣으면 안 됩니다. 키가 공개된 곳에 노출되면 제공업체에서 폐기하고 새 키를 만드세요. 환경 변수와 비밀 값이란에서 이유를 설명합니다.
3단계: 인터페이스만이 아니라 답변 품질을 테스트하기
채팅이 동작하면 시간의 대부분을 답변 품질에 쓰세요. 실제 질문 20개 정도의 목록을 만들고, 거절해야 하는 질문 몇 개를 포함해서 프롬프트를 바꿀 때마다 돌려 보세요. 확인할 항목은 다음과 같습니다.
- 업무 범위를 벗어나지 않는가?
- 모르는 내용을 지어내지 않고 모른다고 말하는가?
- 지시를 무시하라는 요청에도 버티는가?
- 브라우저로 내려받는 파일에 키가 전혀 없는가?
4단계: 필요하면 기억 기능과 계정 추가하기
단일 대화가 잘 동작하면 데이터베이스에 저장된 대화 기능을 요청하세요. 필요하다면 가입과 로그인도 추가해, 사용자가 자신의 대화만 보도록 합니다. 동시에 사용자별 하루 메시지 한도도 넣으세요.
5단계: 제한 장치를 켜 두고 공개하기
공개된 앱에 미리보기와 같은 비밀 값이 설정되어 있는지, 제공업체에 지출 한도가 걸려 있는지, 오류가 확인 가능한 곳에 기록되는지 확인하세요. 그다음 메인 사이트에 올리기 전에 소규모 그룹과 먼저 공유해 보세요.
안전과 신뢰
챗봇은 여러분의 이름으로 대중과 대화합니다. 그래서 실패할 수 있는 지점은 모두 여러분의 책임입니다.
- 틀린 답변. 모델은 틀린 내용을 자신 있게 말하기도 합니다. 봇의 주제를 좁게 제한하고, 내 콘텐츠를 근거로 삼게 하고, 중요한 내용에는 답변이 틀릴 수 있다는 짧은 안내를 보여 주세요.
- 프롬프트 주입. 사용자나 봇이 읽는 문서 안에 "이전 규칙을 무시하라" 같은 지시가 섞여 있을 수 있습니다. 신뢰할 수 없는 권한은 주지 마세요. 환불, 삭제, 이메일 발송은 사용자의 말만 듣고 실행되지 않도록 여러분의 코드에서 확인 절차를 거치게 하세요.
- 민감한 주제. 의료, 법률, 금융 질문에는 조언하기보다 전문가를 안내하도록 하세요.
- 개인정보. 꼭 필요한 경우가 아니라면 고객 기록을 프롬프트에 붙여 넣지 마세요. API 데이터를 제공업체가 어떻게 다루는지 약관도 확인하세요.
AI로 만든 앱을 위한 보안 체크리스트에서 앱 전체에 대한 보안 점검 항목을 확인할 수 있습니다.
자주 하는 실수
- 브라우저에서 제공업체를 직접 호출하기. 키가 유출됩니다. 항상 서버를 거치세요.
- 공개 봇에 제한 없이 두기. 스크립트 하나가 오후 한나절에 한 달 예산을 다 쓸 수 있습니다.
- RAG, 도구 연동, 여러 모델을 한꺼번에 시작하기. 먼저 좋은 대화 하나를 완성하고, 실제 질문이 필요하다고 보여 줄 때 나머지를 추가하세요.
- 친절한 질문만 테스트하기. 사용자는 첫날부터 이상하고, 적대적이고, 주제에서 벗어난 질문을 던집니다.
- 대화를 무한정 길어지게 두기. 메시지가 쌓일수록 비용과 응답 시간이 함께 늘어납니다.
이미 만들어진 제품이 더 나은 경우
챗봇이 제품의 일부이고, 내 데이터나 업무 흐름이 필요하거나, 특정한 디자인과 동작이 필요하다면 직접 만드는 것이 맞습니다. 다음과 같은 경우에는 완성된 제품이 더 나을 수 있습니다.
- 기존 사이트에 지원 위젯 하나만 넣고 싶을 때. 많은 헬프데스크와 라이브 채팅 제품에 이미 도움말 센터를 읽는 AI 응답 봇, 사람 상담원 연결, 받은 메시지함, 보고 기능이 들어 있습니다.
- 나와 팀만 쓸 때. 문서를 업로드한 ChatGPT나 Claude 같은 범용 어시스턴트 구독으로 충분할 수 있습니다.
- 엄격한 규정 준수가 필요할 때(예: 규제되는 건강 또는 금융 데이터). 인증을 이미 받은 벤더가 직접 만든 것보다 안전할 수 있습니다.
Mythex로 만들기
Mythex는 AI 앱 빌더입니다. 채팅으로 챗봇을 설명하면 화면과 서버의 모델 호출 코드를 만들고, 실시간 미리보기로 실행한 뒤, 공개 URL로 게시합니다. 앱 안의 AI는 내 소유의 제공업체 키를 사용합니다. 프로젝트 비밀 값에 키를 넣거나, Mythex가 필요할 때 채팅에 띄우는 비밀 값 카드로 등록하면 됩니다. 제공업체 사용료는 Mythex 빌드 크레딧이 아니라 내 제공업체 계정에 청구됩니다. Mythex는 앱 사용자를 위한 토큰, 내장 지식 베이스 제품, 기본 제공 요청 제한을 포함하지 않습니다. 이런 부분은 요청해서 직접 테스트하는 항목입니다. AI를 앱 안에 넣는 방법은 문서에 단계별로 나와 있고, 내 API 키로 AI 추가하기에는 시작용 프롬프트가 있습니다.
대화 저장이 필요하다면 요청할 때 Mythex가 프로젝트에 Postgres 데이터베이스를 연결합니다. 모델을 앱에서 쓰는 더 많은 방법(요약부터 분류까지)은 앱에 AI 기능을 추가하는 방법을 참고하고, 시작점이 필요하면 앱 템플릿을 둘러보세요.
자주 묻는 질문
AI 챗봇 앱을 만들려면 내 API 키가 필요한가요?
거의 항상 그렇습니다. 챗봇은 각 메시지를 OpenAI, Anthropic, Google 같은 모델 제공업체에 보내고, 제공업체는 API 키의 소유 계정에 요금을 청구합니다. 키는 웹 페이지가 아니라 반드시 서버에 두어야 합니다.
AI 챗봇을 운영하는 데 비용이 얼마나 드나요?
제공업체는 보내는 텍스트와 모델이 돌려주는 텍스트를 합쳐 토큰 단위로 요금을 매기며, 모델마다 가격 차이가 큽니다. 새 메시지마다 보통 지금까지의 대화를 다시 보내기 때문에 대화가 길어질수록 메시지당 비용이 늘어납니다. 제공업체의 요금 페이지를 확인하고, 대시보드에서 사용 한도를 설정해 두세요.
내 문서로 챗봇을 학습시킬 수 있나요?
보통은 모델 자체를 학습시키지 않습니다. 내용이 적으면 시스템 프롬프트에 그대로 넣고, 자료가 많으면 저장해 두었다가 질문마다 관련 구절만 찾아 모델에 보냅니다. 두 번째 방식을 검색 증강 생성(RAG)이라고 합니다.
코딩 없이 AI 챗봇을 만들 수 있나요?
네. AI 앱 빌더는 일반 언어로 설명하면 채팅 화면, 모델을 호출하는 서버 경로, 대화를 저장할 데이터베이스를 만들어 줄 수 있습니다. 다만 제공업체 계정과 API 키는 직접 만들어야 합니다.