직원 두 명을 AI로 고용하기: 2편 – GPT 리서처 봇 프롬프트 설계
0. 1편 요약과 2편에서 할 이야기
1편에서 우리는 “직원 두 명을 AI로 고용한다”는 비유로 전체 구조를 그림으로 그려봤습니다. 한 명은 아마존에서 소싱 후보를 찾아오는 GPT 리서처 봇, 다른 한 명은 매일 새벽에 상품을 정리·삭제·등록하는 AI 운영 에이전트였습니다.
그때 핵심 메시지는 단순했습니다.
- 사람 직원이 하던 일을
- “리서치”와 “운영”으로 나누고
- 각각을 GPT 봇과 에이전트에게 맡긴다.
이번 2편에서 할 일은 그중 첫 번째 직원, GPT 리서처 봇의 업무지시서를 제대로 만들어 주는 것, 즉 프롬프트 설계를 실무적으로 끝까지 뽑아보는 것입니다. 목표는 단 하나입니다.
“복붙해서 쓸 수 있는 프롬프트 템플릿 하나를 만든다.”
이 템플릿만 있으면, 카테고리와 조건만 바꿔서 아마존 소싱 후보 URL 리스트를 안정적으로 뽑을 수 있습니다.
1. GPT 리서처 봇의 역할 재정의
우리가 만들 GPT 봇은 거창한 존재가 아닙니다.
이 봇의 역할을 사람 말로 번역하면 딱 이겁니다.
“아마존에서 조건에 맞는 상품을 찾아, 후보 리스트를 CSV로 정리해 오는 리서처.”
즉, 이 봇은:
- 하는 일
- 지정된 카테고리·키워드로 아마존 상품을 찾는다.
- 가격·리뷰·평점 조건을 만족하는 후보를 추린다.
- “상품명, URL(또는 추가 정보)” 형태로 정리한다.
- 하지 않는 일
- 실제 주문·결제
- 국내 마켓에 등록
- 관부가세·수수료 계산
- 정책 최종 판단
실무에서 가장 많이 하는 실수는 GPT에게 “다 해달라”고 시키는 것입니다.
이 글에서는 애초에 역할을 “리서처”로 좁게 고정해 두고, 나머지는 다음 편에서 나올 운영 에이전트에게 넘기는 구조로 설계합니다.
2. 좋은 프롬프트의 4가지 원칙
GPT에게 “아마존에서 괜찮은 상품 30개만 알려줘”라고만 하면 결과는 매번 들쭉날쭉합니다.
이걸 실무에서 쓰려면, 프롬프트를 “질문”이 아니라 업무지시서 수준으로 만들어야 합니다.
제가 실제로 써 보면서 느낀, 최소한 지켜야 할 4가지 원칙은 아래와 같습니다.
2-1. 역할을 좁게 정의하기
GPT에게 “너는 전문가야”라고만 하면, 도메인이 너무 넓어서 결과가 산으로 가기 쉽습니다.
그래서 이렇게 구체적으로 못을 박습니다.
- “너는 아마존 상품 소싱을 담당하는 리서처다.”
- “너는 구매대행을 위한 소싱 후보를 찾아오는 리서처다.”
역할을 이렇게 좁게 정의하면, GPT가 “지금 나한테 기대하는 일”을 명확히 이해합니다.
2-2. 목표를 숫자로 명시하기
“조건에 맞는 상품 여러 개”와 “상품 30개”는 GPT 입장에서 완전히 다릅니다.
프롬프트에는 항상 숫자를 적어 줍니다.
- “상품 30개 리스트를 만들어라.”
- “조건에 맞는 후보를 최대 50개까지 찾아라.”
이 한 줄만으로도 결과의 일관성이 훨씬 올라갑니다.
2-3. 조건을 항목별로 쪼개기
사람에게도 “무선 청소기 중 가성비 좋고 리뷰 많은 제품”이라고 말하는 것보다,
“카테고리, 가격대, 리뷰 수, 평점, 제외 브랜드, 제외 키워드”로 잘게 쪼개서 지시하는 게 훨씬 명확합니다.
프롬프트에서도 똑같이 합니다.
- 카테고리
- 핵심 키워드
- 가격대
- 최소 리뷰 수
- 최소 평점
- 제외 브랜드
- 제외 키워드
나중에 이 항목들이 곧 엑셀/CSV의 컬럼이 되기 때문에, 설계 단계에서부터 이렇게 쪼개 두는 것이 중요합니다.
2-4. 출력 형식을 고정하기
실무에서 가장 귀찮은 부분은 “매번 형식이 조금씩 다르게 나오는 것”입니다.
그래서 프롬프트에 아예 이렇게 못을 박습니다.
- “설명 없이, 결과만 출력해라.”
- “CSV 형식으로만 출력해라.”
- “각 줄에는 ‘상품명,URL’ 두 값만 넣어라.”
이 정도만 지켜도, 그냥 복사해서 엑셀에 붙여 넣으면 바로 사용하는 구조가 됩니다.
3. 기본 프롬프트 템플릿 만들기
이제 이 네 가지 원칙을 모두 넣은 기본 템플릿을 하나 만들겠습니다.
이걸 노션이든 문서든 한 번 저장해 두면, 매번 카테고리와 조건만 바꿔서 재사용할 수 있습니다.
3-1. 템플릿 전체
너는 아마존 상품 소싱을 위한 리서처다.
목표:
아래 조건에 맞는 상품을 아마존에서 찾아,
상품 30개의 리스트를 만들어라.
검색 조건:
- 마켓: amazon.com 기준으로 생각한다.
- 카테고리: [카테고리명을 한국어나 영어로 적기]
- 핵심 키워드: [예: wireless vacuum, gaming chair]
- 가격대: [최소 가격] ~ [최대 가격] 달러
- 최소 리뷰 수: [예: 200개 이상]
- 최소 평점: [예: 4.2점 이상]
- 제외 브랜드: [예: Dyson, Apple] (없으면 "없음"이라고 적기)
- 제외 키워드: [예: refurbished, used] (없으면 "없음"이라고 적기)
검수 규칙:
- 중복 상품, 중복 URL은 모두 제거한다.
- 품절이거나 페이지가 열리지 않는 상품은 제외한다고 가정한다.
- 동일 상품의 색상/옵션만 다른 변형이 너무 많으면, 대표 상품만 1개만 포함한다고 가정한다.
- 조건에 애매하게 맞지 않으면 보수적으로 제외한다고 가정한다.
출력 형식:
- 설명, 서론, 주석 없이 CSV 형식으로만 출력해라.
- 첫 줄에는 헤더를 넣는다.
- 각 줄에는 "상품명,URL" 두 개의 값만 넣는다.
- 예시:
상품명,URL
Example Product Title,https://www.amazon.com/dp/xxxxxxx
지금부터 결과만 출력해라.
3-2. 각 블록에서 중요한 포인트
- 역할: “리서처”라는 단어를 꼭 넣어, GPT가 분석/평론 대신 “찾아오기”에 집중하게 합니다.
- 목표: “상품 30개”처럼 개수를 명시해 두어야 출력 행 수가 안정적입니다.
- 검색 조건: 나중에 파라미터로 돌리기 쉽게, 한 줄에 하나씩 항목을 분리합니다.
- 검수 규칙: 내가 매번 손으로 지우던 것(품절, 중복, 옵션 중복 등)을 룰로 올려서 GPT에게 떠넘기는 구간입니다.
- 출력 형식: “설명 없이, CSV만, 이 순서로” 세 가지를 꼭 넣습니다.
4. 실전 예시 1: 무선 청소기 소싱 프롬프트
이제 위 템플릿을 실제 사례에 끼워 넣어 보겠습니다.
상황은 다음과 같습니다.
- 카테고리: 무선 청소기
- 가격: 100~250달러
- 최소 리뷰: 300개 이상
- 최소 평점: 4.2 이상
- 제외 브랜드: Dyson
- 제외 키워드: refurbished, used, renewed
4-1. 완성된 프롬프트 예시
너는 아마존 상품 소싱을 위한 리서처다.
목표:
아래 조건에 맞는 무선 청소기를 아마존에서 찾아,
상품 30개의 리스트를 만들어라.
검색 조건:
- 마켓: amazon.com 기준으로 생각한다.
- 카테고리: 무선 청소기 (cordless vacuum cleaner)
- 핵심 키워드: cordless vacuum, stick vacuum
- 가격대: 100 ~ 250 달러
- 최소 리뷰 수: 300개 이상
- 최소 평점: 4.2점 이상
- 제외 브랜드: Dyson
- 제외 키워드: refurbished, used, renewed
검수 규칙:
- 중복 상품, 중복 URL은 모두 제거한다.
- 품절이거나 페이지가 열리지 않는 상품은 제외한다고 가정한다.
- 동일 상품의 색상/옵션만 다른 변형이 너무 많으면, 대표 상품만 1개만 포함한다고 가정한다.
- 조건에 애매하게 맞지 않으면 보수적으로 제외한다고 가정한다.
출력 형식:
- 설명, 서론, 주석 없이 CSV 형식으로만 출력해라.
- 첫 줄에는 헤더를 넣는다.
- 각 줄에는 "상품명,URL" 두 개의 값만 넣는다.
- 예시:
상품명,URL
Example Cordless Vacuum,https://www.amazon.com/dp/xxxxxxx
지금부터 결과만 출력해라.
4-2. 기대하는 출력 형태
실제로 돌렸을 때 GPT가 아래와 비슷한 형태로 내주면 성공입니다.
상품명,URL
Example Cordless Vacuum A,https://www.amazon.com/dp/AAAAAAA
Example Cordless Vacuum B,https://www.amazon.com/dp/BBBBBBB
Example Cordless Vacuum C,https://www.amazon.com/dp/CCCCCCC
...
여기서 전체를 복사해서 엑셀/구글 시트에 붙여 넣으면, 바로 소싱 후보 리스트로 사용할 수 있습니다.
5. 실전 예시 2: 여러 카테고리에 재사용하는 마스터 템플릿
좀 더 실무적으로는, 카테고리마다 매번 프롬프트를 새로 쓰기보다는 변수만 바꿔 끼우는 마스터 템플릿이 하나 있으면 편합니다.
5-1. 마스터 템플릿 예시
너는 아마존 상품 소싱을 담당하는 리서처다.
목표:
아래 조건에 맞는 상품을 아마존에서 찾아,
상품 [원하는 개수]개의 리스트를 만들어라.
검색 조건:
- 마켓: [amazon.com / amazon.co.uk / amazon.de 등]
- 카테고리: [예: laptop, office chair, mechanical keyboard]
- 핵심 키워드:
- [키워드1]
- [키워드2]
- 가격대: [최소 가격] ~ [최대 가격] [통화 단위, 예: USD, GBP]
- 최소 리뷰 수: [예: 200개 이상]
- 최소 평점: [예: 4.3점 이상]
- 제외 브랜드:
- [브랜드1]
- [브랜드2]
- 제외 키워드:
- [키워드1]
- [키워드2]
검수 규칙:
- 중복 상품, 중복 URL은 모두 제거한다.
- 품절/배송 불가/삭제된 페이지는 제외한다고 가정한다.
- 색상, 용량 등만 다른 변형상품은 대표 상품만 포함한다고 가정한다.
- 조건에 정확히 맞지 않으면 과감히 제외한다.
- 동일 브랜드나 동일 시리즈가 너무 많을 경우, 브랜드/시리즈가 다양해지도록 후보를 고른다고 가정한다.
출력 형식:
- 설명 없이 CSV 형식으로만 출력해라.
- 첫 줄에는 헤더를 넣는다.
- 각 줄에는 "상품명,URL" 두 값만 넣는다.
- 예시:
상품명,URL
Example Product Title,https://www.amazon.com/dp/xxxxxxx
지금부터 결과만 출력해라.
5-2. 이렇게 재사용하면 편하다
- 오늘은 게이밍 체어에 넣고 돌리고,
- 내일은 27인치 모니터,
- 모레는 기계식 키보드…
이렇게 카테고리·키워드·가격대만 바꿔서 같은 프롬프트를 돌리면, 구조가 통일된 CSV를 계속 받아낼 수 있습니다.
이 CSV는 다음 편에서 다룰 AI 에이전트의 입력 파일이 됩니다.
6. 출력 스펙 확장: 가격·평점·리뷰 수까지 받기
처음에는 상품명,URL만 있어도 충분합니다.
하지만 실제 운영 단계에서는 가격, 평점, 리뷰 수까지 같이 있으면 훨씬 편해집니다.
6-1. 최소형 vs 확장형
- 최소형 헤더:
상품명,URL
- 확장형 헤더:
상품명,URL,가격,평점,리뷰수
확장형으로 바꾸려면 프롬프트의 출력 형식 블록만 이렇게 수정하면 됩니다.
출력 형식:
- 설명 없이 CSV 형식으로만 출력해라.
- 첫 줄에는 헤더를 넣는다.
- 각 줄에는 "상품명,URL,가격,평점,리뷰수" 다섯 개 값을 쉼표로 구분해 넣는다.
- 예시:
상품명,URL,가격,평점,리뷰수
Example Product,https://www.amazon.com/dp/xxxxxxx,199.99,4.5,1234
이렇게 받아 두면 나중에 에이전트가:
- 가격대별로 필터링하고,
- 평점/리뷰 수 기준으로 정렬하고,
- 마진 계산을 할 때 초기 기준 값으로 활용하는 데 훨씬 유리합니다.
7. 자주 생기는 문제와 디버깅 팁
실무에서 여러 번 돌리다 보면 아래 같은 일이 자주 발생합니다.
7-1. 설명을 자꾸 곁들이는 경우
프롬프트에 분명 “CSV만 출력해라”라고 써도 GPT가 가끔 이런 식으로 말머리를 답니다.
“다음은 조건에 맞는 상품 리스트입니다:”
“아래는 요청하신 CSV 형식의 예시입니다.”
이럴 때는 출력 형식 블록을 조금 강하게 바꿔 줍니다.
출력 형식:
- 어떤 설명도 쓰지 말고, 결과만 출력해라.
- 문장, 주석, 해설, 마크다운을 모두 금지한다.
- CSV 형식으로만 출력해라.
그리고 실제 결과를 보고, 혹시 또 불필요한 문장이 섞이면 그 예시를 그대로 보여주며 “이런 문장도 쓰지 말라”고 다시 지시해 줍니다. 이 과정을 두세 번 반복하면 대체로 안정됩니다.
7-2. 출력 형식이 미묘하게 깨지는 경우
예를 들어:
- 쉼표 대신 세미콜론을 섞는다.
- URL 끝에 공백이 붙는다.
- 따옴표를 자동으로 감싸 준다.
이럴 때는 예시 부분을 좀 더 엄격하게 씁니다.
- 값 사이에는 쉼표(,)만 사용하고, 공백을 넣지 마라.
- 따옴표(")를 사용하지 마라.
- 예시:
상품명,URL
Example Product,https://www.amazon.com/dp/XXXXXXX
그리고 한 번 돌린 결과를 기준으로, 내가 엑셀에서 손으로 고쳤던 부분을 그대로 규칙으로 올려 줍니다.
7-3. “3번 돌려서 매번 손으로 고친 부분”을 룰로 만들기
프롬프트는 이론적으로 한 번에 완벽하게 만들 수 없습니다.
현실적인 접근은 이렇습니다.
- 템플릿을 만든다.
- 3번 정도 돌려본다.
- 매번 손으로 고친 부분을 기록해 둔다.
- 그 부분을 “검수 규칙” 또는 “출력 형식”으로 올려서 프롬프트를 수정한다.
- 다시 3번 돌린다.
이 과정을 몇 번만 거치면, 프롬프트가 “현업 기준에 맞게 튜닝된 업무지시서” 수준까지 올라옵니다.
8. 다음 편 예고: 에이전트 하루 자동 루틴으로 연결
여기까지가 2편, GPT 리서처 봇 프롬프트 설계의 전부입니다.
이제 우리는 아래 두 가지를 갖게 되었습니다.
- 카테고리·조건만 바꿔서 재사용 가능한 프롬프트 템플릿 1개
- 그 결과로 나오는 CSV 파일(상품명, URL, 필요하면 가격·평점·리뷰 수까지)
3편에서는 이 CSV를 바탕으로, 두 번째 직원인 AI 운영 에이전트의 하루 루틴을 설계합니다.
- 매일 새벽 05:00에 자동 실행
- 전날 판매·유입 데이터를 기준으로 “안 팔리는 상품” 자동 삭제
- GPT 봇이 만든 URL 리스트에서 신규 상품을 가져와 정보 수집
- 마진율·수수료 규칙을 반영해 국내 마켓에 자동 등록
- 잘못된 URL, 품절, 정책 위반 키워드가 있을 때의 예외 처리 규칙
- 사람이 주기적으로 로그만 확인하는 최소 관리 포인트
이렇게 되면, “한 명은 매일 후보를 모으고, 한 명은 매일 관리·등록을 도는” 구조가 완성됩니다.
프롬프트 템플릿을 이미 갖고 있는 지금이야말로, 에이전트의 하루 루틴을 설계하기 가장 좋은 타이밍입니다.
다음 편에서는 이 CSV를 어디에 두고, 어떤 스케줄로 돌리고, 어떤 설정 값(마진율, 제외 키워드, 마켓별 옵션 등)을 넘겨줘야 “사람 직원 2명 수준”에 가까운 자동화가 되는지 이야기해 보겠습니다.
혹시 이 2편 원고에서 먼저 더 살찌우고 싶은 섹션이 있다면(예를 들어 4번 예시를 더 늘리거나, 7번 디버깅 팁에 구체 사례를 추가하는 등), 어느 부분을 더 깊게 보고 싶으신지도 알려 주세요.
