카카오톡으로 연결하는 웹페이지 요약 서비스 - 기획편

소개

👉먼저 읽어보시면 좋습니다.

안녕하세요! 이전에 제가 만든 URL 요약 봇이 많은 관심을 받았었는데요, 이를 발전시켜 새로운 서비스를 준비하게 되어 소개드립니다.

기획 배경

제가 URL을 무작정 저장만 해두고 나중에 읽지 않는 습관이 있었는데, 많은 분들이 같은 고민을 하고 계시더라구요. 이런 문제를 해결할 수 있는 서비스를 만들고 싶었지만, 두 가지 큰 걸림돌이 있었습니다:

  1. 접근성 문제: 사용자들이 쉽게 접근하고 사용할 수 있어야 함

  2. 비용 문제: 서비스 운영 비용의 현실적인 해결책 필요

문제 해결의 실마리

최근 두 가지 해결책을 찾았습니다:

  • 카카오 채널을 통한 접근성 향상

  • 4o-mini의 합리적인 가격과 성능으로 비용 문제 해결

이를 바탕으로 "카카오톡으로 연결하는 웹페이지 요약 서비스"를 기획하게 되었습니다. 누구나 일상적으로 사용하는 카카오톡을 통해, 저장해둔 웹페이지를 쉽고 빠르게 요약해서 볼 수 있는 서비스를 만들어보려고 합니다.

GPT 활용 전략

GPT를 활용한 요구사항 분석의 새로운 접근

기존의 GPT 활용 방식은 대부분 사용자가 질문하고 AI가 답변하는 단방향 소통이었습니다. 하지만 이 프로젝트에서는 더 효과적인 요구사항 도출을 위해 새로운 접근법을 시도했습니다.

기존 방식의 한계

  • 개발자가 생각하지 못한 부분을 발견하기 어려움

  • 질문의 범위가 제한적

  • 요구사항 누락 가능성 존재

새로운 접근법: 역방향 질문 기법

  1. AI 주도 질문

    • AI가 프로젝트의 다양한 측면에 대해 질문

    • 개발자는 답변을 통해 생각을 구체화

    • 프로젝트의 맹점을 발견하는 효과

  2. 지속적 피드백 루프

    • AI의 질문 ➡️ 개발자 답변 ➡️ AI의 추가 질문

    • 각 단계마다 요구사항이 더욱 구체화

    • 실현 가능성 검증 동시 진행

2. 효과적인 프롬프트 설계

당신은 KakaoTalk 채널을 통해 입력된 URL의 콘텐츠를 요약하고 
제목, 요약, 링크, 태그와 함께 저장하는 서비스 개발 프로젝트에 대한 
상세 정보를 수집하는 AI 보조자입니다.

<사용자_입력>
{{QUESTION}}
</사용자_입력>

<이전_응답>
{{PREVIOUS_RESPONSE}}
</이전_응답>

<사고과정>
1. 사용자 입력과 이전 응답 분석
2. 프로젝트의 주요 측면 식별
3. 부족한 중요 세부사항 고려
4. 정보가 필요한 영역 우선순위화
5. 다음 측면들 고려:
   - 기술적 요구사항
   - UI/UX
   - 데이터 처리/저장
   - 카카오톡 통합
   - 요약 알고리즘
   - 태깅 시스템
   - 성능 기대치
   - 보안/개인정보
   - 확장성
   - 테스팅
</사고과정>

<요약>
[대화 요약 및 주요 포인트]
</요약>

<질문>
[구체적이고 상세한 후속 질문]
</질문>

프롬프트 작성 시 핵심 고려사항

1. 명확한 역할 정의

  • AI의 역할과 목적을 명확히 설정합니다. AI가 수행해야 할 구체적인 업무 범위와 권한을 상세히 정의하여 모호성을 제거합니다.

  • 프로젝트의 범위와 제약사항을 포함합니다. 실제 개발 환경과 리소스 제약을 고려하여 현실적인 범위를 설정하고, 이를 AI가 이해할 수 있도록 명시합니다.

2. 구조화된 사고 프로세스

  • 단계별 분석 과정을 정의합니다. 복잡한 문제를 작은 단위로 분해하고, 각 단계에서 고려해야 할 요소들을 체계적으로 나열하여 빠짐없이 검토합니다.

  • 중요 고려사항을 나열합니다. 기술적 요구사항, 보안, 확장성, 유지보수성 등 프로젝트의 성공을 위해 반드시 검토해야 할 항목들을 구체적으로 제시합니다.

3. 피드백 메커니즘

  • 이전 응답 참조 기능을 구현합니다. AI가 이전 대화 내용을 기억하고 참조할 수 있도록 하여, 일관성 있는 답변과 누적된 맥락을 유지할 수 있게 합니다.

  • 대화 맥락을 유지합니다. 프로젝트의 진행 상황과 결정사항을 지속적으로 추적하고, 이를 바탕으로 다음 단계의 의사결정에 반영할 수 있도록 합니다.

4. 구체적인 출력 형식 정의

  • 원하는 결과물의 형식을 명확히 지정합니다. JSON, 마크다운 등 특정 형식으로 출력이 필요한 경우, 예시와 함께 상세한 형식을 제공합니다.

  • 출력의 품질 기준을 설정합니다. 코드의 경우 실행 가능성, 문서의 경우 가독성과 완성도 등 출력물이 충족해야 할 기준을 구체적으로 명시합니다.

5. 예외 처리 및 제약사항

  • 발생 가능한 예외 상황을 정의합니다. AI가 처리하기 어려운 상황이나 특별한 처리가 필요한 케이스를 미리 파악하고 대응 방안을 마련합니다.

  • 프로젝트 특수성을 반영합니다. 업계 표준, 법적 규제, 보안 요구사항 등 프로젝트에 특화된 제약사항을 명확히 전달하여 준수하도록 합니다.

6. 반복적 개선 메커니즘

  • 결과물의 품질을 지속적으로 평가합니다. AI의 출력을 평가하고 피드백을 제공하여, 프롬프트를 지속적으로 개선할 수 있는 체계를 구축합니다.

  • 프롬프트 버전 관리를 실시합니다. 프롬프트의 변경 이력을 관리하고, 각 버전의 장단점을 분석하여 최적의 프롬프트를 도출합니다.

7. 컨텍스트 최적화

  • 핵심 정보를 우선 제공합니다. AI가 가장 중요한 정보를 먼저 처리할 수 있도록 컨텍스트의 순서와 구조를 최적화합니다.

  • 불필요한 정보를 제거합니다. 토큰 제한을 고려하여 꼭 필요한 정보만을 포함시키고, 중복되거나 부가적인 정보는 제외합니다.

이러한 방식으로 프로젝트의 범위가 명확해지거나 더 이상 답변할 내용이 없을 때까지 GPT-4o로 분석을 진행한 후, GPT-O1-preview로 최종 요구사항 분석 문서를 작성했습니다.

프롬프트 전문

당신은 KakaoTalk 채널을 통해 입력된 URL의 콘텐츠를 요약하고 제목, 요약, 링크, 태그와 함께 저장하는 서비스 개발 프로젝트에 대한 상세 정보를 수집하는 AI 보조자입니다. 당신의 목표는 프로젝트 요구사항과 구현 세부사항을 이해하기 위해 철저하고 상세한 질문을 하는 것입니다.

먼저, 다음 사용자 입력을 읽으십시오:

<사용자_입력>
{{QUESTION}}
</사용자_입력>

이전 응답이 있다면 다음과 같이 제공됩니다:

<이전_응답>
{{PREVIOUS_RESPONSE}}
</이전_응답>

<사고과정>
1. 사용자 입력과 이전 응답(있는 경우)을 분석하십시오.
2. 프로젝트의 주요 측면을 명시적으로 식별하고 나열하십시오.
3. 이미 제공된 정보와 아직 부족한 중요한 세부사항을 고려하십시오.
4. 더 많은 정보가 필요한 영역의 우선순위를 정하십시오.
5. 다음과 같은 프로젝트의 다양한 측면을 고려하십시오:
   - 기술적 요구사항
   - 사용자 인터페이스 및 경험
   - 데이터 처리 및 저장
   - KakaoTalk 채널과의 통합
   - 요약 알고리즘
   - 태깅 시스템
   - 성능 기대치
   - 보안 및 개인정보 보호 고려사항
   - 확장성
   - 테스팅 및 품질 보증
6. 각 측면을 구현하는 데 있어 잠재적인 도전 과제나 위험을 고려하십시오.
7. 분석을 바탕으로 프로젝트에 대한 더 많은 정보를 수집하기 위한 관련성 있고 구체적인 질문을 formulate하십시오.
8. 질문이 중복되지 않고 새롭고 중요한 세부사항을 밝히는 것을 목표로 하는지 확인하십시오.
9. 모든 출력은 반드시 한국어로 작성하십시오.
</사고과정>

사고 과정을 마친 후, 다음 형식으로 응답을 제시하십시오:

<요약>
[지금까지의 대화에 대한 간결한 요약을 제공하고, 논의된 주요 포인트를 강조하십시오.]
</요약>

<질문>
[프로젝트에 대한 구체적이고 상세한 질문을 하십시오.]
</질문>

철저하고 전문적이며 프로젝트 요구사항과 구현 세부사항을 이해하는 데 필요한 모든 정보를 수집하는 데 집중하십시오.

결과와 배운 점

요구사항 분석과 설계 TODO가 명확하게 나왔고 이를 Cursor로 개발을 시작하니까 일의 순서가 정해져있어 작업속도가 매우 빨랐고, 예상하지 못한 추가 개발사항이 적어서 작업량을 예측하고 나눠서 작업하기에도 매우 편했습니다. 그 결과 중간에 DB설정이 꼬여서 날린 시간을 포함해서 10시간 정도만에 동작하는 서비스 초안을 완성했습니다.

한국사이트 스크린샷

현재까지의 성과

✅ 기본 프레임워크 구축 (약 10시간 소요)

  • 체계적인 요구사항 분석으로 명확한 개발 방향 수립

  • Cursor를 활용한 효율적인 개발 진행

  • DB 설정 이슈 해결 및 기본 기능 구현 완료

🎯 개발 효율성

  • 명확한 TODO 리스트로 작업 예측성 향상

  • 체계적인 작업 분배로 시간 낭비 최소화

  • 예상치 못한 이슈 최소화

📋 추가 개발 예정 사항

  1. 콘텐츠 확장

    • 유튜브 영상 요약 기능 추가

  2. 사용자 관리 시스템

    • 카카오 계정 연동을 통한 로그인 구현

    • 계정과 userID 연결 시스템 구축

  3. 편의 기능

    • 랜덤 리마인드 기능 구현

    • 저장된 콘텐츠 관리 시스템

  4. 인프라 구축

    • 클라우드 서비스 서버 마이그레이션

    • 안정적인 서비스 운영 환경 구축

이러한 체계적인 접근 방식은 초기 버전 완성에 큰 도움이 되었으며, 앞으로 남은 기능들도 동일한 방식으로 효율적으로 구현해 나갈 예정입니다. 특히 요구사항 분석 단계에서의 철저한 준비가 전체 개발 과정의 효율성을 크게 높였다는 점이 주목할 만합니다.

주요 성과와 교훈

요구사항 분석 단계에서 GPT를 활용한 체계적인 접근이 프로젝트 성공의 핵심이었습니다. AI와의 '질문-답변' 방식을 뒤집어 '미처 생각하지 못한 요구사항'을 발견하는 과정은 매우 효과적이었죠. 이를 통해:

  1. 개발 시간 단축 (10시간 내 기본 기능 구현)

  2. 작업 효율성 극대화

  3. 예측 가능한 개발 프로세스 수립

앞으로의 방향

현재 서비스의 기본 뼈대는 완성되었지만, 더 나은 사용자 경험을 위한 여정은 계속됩니다. 유튜브 요약, 카카오 계정 연동, 랜덤 리마인드 등 다양한 기능을 순차적으로 추가해 나갈 예정입니다. 이 과정에서도 초기에 사용했던 체계적인 접근 방식을 유지하여, 효율적이고 안정적인 개발을 진행하고자 합니다.

이번 프로젝트를 통해 얻은 가장 큰 교훈은 '좋은 시작이 반이다'라는 말이 개발에서도 똑같이 적용된다는 것입니다. 체계적인 기획과 분석이 있었기에 빠르고 효율적인 개발이 가능했습니다. 앞으로도 이러한 경험을 바탕으로 더 나은 서비스를 만들어 나가겠습니다. 🚀

6
2개의 답글

👉 이 게시글도 읽어보세요