Dec 17

[미디어/마케팅] PNU Dobby: 마케팅 인사이트 AI 어시스턴트

📌 프로젝트 소개

마케팅 회사 업무를 위한 데이터 분석가 co-worker AI-agent
Empty space, drag to resize

🧐 문제 정의

저희는 현업자와 함께할수 있는 경험을 최대한 살리려 노력했습니다. 기존 프로젝트의 확장개념보단, 전혀 모르는 "마케팅"이라는 업무에 들어가 실제로 비전공자와 커뮤니케이션을 해보며 업무를 파악해보고 솔루션을 제공하고 싶었습니다.

처음에는 현업자분도 자동화가 어디까지 될줄 모르셨기 때문에, 단순 보고서 자동 업로드 및 관리를 원하셨습니다. 하지만 업무에 대한 얘기를 하다보니, "키워드 분석"이라는 업무에 대해서 알게됐습니다.

### 키워드분석이란?
마케팅 업무에서는 어떤 캠페인(광고)에 대해서 어떤 문구가 어떤 영향을 미치고 있는지 추적관찰이 필요합니다. 핵심 문구를 "키워드"라고 하는데, 해당 키워드의 노출수, 클릭수에 비례해서 실제 매출, 판매량이 어떻게 변화하는지 추적해야합니다.

### 문제점
#### 업무 자체의 문제점
한 사람당 관리해야하는 일일 키워드는 대략 500개가 넘었습니다. 만들어둔 엑셀형식에 넣는다해도, 전날대비 정보만 알수있고, 일일히 시트를 넘나들며 일주일치 데이터를 봐야 그나마 시계열 데이터 현황이 파악됩니다. 그마저도 모든 데이터에 대해 꼼꼼히 할수없고, 전달 데이터 대비 상승, 하락폭이 크게 보인 데이터만 몇개 선별해서 볼 수 밖에 없었습니다. 이는 "지능적판단"이 요구되고 "비생산적인 반복작업"이였습니다.

#### 기존 AI도구의 문제점
현업자님 께서는 그런 어려움덕분에 본인도 AI툴을 결제해서 썼었다고 합니다. 하지만 스타트업 회사에게 매달 20-30만원의 지출을 할 값어치가 있는지는 느끼지 못하셨다고 합니다. 그리고 가장 중요한건, 그런 큰 회사의 도구는 범용적인 데이터 분석 도구역할만 지원할뿐이지, 결국엔 그 도구를써서 이 회사에 실정에 맞는 데이터 분석은 결국 사람이 따로해야한다는 점이였습니다. 즉 "커스터 마이징"이 안된다는 한계가 컸습니다.

## 해결할문제
저희는 1. 보고서 자동 업로드 및 파일관리 기능, 2. 자동 키워드 데이터 분석이 목표입니다.
Empty space, drag to resize

💡 문제 해결

#### n8n + 파이썬
1. 대용량 파일 업로드 및, 데이터 변환작업에 부적합합니다.
2. 복잡한 데이터 변환 작업이나 로직 제어 어려움.
3. 특정 상황만을 위한 커스터마이징된 실행 노드 부재.
그럼으로, n8n만으로 어려운 작업은 파이썬 스크립트로 해결하고, n8n은 적재적소에 파이썬 스크립트와 내부 워크플로우를 호출해서 흐름을 관리하게 했습니다.

### 보고서 자동 업로드
네이버 보고서 api는 매우 복잡한 형식이였습니다. 캠페인 id안에, 그룹 id가 있고, 그 안에 키워드 id가 있습니다. 곧바로 키워드에 접근하는 방법은 부재했고, 매번 3단계에 거쳐서 내부 api를 호출하면 비정제된 데이터를 얻을수 있었습니다. 저희는 데이터분석 agent에게 친화적이게 csv파일을 변환하고 보고서를 내부 파일 시스템에 저장하는 파이썬 스크립트를 만들어서 해결했습니다. 그리고 n8n sub-workflow화 했습니다.

### 보고서 자동 분석
보고서 분석 자체는 현업자님과의 미팅을 통해서, 키워드 분석 목표와, 실무에서 어떤식으로 판단하는지에 대한 판단 로직과 몇가지 예시 시나리오를 받아올수 있었습니다. 중요한건 llm은 입력에 한계가 있다는것이고, 저희는 매일 500개, 6명의 보고서를 몇달, 몇년 단위로 관리해야합니다. 또한 보고서 분석시 몇주 몇달 단위 보고서도 작성하게 해야합니다. 그래서 저희는 2-stage에 거친 보고서 분석을 제공했습니다.

1. 중요한 키워드 추출
csv파일에서 일정 클릭수, 노출수 미만인 데이터를 모두 제거합니다.
필터링된 키워드에 대해서 분석 기한내에 (예를들어 오늘로부터 일주일전까지)의 평균, 표준편차, 증or감세 등에 대한 정보를 각 키워드에 대해서 통계데이터를 만들어서 제공합니다. 이렇게되면 llm의 context window내에서 충분히 해결할수 있는 정보량으로 줄어들고, 여기서 ai-agent를 통해서 중요한 키워드 리스트를 뽑아냅니다.

2. 키워드 시계열 분석
선정된 키워드에 대해서 시계열 데이터를 줍니다. csv파일 이나, json그대로 주면 너무 llm에겐 비효율 적이기 때문에 내부의 파이썬 코드를 통해서 마크다운화 해서 데이터를 ai-agent에게 넘겨줍니다. 그 결과와 는 WEB UI를 통해서 자동으로 시각화됩니다.

3. 시각화 및 사용자 편의성제공
단순히 하루 한번씩 기능을 제공하기보단, 사용자가 필요로 한다면 얼마든지 다른 날짜와 기한으로 데이터 분석을 할 수 있게 하고자 했습니다. 그래서 데이터 분석 전체를 sub-workflow로 만들어서 ai-agent에 연결했습니다. 또한, n8n내부의 시각화 기능이 좋지 못해서 node js 프레임 워크를 이용해서 자체적인 front web ui를 제공했습니다. 또한 현재 보고서 분석 결과에 대한 해설과, 유동적인 데이터 분석및 답변을 위해서 RAG 파이프라인을 구축해서 AI-agent가 특수 프롬프트만이 아니라, 현재 회사의 데이터를 읽어서 답변하게 했습니다. 그래서 새로운 보고서를 업로드하거나, 데이터 분석결과가 바뀔때마다 자동으로 벡터 DB가 업로드돼서 제 agent는 거의 항상 필요한 문서를 참고하고 대답할수있습니다.
Empty space, drag to resize

⚙️ 핵심 기능

1. 네이버 검생광고 일일 보고서 csv파일 자동 업로드 및 파일관리 (새벽 1시마다 업데이트되게 했다)
2. "키워드"에 대해서 csv파일 정보 기반 시계열 데이터 분석 
3. 데이터 분석 호출이 가능한, RAG-파이프라인 시스템을 적용한 AI agent챗봇
 - RAG 파이프라인을 위해서, Upstage의 임베딩 api를 사용
Empty space, drag to resize

🎬 데모 영상

Empty space, drag to resize

👥 팀원 소개

정유성 - 시스템 설계, 코드 구현 및 RAG 파이프라인 구축

이예은 - 웹 UI및 파이썬 구현 및 최적화 실험
박은성 - 파이썬 스클립트 구현 및 최적화 실험

박지원 - 파이썬 스크립트 구현 및 최적화 실험
Empty space, drag to resize

💾 참고 자료