일일 개발 및 업무 로그 요약

1. 작업 분포

카테고리비중
데이터 수집 및 RAG 파이프라인40%████░░░░░░
해커톤 인프라/기획 전략30%███░░░░░░░
AI 프롬프트 튜닝 및 디버깅30%███░░░░░░░

2. 집중 영역 / 시간 소모 포인트

🟢 생산적 작업

  • 데이터 연동 전략 수립: 팀원이 채운 스프레드시트 데이터를 활용하기 위해 Web App 배포 → JSON 추출 → Qdrant 인덱싱 흐름을 구체화함.
  • 쇼핑 팁 데이터 확장: 기존 세금환급 위주의 데이터에서 올리브영 1+1, 의류 사이즈, DCC, 짝퉁 주의 등 다양한 카테고리의 쇼핑 팁 8개를 신규 생성하여 데이터 품질 개선.
  • AI 페르소나 구체화: 로봇 같은 답변을 개선하기 위해 “정많은 한국인 친구” 페르소나를 정의하고 api.py의 시스템 프롬프트를 전면 수정하여 친근한 톤으로 조정.

🟡 삽질/시간 소모 포인트

  • DCC(환전) 로직 디베이트: 외국인이 KRW로 결제하면 이중 환전이 되는 것이 아닌지 사용자의 지적을 받고, 결제 단말기(가맹점) 환율 vs 카드사 환율의 차이를 명확히 하는 데 시간 소요.
  • GLM API 모델 트러블슈팅: 프롬프트 테스트 중 glm-4.7의 429 Rate Limit 에러와 glm-4.5-flash 모델의 추론 속도 지연(44초) 문제를 해결하며 적합한 모델을 찾는 과정에서 디버깅 시간이 소요됨.

3. 타임라인

시간내용
11:20🦦 Setup.gs 파일의 ID 자동 생성 수식(UPPER(LEFT(...)) + ROW()) 로직 확인.
16:28🦦 스프레드시트 데이터 활용 방안 논의. Web App 배포 후 JSON으로 추출하고, index_qdrant.py에서 로드하여 Qdrant에 재인덱싱하는 구조 제안. ID 타입 충돌(String vs Integer) 문제점 지적.
16:52🦦 쇼핑 관련 팁 데이터 추가 요청에 따라 세금환급 외 1+1, 사이즈, 환불 정책 등 8개의 상세한 시나리오 데이터 생성.
17:41🦦 SHO009(해외카드 결제) 팁의 DCC 거절 로직에 대해 “이중 환전이 아닌가?”라는 질의에 대해, 단말기 환율 vs 카드사 환율의 차이임을 명확히 하고 표현을 수정함.
22:36🦦 해커톤 인프라 어필 포인트 고민. Next.js/Vercel 구성 속에서 Python RAG 백엔드를 EC2/ECS/Terraform으로 구성한 경험을 포트폴리오로 강조하는 전략 수립.
22:38🦦 인프라 코드는 팀원을 위한 템플릿 수준으로 제공하고, 본인은 AI 모듈(맥북 에어 온프레미스 데이터센터 컨셉) 구조화에 집중하기로 결정.
22:58🦦 해커톤 발표 시 AI 시스템을 “외부 API 의존 없는 자체 구축 RAG”로 포장하는 방향론 정리. 데모 캐시 준비의 필요성 언급.
23:01🦦 데이터의 구조화된 포맷이 AI 답변을 딱딱하게 만든다는 지적. 이를 데이터 수정이 아닌 프롬프트 레벨에서 해결하기로 결정.
23:02🦦 “정많은 한국인 친구” 페르소나를 _PERSONA 상수로 정의하고 build_info_answer, build_chunk_prompt 등의 프롬프트 함수에 자연스러운 말투를 반영하도록 수정.
23:04🦦 수정된 프롬프트 테스트 진행. GLM API가 429 Rate Limit 에러를 반환하여 응답 확인 불가.
23:09🦦 glm-4.5-flash 모델로 변경 시도하나, 응답 속도가 44초로 너무 느려 실서비스 부적합함을 확인하고 glm-4.5 모델로의 변경 필요성 도출.

4. 해결한 문제와 인사이트

  • 문제: 스프레드시트 문자열 ID와 Qdrant 정수 ID의 불일치

    • 해결: index_qdrant.py에서 데이터를 로드할 때 문자열 ID를 해시나 순번(enumerate)으로 변환하여 _qdrant_id 필드를 별도로 생성하고, 원본 ID는 payload에 보존하는 로직으로 수정 권고.
  • 문제: AI 답변의 매뉴얼적인 톤앤매너

    • 해결: 데이터 구조를 바꾸지 않고 api.py 상단에 _PERSONA 상수를 도입하여 “친구에게 귀띔하듯이” 말하는 페르소나를 부여. 시스템 프롬프트에 번호 매기기(①②③) 대신 자연스러운 서술을 유도하는 지시문 추가.
  • 문제: DCC(동적통화변환) 개념의 혼동

    • 해결: 단순히 “원화로 결제하세요”라는 표현보다, “가맹점 단말기의 제안(불리한 환율)을 거절하고 카드사 환율을 적용받기 위해 현지 통화(KRW)를 선택하라”는 정확한 메커니즘으로 설명을 정교화함.
  • 인사이트: GLM 모델 선정의 중요성

    • glm-4.5-flash와 같은 추론(Reasoning) 모델은 생각 과정을 거치므로 챗봇용으로는 응답 속도가 너무 느릴 수 있음. 실시간성이 중요한 서비스에는 표준 챗 모델(glm-4.5 등)이 적합함.

Supported by ai-log-sync & GLM-4.7