코딩 한 줄 몰라도 시작하는 LLM 앱 만들기: 첫 번째 챗봇 구조 이해하기
첫 LLM 챗봇을 만들기 전에 알아야 할 프롬프트, API 호출, 입출력 처리, UI의 역할을 초보자 눈높이로 정리합니다.
목차
이 글의 목차
LLM 앱은 마법 상자가 아니라 흐름이다
코딩을 몰라도 LLM 앱을 이해하는 데 필요한 핵심은 문법이 아니라 흐름입니다. 사용자가 질문을 입력하면, 앱은 그 문장을 적당히 정리해 LLM에게 보내고, 돌아온 답변을 화면에 보여줍니다. 여기에 대화 기록 저장, 금칙어 처리, 버튼 UI, 결제 같은 기능이 붙으면 제품처럼 보이기 시작합니다.
첫 챗봇을 만들 때는 “AI가 알아서 답한다”보다 “내 앱이 어떤 입력을 어떤 규칙으로 AI에게 전달한다”에 가깝게 생각하는 편이 좋습니다. 그러면 노코드 툴, 바이브코딩, 개발자 협업 중 어떤 방식으로 만들더라도 구조를 놓치지 않습니다.
첫 챗봇의 4가지 부품

가장 단순한 LLM 챗봇은 보통 네 덩어리로 나눌 수 있습니다.
| 부품 | 역할 | 초보자가 볼 포인트 |
|---|---|---|
| UI | 질문 입력과 답변 표시 | 사용자가 막히지 않는가 |
| 프롬프트 | AI에게 주는 지시문 | 말투와 범위가 분명한가 |
| API 호출 | 앱과 LLM을 연결 | 어떤 모델에 무엇을 보내는가 |
| 입출력 처리 | 답변 정리와 예외 대응 | 빈 답변, 긴 답변, 오류를 다루는가 |
UI는 겉으로 보이는 채팅창입니다. 프롬프트는 챗봇의 성격과 업무 범위를 정합니다. API 호출은 “이 내용을 LLM에게 보내줘”라는 요청이고, 입출력 처리는 사용자의 말과 AI의 답을 제품에 맞게 다듬는 단계입니다.
프롬프트는 앱의 운영 규칙이다
프롬프트를 단순히 질문 문장으로만 보면 챗봇 품질이 흔들리기 쉽습니다. 제품 안의 프롬프트는 운영 규칙에 가깝습니다. 예를 들어 “친절하게 답해줘”보다 “한국어로, 초보자에게, 5문장 이내로, 모르면 모른다고 말해”처럼 역할과 제약을 함께 적는 편이 대체로 안정적입니다.
처음에는 긴 프롬프트보다 짧고 검증하기 쉬운 프롬프트가 낫습니다. 아래 3가지만 정해도 출발점이 생깁니다.
- 대상: 누구에게 답하는가
- 범위: 어떤 질문까지만 답하는가
- 형식: 답변을 어떤 길이와 구조로 줄 것인가
프롬프트는 한 번에 완성되지 않습니다. 실제 사용자가 어떤 식으로 질문하는지 보고 조금씩 고치는 운영 자산으로 봐야 합니다.
API 호출은 주문서 보내기와 비슷하다

API 호출은 어렵게 들리지만 개념은 단순합니다. 앱이 LLM 서비스에 주문서를 보내고, 결과를 받는 과정입니다. 주문서에는 보통 사용자 질문, 시스템 지시문, 이전 대화 일부, 사용할 모델 같은 정보가 들어갑니다.
여기서 초보자가 기억할 점은 “보낸 것만 모델이 본다”는 사실입니다. 사용자가 전에 말한 내용을 계속 기억하게 하려면 앱이 이전 대화를 함께 보내거나, 별도 저장소에서 관련 내용을 찾아 넣어야 합니다. 모델 자체가 내 서비스의 모든 상황을 자동으로 아는 것은 아닙니다.
또한 API 호출에는 실패가 있을 수 있습니다. 네트워크가 느리거나, 응답이 너무 길거나, 사용량 제한에 걸릴 수 있습니다. 첫 버전이라도 로딩 표시, 다시 시도 버튼, 짧은 오류 안내 정도는 생각해두면 사용자가 덜 당황합니다.
입출력 처리가 제품감을 만든다

같은 LLM을 써도 앱마다 체감 품질이 다른 이유는 입출력 처리에 있습니다. 사용자의 질문을 그대로 보내도 되는 경우가 있지만, 빈 질문을 막고, 너무 긴 입력을 줄이고, 민감한 정보 입력을 경고하는 장치가 필요할 수 있습니다.
출력도 마찬가지입니다. AI 답변을 그대로 보여주기보다 문단을 나누고, 링크나 목록을 정리하고, 금지된 표현이 없는지 확인하면 제품의 신뢰도가 올라갑니다. 특히 1인 빌더라면 처음부터 거대한 자동화보다 다음 체크리스트를 우선순위로 두는 편이 현실적입니다.
- 사용자가 빈 질문을 보냈을 때 안내하는가
- 답변 생성 중 상태가 보이는가
- 오류가 났을 때 다음 행동을 알려주는가
- 너무 장황한 답변을 줄일 기준이 있는가
- 저장하면 안 되는 정보를 구분하는가
첫 버전은 작게, 역할은 선명하게
첫 LLM 챗봇의 목표는 모든 질문에 답하는 만능 비서가 아닙니다. 오히려 좁은 문제를 안정적으로 처리하는 작은 도구가 만들기 쉽고 검증도 빠릅니다. 예를 들어 “내 서비스 소개 문구를 다듬는 챗봇”, “고객 문의 초안을 정리하는 챗봇”, “블로그 글감을 구조화하는 챗봇”처럼 역할을 한 문장으로 말할 수 있어야 합니다.
만들기 전에는 다음 문장을 채워보세요.
이 챗봇은 [대상]이 [상황]에서 [결과물]을 얻도록 돕는다.
이 문장이 흐리면 프롬프트도 흐려지고, UI도 복잡해집니다. 반대로 문장이 선명하면 필요한 입력칸, 버튼, 답변 형식이 자연스럽게 줄어듭니다.
마무리: 코딩보다 먼저 볼 것
코딩 한 줄을 몰라도 LLM 앱의 뼈대는 이해할 수 있습니다. 사용자가 입력하고, 앱이 프롬프트와 함께 API로 보내고, 응답을 다듬어 UI에 보여주는 흐름입니다. 첫 챗봇을 만들 때는 모델 이름이나 도구 선택보다 이 흐름을 종이에 먼저 그려보는 것이 더 중요할 때가 많습니다.
작게 시작하세요. 질문 하나, 답변 형식 하나, 실패 처리 하나만 제대로 정해도 첫 LLM 앱은 훨씬 덜 막연해집니다.
관련 글
같은 주제를 다룬 다른 글도 살펴보세요.