[IT/기술] [AI 블로그 자동화 가이드] 4편 — 프롬프트 & 기술 구현
Part 4: 프롬프트 & 템플릿
/prompts 디렉토리에서 프로덕션용 템플릿 20개 전체를 확인하세요.
이건 일반적인 "블로그 포스트 써줘" 프롬프트가 아니다. 각각은 특정 워크플로우 단계와 콘텐츠 타입에 맞춰져 있다.
템플릿 카테고리:
- 수집 프롬프트 (4개) - 소스에서 구조화된 데이터 추출
- 분석 프롬프트 (4개) - 토픽 점수, 앵글 식별
- 리서치 프롬프트 (4개) - 심층 조사, 소스 검증
- 작성 프롬프트 (6개) - 다양한 틈새와 형식
- 편집 프롬프트 (2개) - De-slop, SEO 최적화
아래는 프로덕션 품질 프롬프트 엔지니어링이 어떻게 생겼는지 보여주는 3개 대표 프롬프트다:
예시 1: 수집 프롬프트 (TechCrunch RSS)
사용 사례: 테크 뉴스 자동화된 일일 수집
데이터 수집 에이전트로서 작업:
작업: TechCrunch RSS 피드 가져와서 파싱, 구조화된 JSON 출력
RSS URL: https://techcrunch.com/feed/
필수 필드:
- title: 기사 헤드라인
- url: 전체 기사 URL
- published_at: ISO 8601 타임스탬프
- summary: 설명의 첫 200자
- source: "TechCrunch"
- category: RSS 카테고리 태그에서 추출
필터링 규칙:
1. 최근 24시간 내 퍼블리시된 기사만
2. 스폰서/파트너 콘텐츠 제외 (제목에 "Sponsored" 체크)
3. 팟캐스트 에피소드와 이벤트 공지 제외
4. 최소 제목 길이: 20자
출력 형식: JSON
data/raw/techcrunch-YYYY-MM-DD-HHMM.json에 저장
코드 요구사항:
- Python feedparser 라이브러리 사용
- 네트워크 에러 우아하게 처리 (지수 백오프로 3회 재시도)
- User-Agent 헤더 추가: "BlogBot/1.0 (Educational)"
- 파싱 에러를 collection.log에 로깅
예상 출력: 최근 24시간의 테크 뉴스 기사 15-25개, 구조화되어 분석 준비 완료.
예시 2: 작성 프롬프트 (Tech 분석)
사용 사례: 리서치 데이터로부터 퍼블리싱 준비된 테크 기사 생성
전문 테크 라이터로서 테크 블로그용 분석 기사 작성
토픽: [TOPIC_NAME]
앵글: [SELECTED_ANGLE]
리서치 데이터: [RESEARCH_JSON]
목표 길이: 1,200-1,500단어
독자: 테크 전문가, 기업가, 애호가
가독성: Grade 9-10 (Hemingway 기준)
구조:
1. 훅 (100-150단어)
- 구체적인 예시나 놀라운 사실로 시작
- 일반적인 오프닝 금지 ("In today's digital landscape...")
- 지금 왜 중요한지 독자 끌어당기기
2. 맥락 (200-250단어)
- 무슨 일이 일어나고 있나? (뉴스/이벤트)
- 누가 관련돼 있나? (핵심 플레이어)
- 왜 지금? (타이밍/촉매)
- 역사적 선례 (간단한 비교)
3. 분석 (600-800단어) - 핵심
- 네 독특한 앵글 (이 기사가 존재하는 이유)
- 데이터, 인용, 예시로 뒷받침
- 반론 다루기
- 가독성 위해 H3 헤더로 부섹션
4. 영향 (200-300단어)
- 그래서 뭐? 독자가 왜 신경써야 하나?
- 누가 이기고 지나?
- 다음엔 무슨 일?
- 더 넓은 업계 영향
5. 결론 (100-150단어)
- 미래 지향적 관점 (요약 아님)
- 도발적인 엔딩이나 질문
- "In conclusion..." 금지
음성 & 스타일:
✅ 해야 할 것:
- 능동태 ("Apple launched" not "was launched by Apple")
- 짧은 단락 (최대 2-4문장)
- 다양한 문장 길이
- 일반화보다 구체적 예시
- 가끔 축약형 (it's, doesn't)
- 직접적인 진술
❌ 피해야 할 것:
- AI 클리셰: "delve", "landscape", "robust", "leverage"
- 모호함: "might", "could", "possibly" (진짜 불확실할 때만)
- 수동태
- 일반적인 전환: "Furthermore", "Moreover"
- 사과하는 언어: "It's important to note"
톤: 권위 있지만 거만하지 않게. 분석적이지만 건조하지 않게.
예시 3: 편집 프롬프트 (De-slop AI 콘텐츠)
사용 사례: 초안 기사에서 AI 작성 패턴 제거
AI 생성 콘텐츠 정제 전문 편집자로 작업
작업: 제공된 기사를 편집해 AI 표식 제거하고 가독성 향상
편집 체크리스트:
1. AI 클리셰 제거
- "delve into" → "examine", "explore"
- "landscape" → "industry", "market"
- "robust" → "strong", "effective"
- "leverage" → "use"
- "seamlessly" → 삭제
2. 모호한 언어 제거
- "might be" → "is" (증거 있으면)
- "could potentially" → "could"
- "it appears that" → "data shows"
- "seems to suggest" → "suggests"
3. 수동태 활성화
찾기: "[thing] was [verb]ed by [actor]"
고치기: "[actor] [verb]ed [thing]"
4. 단락 짧게
규칙: 단락당 최대 2-4문장
자연스러운 중단점에서 긴 단락 분할
5. 문장 길이 다양화
리듬 만들기: 짧음(4-8단어), 중간(10-20), 길게(20-30), 짧음
6. 일반적인 것을 구체적으로
- "many users" → "1,247명의 설문 응답자"
- "recently" → "2월 15일"
- "significant increase" → "23% 증가"
7. 중복 제거
같은 요점 반복하는 문장 삭제
8. 단어 선택 개선
- "utilize" → "use"
- "commence" → "start"
- "in order to" → "to"
9. 일반적인 오프닝 고치기
삭제/재작성:
- "In today's digital landscape..."
- "In recent years..."
- "It's no secret that..."
대신: 구체적 예시, 놀라운 사실, 또는 직접 진술
10. 결론 강화
피하기: "In conclusion...", 요약
대신: 도발적 질문, 예측, 영향
가독성 테스트:
- Hemingway Editor: Grade 9 이하 목표
- 소리 내어 읽기: 대화체처럼 들리나?
- 클리셰 카운트: 편집 후 0이어야 함
Part 5: 기술 구현
첫 워크플로우 설정하기
사전 요구사항:
- Claude Code (또는 동급 AI 코딩 도구)
- Python 3.9+
- 버전 관리용 Git
- 기본적인 터미널/커맨드 라인 지식
1단계: 워크플로우 디렉토리 생성
mkdir tech-blog-workflow
cd tech-blog-workflow
mkdir .claude/commands data output
2단계: 의존성 설치
pip install feedparser praw yfinance selenium undetected-chromedriver beautifulsoup4
3단계: 슬래시 커맨드 설정
.claude/commands/collect.md 생성:
# /collect - Collect Tech News
최근 테크 뉴스를 설정된 소스에서 수집해 data/raw/YYYY-MM-DD.json에 저장.
소스:
- TechCrunch RSS
- Hacker News top 30
- Reddit r/technology rising (최근 4시간)
출력 형식: {title, url, source, published_at, score} JSON 배열
Alternative AI 도구
이 가이드는 예시로 Claude Code를 사용하지만, 아키텍처는 어떤 AI 도구든 작동한다. 적응하는 방법:
GPT-4 (OpenAI API)
강점:
- 훌륭한 지시 따르기와 추론
- 빠른 API 응답
- 모든 언어용 SDK가 있는 잘 문서화된 API
- 함수 호출 지원 (구조화된 데이터 추출에 유용)
약점:
- 긴 컨텍스트엔 Claude보다 비쌈 ($10/1M 입력 토큰 vs $3/1M)
- 더 짧은 컨텍스트 윈도우 (128K vs Claude의 200K)
- 약간 더 장황한 출력 (de-slopping 더 필요)
구현 팁:
- gpt-4-turbo나 gpt-4o 모델 사용
- 프롬프트 간결하게—GPT-4는 짧은 지시 선호
- 형식화된 텍스트 요청 대신 JSON 출력엔 함수 호출 사용
- 장황함 줄이려면 프롬프트에 "Be concise" 추가
비용 비교 (기사당):
- 수집/분석: ~$0.05-0.10
- 작성: ~$0.15-0.25
- 총: ~$0.20-0.35/기사 (Claude의 ~$0.10-0.20 대비)
코드 예시:
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY")
response = client.chat.completions.create(
model="gpt-4-turbo",
messages=[
{"role": "system", "content": "You are a tech news analyst."},
{"role": "user", "content": prompt}
],
temperature=0.7
)
Gemini (Google AI)
강점:
- 엄청난 컨텍스트 윈도우 (Gemini 1.5 Pro에서 1M 토큰)
- 단일 프롬프트에 전체 리서치 데이터셋 처리 가능
- 좋은 다국어 지원
- 무료 티어 (60 요청/분)
약점:
- Claude/GPT-4보다 일관성 떨어지는 지시 따르기
- 프롬프트에 더 많은 예시 필요 (few-shot learning)
- 출력 품질 변동 큼 (재시도 로직 필요)
- AI 클리셰 피하기 약함
구현 팁:
- 거대 컨텍스트 윈도우 활용—모든 리서치 데이터를 프롬프트에 직접 덤프
- 원하는 출력 형식 2-3개 예시 제공 (few-shot prompting)
- 더 창의적인 작성엔 temperature 0.8-0.9 설정
- 항상 de-slop 편집 패스 실행 (Claude보다 AI 표식 많음)
- 최고 품질엔 Gemini 1.5 Pro 사용 (Flash는 너무 불일치)
최적 사용 사례: 리서치 단계—50개 기사 + 전체 텍스트를 먹이고 합성 요청
Local LLM (Ollama, LM Studio)
강점:
- 제로 API 비용 (하드웨어 투자 후)
- 완전한 데이터 프라이버시 (아무것도 머신 밖으로 안 나감)
- Rate limit 없음
- 작성 스타일로 파인튜닝 가능
약점:
- GPT-4/Claude 대비 상당한 품질 갭 (특히 분석)
- 강력한 GPU 필요 (좋은 모델엔 24GB+ VRAM)
- 느린 추론 (기사당 30-60초)
- 더 많은 프롬프트 엔지니어링 필요
추천 모델:
- Llama 3.1 70B: 최고 오픈소스, 48GB VRAM 필요
- Mixtral 8x7B: 품질/속도 균형 좋음, 24GB VRAM
- Llama 3.1 8B: 가장 빠름, 소비자 GPU 작동, 품질은 떨어짐
품질 기대치:
- 수집/분석: GPT-4의 80% (수용 가능)
- 작성: 60-70% (많은 편집 필요)
- 리서치 합성: 50% (복잡한 추론에서 어려움)
하이브리드 접근 (추천):
- 수집/분석엔 로컬 LLM (API 비용 60% 절약)
- 작성엔 Claude/GPT-4 (여기서 품질 중요)
- 편집엔 로컬 LLM (규칙 기반 작업, 잘 작동)
Docker 설정 (선택, 프로덕션용)
왜 Docker? 의존성 격리, 환경 변수 처리, 쉬운 배포.
Dockerfile 예시:
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "workflow_runner.py"]
모니터링 & 디버깅
모든 것 로깅:
import logging
logging.basicConfig(
filename='workflow.log',
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
logging.info(f"Collected {len(articles)} articles")
메트릭 추적:
- 실행당 수집된 기사
- 선택된 토픽
- 퍼블리싱 성공률
- 퍼블리시된 포스트로부터의 트래픽 (주간 리뷰)
일반적인 이슈:
- Rate limiting: 딜레이 추가, API 키 사용
- 인코딩 에러: 어디서나 utf-8 사용, 폴백으로 errors='ignore'
- 오래된 콘텐츠: published_at 타임스탬프 체크, 오래된 기사 필터
- API 변경: 의존성 버전 고정, 소스 사이트 모니터
실시간 채팅
4개 메시지실시간채팅도 돼
이욜
메뉴마다 채팅을 다르게 할수 잇네요 ㅋㅋ
맞아..