본문으로 건너뛰기

© 2026 Molayo

Qiita헤드라인2026. 06. 18. 20:13

Gemini API로 아저씨 말투(Ojisan Koubun) 메이커를 만들었습니다 【WordPress/PHP/전용 키 설계】

요약

Gemini API를 활용하여 WordPress 환경에서 '아저씨 말투'를 생성하는 도구 구현 방법을 소개합니다. API 키를 프론트엔드에 노출하지 않고 PHP를 통해 안전하게 호출하며, 서비스별 전용 API 키를 설계하여 무료 할당량 충돌을 방지하는 아키텍처를 다룹니다.

핵심 포인트

  • admin-ajax.php를 이용한 Gemini API의 안전한 서버 측 호출 방식
  • GCP 프로젝트 및 API 키 분리를 통한 서비스별 무료 할당량 관리 전략
  • WordPress wp-config.php를 활용한 API 키 보안 관리
  • 프롬프트 엔지니어링을 통한 특정 말투(이모지, 가타카나 등) 재현

「おはよう😊今日もがんばってネ💪」와 같이 이모지가 가득한 “아저씨 말투(Ojisan Koubun)”를 AI로 자동 생성하는 아저씨 말투 메이커를 만들었습니다.

WordPress에 작은 AI 도구를 추가하고 싶은 분, Gemini API를 프론트엔드에 노출시키지 않고 사용하고 싶은 분, 그리고 「무료 할당량을 서로 침범하지 않는 API 키 운용」으로 고민하고 있는 분들에게 참고가 되길 바라며 구현 방침을 정리합니다.

이번 개발 및 이 글의 집필은 Claude Code (Anthropic사의 AI)와의 협업으로 진행되었습니다. AI 시대의 개발 스타일 실천 사례로서 참고가 된다면 좋겠습니다.

  • WordPress 상에서 AI 말투 메이커를 늘리는 기본 구성
  • admin-ajax.php를 경유하여 Gemini API를 안전하게 호출하는 방법
  • 도구마다 전용 API 키를 분리하여 무료 할당량의 충돌을 방지하는 설계
  • 아저씨 말투를 재현하는 프롬프트(Prompt) 구성 방법
  • 기존 서비스의 카운터·일일 제한을 유용하는 사고방식

Honegumi 대표이자 응용정보기술자 자격을 가진 엔지니어 × 마케터입니다. IT 계열 회사 임원으로 4년, 독립하여 4년 차이며, 최근에는 사상 주도형 서비스 개발의 일인자로서 AI를 활용한 서비스 개발을 이어가고 있습니다.

서비스 URL:

입력 예시:

お疲れさま (수고했어)

출력 이미지:

お疲れサマ😊🍵 いつも頑張ってて偉いネ👏✨ たまには息抜きも大事だヨ〜🍰 (수고했어😊🍵 항상 열심히 해서 기특하네👏✨ 가끔은 휴식도 중요해~🍰)

기존의 코이즈미 말투 메이커·타고사쿠 말투 메이커와 동일한 구성입니다.

WordPress 고정 페이지 (00_code.html 상당의 커스텀 HTML)
↓ fetch()
/wp-admin/admin-ajax.php
...

포인트는 API 키를 JavaScript 측에 노출하지 않는 것입니다. 프론트는 WordPress의 AJAX 엔드포인트에 텍스트를 전달하기만 하면 되며, Gemini API로의 요청은 PHP 측에서 처리합니다.

기존의 DiagnosisCounterSystemojisan을 한 줄 추가하는 것만으로 누적 사용 횟수 관리에 포함할 수 있습니다.

'ojisan' => [
'name' => '아저씨 말투 메이커',
'icon' => '😎',
...

누적 횟수는 wp_options에 저장합니다. IP와 날짜 키에 의한 일일 제한(16:00 리셋)도 기존 메이커와 동일한 메커니즘을 그대로 사용하고 있습니다. 새로운 서비스마다 아키텍처를 바꾸지 않는 것이 개인 개발에서는 유지보수의 용이성으로 직결됩니다.

타고사쿠 말투 메이커에서는 이용이 적은 정치인 변명 메이커의 키를 공유했습니다. 하지만 아저씨 말투는 검색 수요가 커서 액세스가 늘어날 것을 전제로 합니다.

그래서 이번에는 아저씨 말투 메이커 전용 GCP 프로젝트 + 전용 키 GEMINI_API_KEY_OJISAN을 준비했습니다. Gemini API의 무료 할당량은 GCP 프로젝트 단위로 할당되기 때문에, 도구마다 키를 나누어 두면 인기 있는 도구가 다른 도구의 할당량을 다 써버리는 사고를 방지할 수 있습니다.

코드 측은 「전용 키 우선 · 미정의 시 공통 키로 폴백(Fallback)」으로 해두면, 키가 설정되지 않았을 때도 서비스가 중단되지 않습니다.

$ojisan_api_key = '';
if (defined('GEMINI_API_KEY_OJISAN') && !empty(GEMINI_API_KEY_OJISAN)) {
$ojisan_api_key = GEMINI_API_KEY_OJISAN;
...

키는 하드코딩하지 않고 모두 wp-config.phpdefine()으로 관리합니다.

아저씨 말투는 「이모지 다용 · 어미의 가타카나화 · 과도한 배려 · 갑작스러운 자기 이야기」의 4요소로 구성됩니다. 프롬프트에서는 이 형식을 명시하면서도, 입력문의 의미를 유지한 채 “겉모습만” 아저씨 말투로 변환하도록 지시하고 있습니다.

당신은 입력문을 「아저씨 말투」로 변환하는 AI입니다.
원래 문장의 의미는 유지하면서, 다음 특징을 더해 자연스러운 일본어로 변환해 주세요.
- 이모지·카오모지(Emoticon)를 여러 개 사용한다
...

온도(Temperature)는 높게(0.9) 설정하여 매번 다른 패턴이 나오도록 하고, maxOutputTokens는 단문용으로 제한했습니다. LINE 메시지 한 통 정도의 분량으로 맞추는 것이 요령입니다.

엔터테인먼트 목적의 도구이므로, 실존 인물에 대한 비방 중상이나 괴롭힘(Harassment)에 사용되지 않도록 프롬프트에서 공격적·차별적 표현을 내뱉지 않도록 제약을 걸었습니다. 어디까지나 「자신이나 주변인의 문장을 소재로 삼아 웃는」 용도를 상정한 설계입니다.

아저씨 말투 (Ojisan Koubun) 메이커는 기존의 문장 생성기 (Syntax Maker) 구성을 유용함으로써 짧은 시간 안에 추가할 수 있었습니다. 구현상의 포인트는 다음 3가지입니다.

  • API 키는 반드시 서버 사이드 (Server-side)에서 다룰 것
  • 액세스가 늘어나는 툴은 전용 키 + 전용 GCP 프로젝트를 사용하여 무료 할당량 (Free tier)을 분리할 것
  • 카운터나 일일 제한 등의 공통 기구는 재사용할 것

인기가 높아질 것 같은 툴일수록, 처음에 「전용 키 설계」를 해두면 나중에 편합니다.

본 툴은 엔터테인먼트·패러디 목적의 툴입니다. 생성되는 내용은 허구이며, 실재하는 인물·단체에 대한 비방 중상이나 괴롭힘 (Harassment)을 목적으로 하지 않습니다.

AI 자동 생성 콘텐츠

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

원문 바로가기
0

댓글

0