Mina Choi
8c1e513dc0
fix(vision): channel logo describe — 3채널씩 청크 호출로 매칭 정확도 향상
...
기존: 공식 로고 + 모든 채널 프로필 이미지를 한 번에 묶어 Gemini에 보냄 →
LLM이 채널-이미지 매칭을 헷갈려 같은 묘사를 여러 채널에 복사하는 문제.
VIEW 케이스에서 한국 페북·영문 인스타가 둘 다 "보라/노란 V자형 공식 로고" 묘사로
잘못 박혔음 (실제로는 흰배경 V자 심볼 vs 금색 VIEW로 완전히 다름).
수정: describe_channel_logos를 3채널씩 청크로 분리 + 명시적 이미지 번호 매핑:
- "이미지 1 = 공식 로고, 이미지 2 = Instagram 채널, 이미지 3 = Facebook..." 식
- "공식 로고 묘사를 절대 복사하지 마세요" 강한 지시
- 청크별 병렬 호출 (asyncio.gather)
- inconsistency_summary / recommendation 은 LLM 한 번 더 안 부르고 결정적 산출
비용: 호출 1회 → 청크 수 만큼 (보통 2회), 페니 수준 증가
시간: 병렬이라 거의 동일
정확도: 사용자가 본 실제 묘사와 일치하게 됨 (개별 호출 테스트로 검증)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-29 10:44:00 +09:00
Mina Choi
652265cd19
페북 수집·지표·저장 파이프라인 정리
...
수집:
- pages + posts 두 actor 병렬 호출 (facebook-pages-scraper, facebook-posts-scraper)
- 저장 필드 슬림화: 페이지 메타에서 likes/rating/email/phone/address 제거
(followers/reviews와 중복이거나 클리닉 raw_data에 이미 있음)
- 게시물 저장은 캡션 160자 + likes/reactions/shares/views/isVideo/timestamp만
지표 계산 위치 이동: 리포트 시점 → 수집 시점:
- recent_post_age / post_frequency / engagement 를 transform_for_storage에서
결정적으로 산출해 DB에 박음 (재계산 불필요)
- 저장된 게시물은 LLM용 캡션·타입 2필드만 — 추가 슬림 단계 제거
리팩토링:
- services/facebook_audit.py 신설 (instagram_audit 패턴) — _build_overrides의
인라인 클로저(_fb_page_patch)와 analysis.py의 _fb_post_metrics 분리
- collect.py / enrichment.py 가 transform_for_storage를 호출하도록
엔게이지먼트 표기:
- 범위(min~max)로 표시, 전부 0인 지표는 제외
- 댓글은 actor 미제공이라 "댓글 거의 없음" 고정 부가
콘텐츠 유형:
- top_content_type 은 캡션 본문 주제 추론이 필요해 LLM에 위임
- report_prompt.txt 에 facebook_audit.pages[].top_content_type 작성 지침 추가
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-28 13:49:22 +09:00
Mina Choi
4f756cf001
인스타 highlights/계정 수집 개선 (VIEW actor + 코드로 계정 구성)
...
- apify: 프로필 coderx, 하이라이트 igview actor로 교체. highlights/category/
following(followsCount)/profileImage(hdProfilePicUrl)/latestPosts.mediaType 수집.
reel 스크래퍼 제거, post 스크래퍼 비활성화(주석)
- instagram_audit.py(신규): KR·EN 계정 hard 필드를 수집 데이터로 구성
- analysis: _build_overrides에서 위 함수로 계정 구성, _patch_report가 accounts를
코드값으로 주입 (LLM은 diagnosis만, 프롬프트에서 accounts는 []로 두게 지시)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-28 09:43:03 +09:00
Mina Choi
163e9d1c02
리포트/플랜에 브랜드·영문채널 반영
...
- overrides에 brandAssets·영문 인스타/페북 audit 보장 (채널별 빌더 분리)
- logoRules·other_channels·channel_scores 프롬프트 수정, 스키마 입력 필드 추가
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 14:24:21 +09:00
Mina Choi
4855d44381
수집 파이프라인 통합 (enrichment 분리, raw_data merge 헬퍼)
...
- enrichment.py: brand_assets/extra_channels/channel_logos 수집 분리
- db.merge_hospital_raw_data: raw_data read-modify-write 헬퍼
- utils: _run_optional_step·URL 헬퍼 공통화
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 13:27:39 +09:00
Mina Choi
843ccdb806
브랜드 자산(로고/색상)·채널 로고 Vision 분석 추가
...
- color_extractor: 홈페이지 HTML/CSS에서 로고 URL·브랜드 hex 추출
- vision: Gemini Vision 로고 묘사·채널 로고 일치 평가
- youtube: 채널 profileImage 추출 / firecrawl: clinic_info 추출 보정
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 13:27:39 +09:00
Mina Choi
9817b53be1
틱톡·영문 인스타/페북 채널 수집 추가
...
- apify: 틱톡 프로필 액터
- mock_urls.py: 클리닉별 채널 URL 매핑 (mockUrls.json → 파이썬 모듈)
- api/analysis: homepage 매칭으로 미지원 채널 보충 (추후 DB)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 13:27:39 +09:00
jaehwang
cb798f7acc
instagram externalurl 수집 비활성화 (LLM이 혼동을 일으킴)
2026-05-20 18:36:29 +09:00
jaehwang
84fd854d15
설립년도 제거 (잘못된 데이터)
2026-05-20 18:17:10 +09:00
jaehwang
8e5ce3e012
add phone formating
2026-05-20 18:16:35 +09:00
jaehwang
b921a0803e
patch report
2026-05-20 18:06:57 +09:00
jaehwang
e8406dc0ee
의료진 수 firecrawl 해킹, 만약 필요하다면 직접 스크래핑으로 해결 필요
2026-05-20 17:58:58 +09:00
jaehwang
09bb7a71ee
report 패치 함수 추가. 데이터 직결용
2026-05-20 17:16:19 +09:00
jaehwang
1f45b3e53d
fix 유튜브 채널 수집 실패 버그
2026-05-20 10:00:39 +09:00
Mina Choi
18d01357c0
file 업로드 엔드포인트 추가 (Azure Blob 연동)
2026-05-19 16:13:31 +09:00
jaehwang
20fdf53264
마켓 분석 데이터 추가
2026-05-19 15:45:44 +09:00
jaehwang
cda518c027
시장 조사 llm 추가 및 파이프라인 정리, db 커넥션 풀 문제 처리
2026-05-19 15:22:34 +09:00
jaehwang
42e09ae2d1
plan report 이름 통일 및 코드 정리
2026-05-18 17:15:50 +09:00
jaehwang
9b4e99abf9
report output format 변경 및 clinic info출력 추가
2026-05-18 15:40:37 +09:00
jaehwang
c1f39aceff
db connection pool bug 처리
2026-05-18 13:48:22 +09:00
jaehwang
602c69543c
plan 추가, analysis 오탈자 제거
2026-05-18 10:23:17 +09:00
Mina Choi
eec682b02c
cors 허용
2026-05-15 13:58:20 +09:00
jaehwang
2b8a90e857
llm 붙임 및 리포트 생성 확인
2026-05-14 16:16:09 +09:00
jaehwang
26cd946e1b
crawling check
2026-05-11 14:02:17 +09:00
jaehwang
0d3543d84d
스크래핑 로직 점검 및 추가
2026-04-30 11:58:52 +09:00
jaehwang
d930679e90
integration 1차 데이터 및 DB 정의, 테스트
2026-04-24 14:19:29 +09:00
jaehwang
23e859217b
모델 위치 변경
2026-04-20 17:20:46 +09:00
jaehwang
9d306eb68e
api 1차 포매팅
2026-04-20 14:41:00 +09:00
jaehwang
4f42efde18
1차 인프라 구성
2026-04-20 13:52:31 +09:00
jaehwang
6147516da7
initial commit
2026-04-20 11:27:36 +09:00