본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 15. 16:38

무료 티어가 체험판이 아닌 WordPress AI 챗봇을 만들었습니다. 여기 그 디자인 스토리가 있습니다.

요약

WordPress용 AI 챗봇 플러그인 개발 과정에서의 사용자 경험(UX) 설계와 온보딩 전략을 다룹니다. 결제 장벽을 낮추기 위해 OpenRouter의 무료 키를 활용한 온보딩 프로세스를 구축하고, 기능 제한형 체험판 대신 두터운 무료 티어를 제공하여 사용자 이탈을 방지한 디자인 결정 과정을 설명합니다.

핵심 포인트

  • 결제 카드 등록 단계에서 발생하는 사용자 이탈(Chasm) 문제 해결
  • OpenRouter 무료 키를 활용해 첫 성공 경험을 즉시 제공하는 온보딩 설계
  • 기능을 제한하는 체험판 대신 핵심 기능을 포함한 '두터운 무료 티어' 전략 채택
  • 사용자 경험을 최우선으로 고려한 트레이드오프(Trade-offs) 결정 과정

이것은 제가 만든 플러그인에 대한 리뷰가 아니라, 디자인 스토리입니다. 이 점을 미리 분명히 하고 싶습니다. 왜냐하면 여기서 가장 유용한 부분은 결정 사항과 트레이드오프 (tradeoffs)이며, 이러한 결정들이 실제 결정을 내린 사람으로부터 나왔다는 것을 알아야만 의미가 있기 때문입니다.

이 플러그인은 Rapls AI Chatbot으로, 여러분의 사이트에 챗봇을 배치하고 여러분의 콘텐츠를 바탕으로 방문자의 질문에 답변하는 무료 WordPress 플러그인입니다. 기능이 무엇인지는 나중에 설명하겠지만, 여러분의 시간을 들일 가치가 있는 부분은 왜 이 플러그인이 지금과 같은 형태로 설계되었는가 하는 점입니다.

설치와 첫 채팅 사이의 협곡

초기 버전의 퍼널 (funnel)을 살펴보았을 때, 가장 심각한 이탈은 기능 페이지나 설정 화면에서 발생한 것이 아니었습니다. 그것은 설치 직후, 바로 특정 단계에서 발생했습니다: "API 키를 가져오고 결제를 설정하십시오." 사람들은 플러그인을 설치하고, 활성화하고, 설정을 열었지만, 들어본 적도 없는 AI 제공업체에 카드를 등록하고 가격이 보이지 않는 미터 (meter)를 개설해야 하는 지점에서 떠나버렸습니다.

설치 횟수와 실제로 실행된 채팅 수 사이의 간극은 협곡과 같았습니다. 그리고 그것은 이후 단계의 품질 문제가 아니었습니다. 아무도 품질을 판단할 수 있을 만큼 멀리 가지 못했습니다. 장벽은 카드였습니다.

따라서 첫 번째 진짜 디자인 결정은 챗봇에 관한 것이 전혀 아니었습니다. 그것은 첫 90초에 관한 것이었습니다.

카드 장벽을 없애기 위한 OpenRouter 무료 키

저는 설정 화면의 맨 상단, 다른 무엇보다도 먼저 신용카드가 필요 없는 경로를 가진 온보딩 (onboarding) 패널을 배치했습니다. 이것은 OpenRouter의 무료 키 티어 (free key tier)를 사용합니다. 이메일로 등록하고, 결제가 연결되지 않은 키를 생성한 다음, 이를 붙여넣고 연결 테스트를 누르기만 하면 됩니다. 플러그인은 키를 검증하고 저장하며, 동일한 단계에서 작동하는 무료 모델을 자동으로 선택합니다. "모델 목록을 읽고 하나를 선택하세요"와 같은 우회 과정은 없습니다.

핵심은 첫 번째 약속을 하기 전에 첫 성공 경험을 제공하는 것이었습니다. 누군가 자신의 사이트에서 실제 답변이 작동하는 것을 보고 나서야 진짜 키에 대해 결정하게 하는 것입니다. 몇 개의 무료 티어 토큰은 차가운 요청(cold ask)을 따뜻한 요청(warm one)으로 바꿉니다. 이 패널이 출시된 후, 설치부터 첫 채팅까지의 간극 때문에 밤잠 설칠 일이 사라졌습니다.

무료 티어에는 한계가 있으며, 저는 UI에 그 점을 명시했습니다: 사용량 제한(rate caps), 모델 변경(model churn), 그리고 제공업체 측에서 변경될 수 있는 약관들입니다. 이것은 기반이 되는 것이 아니라 '한 번 시도해 볼' 진입점이며, 자체 키로 가는 경로는 처음부터 눈에 보입니다.

체험판이 아닌 무료 티어

두 번째 결정은 제가 가장 강력하게 방어할 부분입니다. 무료 버전은 기능이 제한된(crippled) 체험판이 아닙니다.

저는 '무료'를 광고하면서도 중요한 모든 기능을 Pro 벽 뒤에 숨기는 플러그인들 때문에 사용자로서 너무 많이 피해를 본 적이 있습니다. 그래서 핵심 기능은 플러그인 비용 없이 작동합니다. 자체 사이트에서 정보를 검색하는 것(Retrieval over your own site), 지식 기반(knowledge base) 구축, 그리고 웹 검색 대체 기능 모두 무료 티어에서 작동합니다. 유일한 지출은 AI 제공업체의 API 사용료이며, 저가 모델을 사용할 경우 작은 사이트는 한 달에 몇 센트에서 몇십 센트 정도의 비용이 발생합니다.

이는 수익 측면에서는 더 나쁜 결정이지만, 저는 의도적으로 그렇게 했습니다. 사람들이 첫 번째 벽 앞에서 이탈한다면, 그 뒤에 숨겨진 세련된 기능 세트는 아무것도 벌어들이지 못합니다. 두꺼운 무료 티어(thick free tier)와 좁은 유료 티어(narrow paid tier)입니다. 유료 버전은 비즈니스가 실제로 성장하는 영역을 위해 존재하며, 이 부분은 나중에 다루겠습니다.

검색 기능 작동 방식

이것이 일반적인 AI 채팅과 차별화되는 점은 작업 순서(order of operations)에 있습니다. 방문자가 무언가를 질문하면, 챗봇은 가장 먼저 사용자의 사이트를 살펴봅니다.

페이지를 색인화하는 크롤링 단계가 있고, 여기에 Q와 A 쌍을 등록할 수 있는 지식 기반이 있으며, CSV 가져오기(import) 기능을 통해 기존 FAQ도 대량으로 옮길 수 있습니다. 질의 시점(query time)에, 검색 기능은 다른 어떤 것보다 먼저 이 색인된 콘텐츠를 대상으로 작동합니다. 만약 답변이 거기에 없다면, 웹 검색이 그 간극을 채우며, 이는 선택된 제공업체가 이미 가지고 있는 검색 기능을 사용하므로 추가 키가 필요 없습니다.

검색 증강 (Retrieval)은 전체 텍스트 검색 (Full-text search)과 벡터 검색 (Vector search)을 결합하며, 이러한 결합은 실제 질문에서 그 진가를 발휘합니다. "pricing"이라는 단어가 전혀 없는 페이지라도 "how much does it cost"라는 질문에 검색 결과로 나타날 수 있는데, 이는 벡터 측면에서 의미를 매칭하는 동안 전체 텍스트 검색이 정확한 용어를 포착하기 때문입니다. 방문자들은 자신만의 언어로 질문하며, 키워드 기반의 정확한 매칭만으로는 대부분의 질문을 놓치게 됩니다. 이 부분이 바로 봇을 당신의 사이트를 한 번도 본 적 없는 일반적인 어시스턴트가 아니라, 질문을 실제로 이해하는 검색창처럼 동작하게 만드는 핵심입니다.

모델 제공업체는 교체 가능합니다: OpenAI, Claude, Gemini 또는 OpenRouter를 동일한 화면에서 변경할 수 있습니다. 저는 보통 작동 여부를 증명하기 위해 무료 OpenRouter 모델로 시작한 뒤, 사용자가 더 나은 일본어 성능을 원할 때 Claude로 전환하도록 안내하는 편입니다. 제공업체 선택권이 사용자에게 있다는 것은 비용 관리권 또한 사용자에게 있다는 것을 의미합니다.

보안은 제가 서두르기를 거부했던 부분입니다

플러그인에 API 키를 넘겨주는 것은 신뢰의 행위이며, 부주의한 처리는 사용자로서 저를 두렵게 만듭니다. 따라서 개발자로서 저는 이 부분에 가장 많은 시간을 할애했으며, 제 이름을 걸고 가장 자신 있게 내세울 수 있는 부분입니다.

API 키는 암호화되어 저장됩니다. 속도 제한 (Rate limiting)은 단일 계층이 아닌 여러 계층에서 실행됩니다. reCAPTCHA v3, 세션 인증 (Session authentication), 그리고 동일 출처 검사 (Same-origin check)가 스팸과 남용을 방지하며, 이들은 나중에 덧붙여진 것이 아니라 처음부터 포함되어 있습니다. 또한 저는 모델의 출력을 맹목적으로 렌더링해야 할 대상이 아니라 신뢰할 수 없는 입력값 (Untrusted input)으로 취급하며, 이는 LLM의 응답이 페이지에 닿는 순간 매우 중요해집니다. 이 플러그인은 WordPress.org 디렉토리 검토 과정을 거치는데, 이는 부분적으로 바로 이 보안 사항에 대해 외부의 시각을 확보하고 싶었기 때문입니다.

저는 정기적인 업무의 일환으로 플러그인 보안을 검토하므로, 제 자신의 플러그인에도 타인의 것을 검토할 때와 동일한 기준을 적용했습니다. 그것이 제가 여기서 원했던 표준이며, "무료니까 이 정도면 됐지"라는 식의 태도가 아닙니다.

솔직한 포지셔닝

비교를 하자면, 가장 명확한 비교 대상은 AI Engine입니다. 솔직한 답변을 드리자면, 우리는 서로 다른 방향을 지향하고 있습니다. AI Engine은 콘텐츠 생성, 이미지 생성 등 다루는 영역이 매우 넓은 올인원 (all-in-one) 도구입니다. 반면 제 것은 의도적으로 범위를 좁혔습니다. 오직 사용자의 사이트 정보를 바탕으로 답변하는 챗봇 (chatbot)에 집중했기에, 기능의 확장성보다는 검색 품질 (retrieval quality)과 보안 (security)에 예산을 투입했습니다.

추상적인 관점에서 어느 쪽이 더 낫다고 할 수는 없습니다. 만약 하나의 도구로 다양한 AI 작업을 수행하고 싶다면 AI Engine이 적합합니다. 하지만 자신의 콘텐츠에 기반을 둔 챗봇을 원한다면, 그것이 바로 제가 구축한 영역입니다. 서로 다른 용도의 도구인 셈입니다.

유료 티어, 그리고 그것이 중요한 시점

29달러의 일회성 결제 방식인 Pro 버전이 있지만, 저는 여러분이 그것이 정말 필요해질 때까지 기다려야 한다고 생각합니다. Pro 버전은 운영 중인 비즈니스가 성장함에 따라 필요하게 되는 기능들을 다룹니다: 대화 분석 (conversation analytics), 채팅 전 리드 캡처 (lead capture), WooCommerce 제품 추천, 업무 시간 외 자동 전환 및 상담원 연결, LINE 연동, 그리고 반복적인 API 비용을 절감하기 위한 응답 캐싱 (response caching) 등이 포함됩니다. 이 모든 기능은 상업적 환경에서 그 가치를 증명할 것입니다. 하지만 핵심 아이디어가 제대로 작동하는지 확인하는 단계에서 이 기능들을 평가할 필요는 없습니다. 초기 며칠간의 사용은 설계 의도에 따라 완전히 무료 티어 (free tier) 범위 내에서 이루어집니다.

솔직한 주의사항

답변의 품질은 선택한 모델 (model)에 따라 달라지므로, 실제 서비스에 적용하기 전에 반드시 테스트하십시오. 실제 질문 몇 가지를 던져보고 비판적인 시각으로 답변을 읽어보시기 바랍니다. 또한, 플러그인이 무료라고 해서 AI가 무료인 것은 아닙니다. 제공업체의 API 사용료는 별도의 비용입니다. 저비용 모델로 시작하고, 꼭 필요한 경우에만 상위 모델로 업그레이드하십시오. 저 또한 제 사이트들에서 동일하게 적용하고 있습니다.

제작자로서 이 이야기를 하는 이유

저는 이 글을 "훌륭한 플러그인을 발견했습니다"라고 쓸 수도 있었고, 그랬다면 글이 더 매끄럽게 읽혔을 것입니다. 하지만 그것은 정직하지 못한 행동이었을 것입니다. 왜냐하면 제가 이 플러그인을 직접 만들었기 때문입니다. 위의 결정 사항들은 제가 직접 내린 선택이며, 제가 책임져야 할 부분이라는 점을 알고 계실 때만 읽을 가치가 있습니다: 수익을 포기하면서까지 제공한 넉넉한 무료 티어, 실제 전환 깔때기 (funnel) 문제를 해결한 온보딩 패널, 그리고 타협하지 않고 수행한 보안 작업들 말입니다. 만약 이 내용 중 어떤 것이라도 여러분이 자신만의 것을 만드는 데 도움이 된다면, 그것이 바로 제가 전달하고 싶었던 부분입니다.

만약 여러분이 WordPress를 운영하면서 방문자들이 콘텐츠에 바로 나와 있는 답변을 찾지 못해 헤매는 모습을 본 적이 있다면, 이것을 시도해 보는 것은 무료이며 제거하는 것도 빠릅니다. 최악의 경우라도, 단 몇 분의 시간만 소요될 뿐입니다.

링크

저는 WordPress 플러그인을 제작하며, https://raplsworks.com/에서 AI 도구 (AI tooling) 및 보안에 관한 글을 씁니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0