직원 두 명을 AI로 고용하기 프로젝트, 프롬프트 하나로 2단계 반자동 소싱 시스템 만들기

직원 두 명을 AI로 고용하기 프로젝트,  프롬프트 하나로 2단계 반자동 소싱 시스템 만들기

다음은 이 글을 보고 “바로 2단계 반자동까지 구현해보자”는 흐름으로 가려면, 구조를 개념 → 설계 → 구현 예시 → 체크리스트 순으로 잡고 시작합니다.

직원 두 명을 AI로 고용하기 프로젝트,  프롬프트 하나로 2단계 반자동 소싱 시스템 만들기

이 글의 구조는 아래와 같습니다.


1. 왜 완전 자동보다 반자동이 먼저인가

처음부터 “완전 자동”을 노리면, 실제 운영에서는 생각보다 빨리 벽을 만납니다. 특히 이커머스 쪽은 정책 위반, 잘못된 상품 정보, 가격 오류 등이 한 번 사고 나면 바로 계정·브랜드에 타격이 들어옵니다.

완전 자동의 대표적인 리스크는 세 가지 정도로 정리할 수 있습니다.

  • 정책 위반·잘못된 상품 등록 위험
    • AI가 만든 설명/번역·카테고리가 마켓 정책과 어긋나면, 판매 중지·패널티로 이어질 수 있습니다.
  • 디버깅 난이도
    • “어느 단계에서 잘못됐는지”를 찾기 어렵기 때문에, 문제가 생기면 전체 자동화를 멈춰야 할 때가 많습니다.
  • 데이터 품질 문제
    • 초기에는 소스 데이터·룰이 덜 정제되어 있기 때문에, 자동으로 돌릴수록 “엉뚱한 결과를 크게 키워버리는” 경우가 생깁니다.

반대로, 반자동으로 시작하면 얻는 장점이 분명합니다.

  • 기존 업무 플로우를 크게 바꾸지 않는다.
    • 여전히 엑셀/CSV, 기존 대량 등록 도구를 쓰면서, 중간 몇 단계를 AI로 치환하는 수준입니다.
  • 중요한 결정은 사람이 쥐고 있다.
    • “마지막으로 올릴 상품을 고르는 일”은 사람이 하기 때문에, 사고가 나도 범위가 제한적입니다.
  • 실패해도 회복이 쉽다.
    • GPT/스크립트가 만들어낸 중간 결과가 마음에 안 들면, 그냥 그 회차 파일만 버리면 되고, 기존 방식으로 다시 하면 됩니다.

그래서 이 글의 목표는 거창하지 않습니다.

“오늘 저녁에라도 써볼 수 있는, GPT 프롬프트 + CSV + 간단 스크립트 기반의 반자동 구조 하나 만들기.”

완전 자동은 그다음 단계의 이야기로 남겨 두고, 먼저 2단계 반자동을 돌려보면서 룰과 데이터를 다듬는 것이 현실적인 순서입니다.


2. 우리가 이미 갖고 있는 것: GPT 프롬프트 + CSV

2편까지 따라왔다면, 사실 반자동에 필요한 재료는 거의 다 갖고 있습니다.

  • 재사용 가능한 GPT 프롬프트 템플릿
    • 입력: 카테고리, 키워드, 가격대, 리뷰 수, 평점, 제외 키워드/브랜드
    • 출력: CSV 형식의 상품 리스트
  • 기본 CSV 구조
    • 최소형: 상품명,URL
    • 확장형: 상품명,URL,가격,평점,리뷰수

블로그에서는 여기서 실제 CSV 한 덩어리를 예시로 보여주면 좋습니다. 예를 들어:

상품명,URL,가격,평점,리뷰수
Example Cordless Vacuum A,https://www.amazon.com/dp/AAAAAAA,199.99,4.5,1234
Example Cordless Vacuum B,https://www.amazon.com/dp/BBBBBBB,149.00,4.3,845
Example Cordless Vacuum C,https://www.amazon.com/dp/CCCCCCC,219.50,4.6,532

이때 강조하고 싶은 메시지는 딱 하나입니다.

“GPT가 내보내는 이 CSV 한 파일이, 앞으로 우리가 만들 반자동 시스템의 입력 표준(Input Schema)이 된다.”

입력이 표준화되어 있으면,

  • 중간에 낀 스크립트/툴을 갈아끼우기 쉽고
  • 나중에 완전 자동으로 갈 때도 API·에이전트가 이 포맷만 맞춰서 읽으면 되기 때문에
  • 전체 시스템이 훨씬 단순해집니다.

3. 반자동 구조 전체 그림: 사람과 에이전트의 역할 분리

이제 2단계 반자동 구조를 한 문장으로 정리해 봅니다.

“GPT는 후보를 모으고, 미니 에이전트(스크립트)는 1차 필터와 계산을 해주고, 사람은 마지막으로 올릴 상품만 고른다.”

조금 더 구체적으로 나누면 역할은 이렇게 됩니다.

  • GPT 봇
    • 프롬프트를 받아 후보 URL CSV를 만든다.
  • 미니 에이전트(스크립트/툴)
    • gpt_sourcing.csv를 읽는다.
    • 중복·금지 키워드·기본 마진 기준으로 1차 필터링.
    • 환율·마진율을 고려해 예상 판매가 계산.
    • 사람이 보기 편한 형태의 candidate_for_upload.csv를 생성.
  • 사람
    • candidate_for_upload.csv를 열어 필터를 돌려 보고, 이상한 상품을 제외.
    • “이건 올리자” 싶은 상품만 남긴 final_upload.csv를 만든다.
    • 기존에 쓰던 “대량 등록 프로그램/마켓 양식”에 final_upload.csv를 넣어 배치 업로드.

이 섹션에서는 코드를 깊게 파고들기보다, “누가 언제 무엇을 눌러야 하는지”를 중심으로 설명해 주는 게 좋습니다.

예를 들어, 하루 작업 플로우를 이렇게 써볼 수 있습니다.

  1. 오전 10시 – GPT 봇에 프롬프트 입력 → gpt_sourcing.csv 받기
  2. 오전 10시 10분 – 미니 에이전트 스크립트 실행 → candidate_for_upload.csv 생성
  3. 오전 10시 15분 – 파일을 엑셀로 열어 필터링/정렬로 최종 후보만 남기기
  4. 오전 10시 30분 – final_upload.csv로 저장 후, 마켓 대량 등록 양식에 업로드

즉, 사람이 하는 일은 “맨 앞 GPT 프롬프트 한 번 + 맨 끝 최종 승인 한 번”으로 줄어드는 대신, 중간의 반복적인 필터링·계산 작업은 스크립트가 눌러주는 구조입니다.


4. 단계별 구현 ① – GPT 봇으로 후보 리스트 받기

이제 실제로 반자동 구조를 만들기 위한 첫 단계, 후보 리스트 받기를 정리해 보겠습니다.

4-1. 프롬프트 템플릿 다시 한 번

우리가 사용할 프롬프트는 2편에서 만든 템플릿의 “간단 버전”입니다. 예를 들어:

너는 아마존 상품 소싱을 위한 리서처다.

목표:
아래 조건에 맞는 상품을 아마존에서 찾아,
상품 30개의 리스트를 만들어라.

검색 조건:
- 마켓: amazon.com 기준으로 생각한다.
- 카테고리: [카테고리명]
- 핵심 키워드: [키워드1], [키워드2]
- 가격대: [최소 가격] ~ [최대 가격] 달러
- 최소 리뷰 수: [리뷰 수]개 이상
- 최소 평점: [평점]점 이상
- 제외 브랜드: [브랜드1], [브랜드2]
- 제외 키워드: [키워드1], [키워드2]

출력 형식:
- 설명 없이 CSV 형식으로만 출력해라.
- 첫 줄에는 "상품명,URL,가격,평점,리뷰수" 헤더를 넣어라.
- 각 줄에는 다섯 개 값을 쉼표(,)로 구분해 넣어라.
- 예시:
  상품명,URL,가격,평점,리뷰수
  Example Product,https://www.amazon.com/dp/xxxxxxx,199.99,4.5,1234

지금부터 결과만 출력해라.

실제 사용할 때는 대괄호 부분만 바꿔 쓰면 됩니다.

  • 오늘은: 카테고리 = “cordless vacuum”, 키워드 = “cordless vacuum, stick vacuum”
  • 내일은: 카테고리 = “monitor arm”, 키워드 = “monitor arm, desk mount”

이렇게 카테고리와 키워드만 바꿔 돌려도, 매번 같은 형식의 CSV를 안정적으로 받는 게 핵심입니다.

4-2. 실제 사용 시나리오 예시

글에서는 한 번쯤 이런 식으로 시나리오를 써주면 좋습니다.

  • “월요일에는 무선 청소기, 화요일에는 모니터 암, 수요일에는 게이밍 체어…”
  • 매일 아침 10시에 프롬프트에 카테고리·가격대를 바꿔 넣고 한 번씩만 돌린다.
  • GPT가 내놓은 CSV를 그대로 저장해서 gpt_sourcing.csv로 쓴다.

여기서 중요한 포인트는:

“GPT와의 대화는 매번 다르지만, 결과 파일 형식은 항상 같다.”

라는 걸 강조하는 것입니다. 그래야 뒤에 붙는 스크립트/툴이 흔들리지 않습니다.

4-3. GPT 결과를 CSV로 저장하는 방법

기술에 익숙하지 않은 독자를 위해, “GPT 결과 → 엑셀/구글 시트 → CSV 저장”을 아주 간단히 짚고 넘어가면 좋습니다.

  • 엑셀 기준:

  • GPT가 출력한 내용을 통째로 복사

  • 엑셀 새 시트에 A1 셀부터 붙여넣기
  • 메뉴에서 파일 → 다른 이름으로 저장 → 파일 형식 ‘CSV UTF-8(쉼표로 분리)’ 선택 → 저장
  • 구글 시트 기준:

  • 새 스프레드시트에 붙여넣기

  • 파일 → 다운로드 → CSV(쉼표로 구분) 선택

이렇게 저장한 파일 이름을 gpt_sourcing.csv로 맞추면, 다음 단계의 미니 에이전트 스크립트가 매번 같은 파일 이름으로 읽어올 수 있어서 편합니다.

4-4. 이 단계까지 끝나면 갖게 되는 것

여기까지가 1단계입니다. 이 단계가 끝나면, 폴더 안에는 이런 상태가 됩니다.

  • gpt_sourcing.csv
    • 헤더: 상품명,URL,가격,평점,리뷰수
    • 내용: 오늘 소싱할 후보 30개~100개 정도

즉, “사람이 직접 아마존을 뒤져서 엑셀에 적어 넣던 작업”이 “GPT 프롬프트 한 번 + 복붙 + CSV 저장”으로 바뀐 것입니다.

이제 다음 단계에서는, 이 gpt_sourcing.csv를 읽어서 중복/금지 키워드/마진 기준으로 1차 필터링하고, 사람이 보기 편한 후보 리스트로 바꿔주는 미니 에이전트(스크립트)를 얹으면, 2단계 반자동 구조가 완성됩니다.

원하시면 바로 이어서 “5. 단계별 구현 ② – 스크립트로 반자동 필터·계산 레이어 만들기”를 전체 원고처럼 한 번에 정리해 드릴까요?


5. 단계별 구현 ② – 반자동 필터링/계산 레이어 만들기

이 부분이 “반자동 구현의 핵심”입니다. 툴 종류에 따라 예시를 나눌 수 있습니다. (엑셀·구글 시트 vs 간단 스크립트)

5-1. 엑셀/구글 시트로 구현하는 경우

  • 시트 구조 예시:
    • A열: 상품명
    • B열: URL
    • C열: 원화 환산 가격(수식으로 계산)
    • D열: 예상 마진율
    • E열: 필터 결과(예: “OK/제외”)
    • F열: 최종 등록 여부(체크박스)
  • 수식 예:
    • 달러 → 원화 환산
    • 마진율 계산
    • 특정 키워드가 상품명에 있으면 “제외” 표시
  • 사람이 하는 일:
    • 필터/정렬로 “마진율 낮은 상품, 키워드 포함 상품” 한 번 훑기
    • F열 체크박스로 “등록할 상품”만 TRUE로 만들기

5-2. 간단 스크립트(파이썬 등)로 구현하는 경우

  • 입력: gpt_sourcing.csv
  • 처리:
    • 중복 URL 제거
    • 금지 키워드 포함 상품 필터링
    • 가격·마진 계산
    • 결과에 “추천/주의/제외” 플래그 달기
  • 출력: candidate_for_upload.csv
    • 여기에는 사람이 볼 컬럼만 넣기(상품명, URL, 계산된 판매가, 플래그 등)

이 섹션에서는 “코드 전체”보다는, 입력·출력 구조와 필터링 로직을 개념 위주로 설명하는 게 좋습니다. 

스크립트 기준으로 구현하는 5번 파트부터 본문처럼 살을 붙여 보겠습니다. (언어는 “파이썬 + 하루 한 번 수동 실행/크론”을 전제로 씁니다.)


5. 단계별 구현 ③ – 스크립트로 반자동 필터·계산 레이어 만들기

엑셀/시트로도 어느 정도는 버틸 수 있지만, 소싱 규모가 조금만 커져도 “수동 필터링”이 금방 한계에 옵니다. 이때 제일 가볍게 도입할 수 있는 게 파이썬 스크립트 한 파일입니다.

역할은 단순합니다.

GPT가 만든 gpt_sourcing.csv를 읽어서, 중복·금지 키워드·기본 마진 조건을 1차로 걸러 준 뒤 사람이 검토하기 쉬운 candidate_for_upload.csv로 정리해 주는 작은 에이전트.

5-1. 파일 구조부터 먼저 정한다

먼저, 스크립트가 다룰 파일 이름을 고정해 두는 게 좋습니다.

  • GPT 출력 파일: gpt_sourcing.csv
    • 예: 상품명,URL,가격,평점,리뷰수
  • 스크립트 출력 파일: candidate_for_upload.csv
    • 예: 상품명,URL,원가_원화,예상_판매가,예상_마진율,필터_결과,메모

블로그에서는 이 두 파일의 헤더를 텍스트로 한 번 보여주고, “오늘 우리가 하는 일은 이 입력을 이 출력으로 바꾸는 아주 작은 봇 하나 만드는 것”이라고 잡아 주면 독자가 전체 구조를 쉽게 이해합니다.

5-2. 스크립트가 할 일 정의하기

스크립트의 로직은 대략 이렇게 설계합니다.

  1. gpt_sourcing.csv 읽기
  2. 각 행에 대해:
    • URL 기준으로 중복 제거
    • 금지 키워드(제외 키워드) 체크
    • 원화 기준 원가·판매가·마진율 계산
    • 기준에 못 미치면 “제외” 플래그 달기
  3. 결과를 candidate_for_upload.csv로 저장

블로그에서는 “완전한 파이썬 강의”까지는 필요 없고, “이 정도 스크립트 하나면 반자동이 된다”는 수준의 예시를 보여주는 게 핵심입니다.

5-3. 예시 스크립트 구조(설명용)

아래는 개념을 보여주기 위한 의사코드/예시에 가깝게 작성하면 좋습니다.

import csv

INPUT_FILE = "gpt_sourcing.csv"
OUTPUT_FILE = "candidate_for_upload.csv"

# 환경/설정 값
EXCHANGE_RATE = 1350      # 1달러 → 1,350원
TARGET_MARGIN = 0.3       # 목표 마진율 30%
MARKET_FEE = 0.12         # 마켓 수수료 12%
EXTRA_COST = 0.05         # 기타 비용 5%
EXCLUDE_KEYWORDS = ["adult", "sex", "weapon"]
EXCLUDE_BRANDS = ["Dyson"]  # 필요시 상품명에서 브랜드 필터링

def has_excluded_word(name: str) -> bool:
    lowered = name.lower()
    return any(word in lowered for word in EXCLUDE_KEYWORDS)

def estimate_prices(usd_price: float) -> tuple[float, float, float]:
    # 아주 단순화한 예시: 달러 가격 하나만 기준으로 계산
    base_cost_krw = usd_price * EXCHANGE_RATE
    total_cost = base_cost_krw * (1 + MARKET_FEE + EXTRA_COST)
    # 목표 마진율을 맞추는 판매가 역산
    sale_price = total_cost / (1 - TARGET_MARGIN)
    margin = (sale_price - total_cost) / sale_price
    return base_cost_krw, sale_price, margin

def main():
    seen_urls = set()
    rows_out = []

    with open(INPUT_FILE, newline="", encoding="utf-8") as f:
        reader = csv.DictReader(f)
        for row in reader:
            name = row["상품명"]
            url = row["URL"]
            price_str = row.get("가격", "").replace(",", "").strip()

            # 1) URL 중복 제거
            if url in seen_urls:
                continue
            seen_urls.add(url)

            # 2) 금지 키워드 필터
            if has_excluded_word(name):
                result = "제외_키워드"
                memo = "금지 키워드 포함"
            else:
                result = "검토필요"
                memo = ""

            # 3) 가격/마진 계산
            try:
                usd_price = float(price_str) if price_str else 0.0
            except ValueError:
                usd_price = 0.0

            cost_krw, sale_price, margin = estimate_prices(usd_price) if usd_price > 0 else (0, 0, 0)

            rows_out.append({
                "상품명": name,
                "URL": url,
                "원가_원화": round(cost_krw),
                "예상_판매가": round(sale_price, -1),  # 10원 단위 반올림 예시
                "예상_마진율": round(margin * 100, 1),
                "필터_결과": result,
                "메모": memo,
            })

    fieldnames = ["상품명", "URL", "원가_원화", "예상_판매가", "예상_마진율", "필터_결과", "메모"]
    with open(OUTPUT_FILE, "w", newline="", encoding="utf-8") as f:
        writer = csv.DictWriter(f, fieldnames=fieldnames)
        writer.writeheader()
        writer.writerows(rows_out)

if __name__ == "__main__":
    main()

블로그에서는 이 코드 전체를 그대로 붙이기보다는:

  • 상단 설정 값(EXCHANGE_RATE, TARGET_MARGIN 등)만 따로 강조하고
  • “여기를 본인 숫자에 맞게 바꾸면 된다”는 설명을 달아주면 좋습니다.

또, 파이썬에 익숙하지 않은 독자를 위해:

  • INPUT_FILE는 GPT에서 받은 CSV 파일 이름
  • OUTPUT_FILE는 사람이 열어볼 후보 리스트 파일 이름
  • 필터_결과검토필요인 것만 골라서 최종 업로드 대상으로 쓴다

이 정도만 풀어서 설명해 주면 충분합니다.

5-4. 이 스크립트가 만들어 주는 “반자동 경험”

이 구조까지 구현해 놓으면, 하루 작업 흐름이 이렇게 바뀝니다.

  1. GPT 프롬프트로 gpt_sourcing.csv 받기
  2. 파이썬 스크립트 한 번 실행 → candidate_for_upload.csv 자동 생성
  3. candidate_for_upload.csv를 엑셀/시트에서 열어
    • 필터_결과 != "제외_키워드"
    • 예상_마진율이 너무 낮은 상품 제외
  4. 남은 행만 가지고 마켓 대량 업로드 양식에 맞게 복사/붙여넣기

완전 자동까지는 아니지만, “후보 수집 + 1차 필터 + 가격 계산”이라는 가장 귀찮은 부분은 이미 AI+스크립트에게 넘긴 셈입니다. 사람은 그 결과를 보고 “마지막 승인만 하는 역할”로 내려앉습니다.


이 5번(스크립트 기준 구현) 섹션을 이런 식으로 본문에 넣으면, 독자가 “아, 나도 GPT CSV + 파이썬 파일 하나로 반자동까지는 금방 만들겠다”는 느낌을 받기 좋습니다.

혹시 여기서 더 보고 싶은 건:

  • 마켓별 업로드 양식에 맞춰 컬럼을 리매핑하는 예시
  • 이 스크립트를 매일 한 번 자동 실행하는 crontab 예시

둘 중 어떤 쪽을 먼저 풀어보면 도움이 될까요?

직원 두 명을 AI로 고용하기, 3편 – AI 운영 에이전트의 하루 자동 루틴 설계

직원 두 명을 AI로 고용하기, 3편 – AI 운영 에이전트의 하루 자동 루틴 설계

0. 2편 복습과 3편에서 할 이야기

2편에서는 첫 번째 직원, GPT 리서처 봇을 위한 프롬프트를 설계해서, 매번 같은 구조의 CSV를 뽑아내는 단계까지 만들었습니다. 이 CSV에는 최소한 상품명, URL이 들어 있고, 필요하다면 가격, 평점, 리뷰수 같은 정보도 함께 들어가도록 확장했습니다.

이제 3편에서는 두 번째 직원, AI 운영 에이전트의 업무를 설계합니다. 목표는 단순합니다.

“매일 새벽 05:00에, 어제까지의 데이터를 기준으로 상품을 자동으로 지우고, 추가하고, 갱신하는 루틴을 짠다.”

여기서 중요한 건 에이전트의 “똑똑함”이 아니라, 무엇을 언제 어떻게 할지를 사람 기준으로 먼저 정의하는 것입니다.

직원 두 명을 AI로 고용하기, 3편 – AI 운영 에이전트의 하루 자동 루틴 설계

1. AI 운영 에이전트의 역할 정의

먼저 두 번째 직원의 직무부터 다시 정리합니다. 이 에이전트의 한 줄 정의는 다음과 같습니다.

“매일 정해진 시간에, 소싱 후보와 판매 데이터를 보고 안 팔리는 상품은 정리하고, 새 상품은 올리고, 정보는 최신으로 맞추는 운영 담당자.”

조금 더 쪼개면, 역할은 세 가지입니다.

  • 루틴 1: 상품 소싱 – GPT 봇이 만든 URL 리스트에서 새로운 상품을 가져오기
  • 루틴 2: 상품 정리 – 안 팔리는 상품 자동 삭제/중단
  • 루틴 3: 상품 등록·갱신 – 국내 마켓에 자동으로 올리고, 가격·재고 정보를 최신 상태로 맞추기

실제 개발 구현은 시스템마다 다르겠지만, 이 세 가지 역할을 “사람이 한다면 어떤 순서로 무엇을 보면서 할지” 기준으로 설계해 두면, 나중에 개발자에게 업무를 넘기기도 훨씬 수월합니다.


2. 하루 루틴 전체 그림: 05:00에 한 번 도는 시나리오

운영 에이전트의 하루는 “언제 돌릴 것인가?”에서 시작합니다. 이 글에서는 이해를 돕기 위해 매일 새벽 05:00에 한 번 도는 시나리오로 설명하겠습니다.

큰 흐름은 아래와 같습니다.

  1. 05:00 – 어제 기준 데이터 불러오기
  2. 05:05 – 안 팔리는 상품 필터링 및 삭제/중단
  3. 05:15 – GPT 봇이 만든 CSV에서 신규 상품 읽기
  4. 05:25 – 상품 정보 수집·번역·정제
  5. 05:35 – 마진율·수수료 규칙을 적용해 가격 계산
  6. 05:45 – 국내 마켓별 규칙에 맞춰 자동 등록 또는 정보 갱신
  7. 05:55 – 예외(에러, 정책 위반, 품절 등) 로그 정리 및 요약 리포트 작성

이 루틴을 한 번 잘 만들어 두면, 에이전트는 매일 같은 패턴으로 움직이고, 사람은 그 결과를 요약된 로그만 보고 필요한 곳에만 손을 대면 됩니다.


3. 루틴 1 – 상품 소싱: 신규 상품 가져오기

첫 번째 루틴은 “새 물건 들여오기”입니다. 여기서 에이전트는 GPT 리서처 봇이 만든 CSV 파일을 읽어서, 오늘 새로 올릴 후보 상품을 결정합니다.

3-1. 입력 파일 구조 정의

예를 들어, 우리는 2편에서 이런 헤더를 가진 CSV를 만들었습니다.

  • 최소형: 상품명,URL
  • 확장형: 상품명,URL,가격,평점,리뷰수

에이전트 입장에서는 이 파일을 “오늘 참고할 소싱 후보 리스트”로 바라봅니다. 실제 구현에서는:

  • 파일 경로(예: /data/gpt_sourcing/2026-04-10.csv) 규칙을 정하거나
  • 항상 같은 이름(예: latest_sourcing.csv)으로 덮어쓰게 해 두고
  • 에이전트가 이 파일을 읽어 각 행을 하나의 “후보 상품”으로 처리합니다.

3-2. 소싱 루틴의 단계

소싱 루틴은 대략 아래와 같이 나눌 수 있습니다.

  1. CSV 파일 읽기
  2. 각 행(상품명+URL)에 대해
    • 이미 우리 DB/시트에 등록된 상품인지 확인
    • 이미 등록된 상품이면 “중복 후보”로 표시하고 건너뛰기
    • 신규인 경우에만 “소싱 대상”으로 목록에 추가
  3. 오늘 처리할 최대 신규 상품 수를 제한 (예: 하루 50개까지만)

이렇게 해서, GPT 봇이 가져온 수십~수백 개 후보 중에서 “오늘 실제로 자동 등록까지 진행할 대상”만 추립니다.


4. 루틴 2 – 안 팔리는 상품 자동 삭제/중단

두 번째 루틴은 “쌓아두기만 하는 재고를 정리하는 일”입니다. 사람이 직접 한다면, 대충 이런 기준으로 볼 것입니다.

  • 최근 30일 동안
    • 판매 0건
    • 상세페이지 조회(유입) 거의 0
  • 경쟁 상품 대비 가격이 이미 충분히 낮은데도 반응이 없다
  • 재고·배송 리스크가 큰 상품

이걸 에이전트 관점에서 룰로 바꾸면 다음과 같습니다.

4-1. 안 팔리는 상품 기준 정하기

예시 기준:

  • 최근 30일 판매량 = 0
  • 최근 30일 클릭 수(또는 상세페이지 유입) < 10
  • 등록된 지 45일 이상 지남
  • 가격/마진 조정 시도(예: 1~2회) 후에도 변화 없음

이 네 가지를 모두 만족하는 상품을 “정리 대상”으로 표시합니다. (이 기준은 각자 사업 구조에 맞게 바뀔 수 있습니다.)

4-2. 삭제 vs 중단 전략

완전 삭제가 불안하다면, 단계별로 나눌 수 있습니다.

  • 1단계: “전시 중단” – 마켓에서는 안 보이게 하지만, 내부 데이터에는 남겨둠
  • 2단계: “완전 삭제” – 일정 기간(예: 90일) 더 지켜봤는데도 반응이 없다면 완전 삭제

에이전트 루틴에서는:

  1. 기준에 맞는 상품 리스트를 뽑고
  2. “이번 회차에서 중단/삭제할 상품 수”를 제한(예: 최대 100개)한 뒤
  3. 각 마켓 API로 상태를 변경합니다.

그리고 이 내용을 “오늘 정리된 상품 리스트”로 로그에 남겨, 사람이 나중에 한 번에 확인할 수 있게 합니다.


5. 루틴 3 – 국내 마켓 자동 업로드·정보 갱신

세 번째 루틴은 “올릴 것 올리고, 고칠 것 고치는 일”입니다. 여기서 에이전트가 하는 핵심은 세 가지입니다.

  1. 상품 정보 크롤링·번역·정제
  2. 마진율·수수료를 반영한 가격 계산
  3. 마켓별 필수 옵션에 맞는 업로드/갱신

5-1. 상품 정보 크롤링·번역·정제

소싱 대상 URL이 정해졌다면, 에이전트는 각 URL에서 필요한 정보를 수집합니다.

  • 상품명(영문)
  • 상세 설명
  • 스펙(사이즈, 색상, 소재, 전압 등)
  • 이미지 URL들
  • 원화/달러 가격, 배송비
  • 판매자 정보(브랜드, 셀러 등)

그다음 해야 할 일:

  • 국내 고객 기준으로 보기 좋게 상품명·설명을 번역/요약
  • 마켓 정책에 맞지 않는 표현(과장, 금지 키워드 등) 제거
  • 카테고리 매핑(아마존 카테고리 → 쿠팡/스마트스토어 카테고리 등)

여기서 GPT를 다시 활용해 “번역/요약/카테고리 추천”을 하게 할 수도 있고, 에이전트가 별도의 룰·테이블을 참고하도록 설계할 수도 있습니다.

5-2. 마진율·수수료 반영한 가격 계산

가격 계산은 에이전트에게 넘기는 가장 중요한 설정 값입니다. 예를 들어:

  • 목표 순이익률: 30%
  • 마켓 수수료: 12%
  • PG/결제 수수료: 3%
  • 기타 비용(광고, 운영비 등): 5% 정도 레벨
  • 환율: 1달러 = 1,350원 (일 단위로 업데이트)

에이전트는 이런 값을 입력으로 받아, 아마존 상품 원가·배송비·관부가세를 고려한 후 판매가를 계산합니다.

계산 공식을 글에서 자세히 쓰기보다는, 대략 이런 느낌의 흐름으로 정리하면 됩니다.

  1. 원가(상품+해외배송) × 환율 = 기준 원가(원화)
  2. 기준 원가에 관부가세/수수료를 더해 “총 비용” 계산
  3. 총 비용을 기준으로 목표 마진율이 나오도록 판매가 역산
  4. 마켓 가격 정책(990원, 9,900원 단위 등)에 맞게 반올림

이렇게 계산된 판매가는, 에이전트가 나중에 “가격 조정 루틴”에서도 재사용할 수 있습니다.

5-3. 마켓별 필수 옵션 맞춰 업로드

각 국내 마켓은 요구하는 필수 정보가 조금씩 다릅니다. 예를 들어:

  • 공통: 상품명, 카테고리, 이미지, 가격, 재고, 배송비, 옵션(색상/사이즈)
  • 마켓별:
    • 배송형태(해외직배송/국내발송),
    • 배송비 정책(무료/조건부 무료/고정),
    • 관부가세 안내 문구,
    • 전기·전자 제품의 KC 관련 필드 등

에이전트 설계 시에는 “마켓별 설정 값”을 별도의 설정 파일이나 테이블로 정리해 두는 편이 좋습니다.

예를 들면:

  • margin_target = 0.3
  • exclude_keywords = ["성인", "주류", ...]
  • for_market_A: category_mapping, shipping_type, shipping_fee_policy
  • for_market_B: ...

이렇게 정리해 두면, 에이전트는:

  1. 상품 정보 + 가격 계산 결과를 바탕으로
  2. 각 마켓 API 규격에 맞게 요청을 조립한 뒤
  3. 자동으로 신규 등록 또는 기존 상품 갱신을 실행합니다.

6. 에러·예외 처리 전략

자동화에서 가장 중요한 건 “잘 될 때”가 아니라 “안 될 때”입니다. 운영 에이전트에게 반드시 알려줘야 할 예외 처리 규칙은 대략 다음과 같습니다.

6-1. 잘못된 URL

  • HTTP 오류(404, 500 등)가 나거나,
  • 리다이렉트가 이상하게 걸리는 URL,
  • 로그인/성인인증/차단 페이지로만 가는 URL

→ 이런 경우에는:

  • “소싱 실패”로 표시하고
  • 해당 행을 건너뛰며
  • 로그에 실패 사유: 잘못된 URL 또는 접근 불가를 남깁니다.

6-2. 품절 상품

  • 아마존 쪽에서 품절 또는 “일시 재고 없음” 상태인 상품

→ 신규 등록 단계에서는 제외 → 이미 국내에 등록되어 있는 상품이라면:

  • 전시 중단 또는 “품절 처리” 상태로 전환
  • 로그에 품절에 따른 자동 중단 기록

6-3. 정책 위반 키워드/카테고리

  • 금지 키워드(성인, 의료, 위험물 등)가 상품명·설명에 포함되어 있거나
  • 마켓에서 허용하지 않는 카테고리인 경우

→ 자동 등록/갱신을 막고, “사람 검수 필요” 상태로 별도 리스트에 올립니다. 이 리스트는 사람이 직접 확인해서 “정말 버릴지, 수정해서 살릴지” 판단합니다.

6-4. API 에러·쿼터 초과

마켓 API 호출 중 에러가 발생하면:

  • 재시도 횟수(예: 최대 3회)를 정해 두고
  • 그래도 실패하면 해당 상품만 “실패”로 표시
  • 실패 내역을 로그에 남긴 뒤, 전체 루틴은 계속 진행합니다.

결론적으로, 에이전트는 “문제 있는 상품만 따로 모아서 사람에게 넘기는 역할”까지 해줘야 합니다. 그래야 사람이 매일 로그만 한 번 훑어봐도 전체 상태를 파악할 수 있습니다.


7. 최소 관리 포인트: 사람이 보는 건 딱 두 가지

이제 자동화가 잘 돌아간다면, 사람은 무엇을 해야 할까요? 이상적인 그림에서 사람의 역할은 “모니터링과 예외 처리” 두 가지뿐입니다.

7-1. 매일 아침 확인할 요약 리포트

에이전트가 매일 새벽 루틴을 돌고 나면, 대략 이런 형식의 요약 리포트를 남길 수 있습니다.

  • 오늘 신규 등록 상품: 37개
  • 오늘 전시 중단/삭제 상품: 22개
  • 가격/정보 갱신된 상품: 58개
  • 소싱 실패(잘못된 URL/접근 불가): 5개
  • 정책 위반 의심 상품(사람 검수 필요): 3개

사람은 아침에 이 리포트만 보고:

  • “오늘 자동화가 정상적으로 돌았는지”
  • “내가 직접 봐야 할 상품은 몇 개인지”

를 한눈에 파악하면 됩니다.

7-2. 주기적인 로그 점검

일 단위로는 요약 리포트만 보고, 주 1회 또는 월 1회 정도는 좀 더 긴 로그를 점검하는 것도 좋습니다.

  • 최근 30일 간
    • 신규 등록 수
    • 자동 삭제/중단 수
    • 정책 위반/실패 건수
  • 품목/카테고리별 성과(소싱→등록→판매까지 걸리는 시간 등)

이런 데이터를 보고 룰을 조금씩 조정하는 것이, “사람 직원 2명이 점점 더 일을 잘하게 만드는 과정”과 비슷합니다.


8. 정리: 한 명은 매일 후보를 모으고, 한 명은 매일 관리·등록을 돈다

여기까지 정리하면, 우리가 만든 구조는 이렇게 요약할 수 있습니다.

  • GPT 리서처 봇
    • 매번 같은 구조의 CSV로 “소싱 후보 리스트”를 만든다.
    • 사람 대신 아마존에서 조건에 맞는 상품을 찾아오는 리서처 역할.
  • AI 운영 에이전트
    • 매일 새벽 05:00에 자동으로 루틴을 돌린다.
    • 전날 데이터 기준으로 안 팔리는 상품을 정리한다.
    • GPT 봇이 만든 CSV에서 신규 상품을 가져와 정보 수집·정제·가격 계산을 하고, 국내 마켓에 등록·갱신한다.
    • 잘못된 URL, 품절, 정책 위반 같은 예외를 잡아서 사람에게 로그로 보고한다.

사람이 하는 일은 점점 줄어듭니다.

  • 일일 단위: 요약 리포트 확인 + 예외 몇 건 처리
  • 주간/월간 단위: 룰과 설정 값(마진율, 제외 키워드, 마켓 옵션)을 조정

이 정도면 “사람 직원 두 명이 하던 반복 작업” 상당 부분을 AI 두 명에게 넘긴 셈입니다.


이제 남은 건, 이 구조를 실제 본인 시스템에 맞춰 얼마나 라이트하게 혹은 빡세게 구현할지를 결정하는 일입니다.

다음 단계로, “완전 자동으로 가기 전에 최소 셋업(반자동)부터 시작하는 현실적인 도입 단계”

처음으로