파이썬자동화 썸네일형 리스트형 유튜브 모니터링 텔레그램 알림 봇, 중복 메시지 폭탄을 해결하기까지 유튜브 모니터링 텔레그램 알림 봇, 중복 메시지 폭탄을 해결하기까지매일 아침 반복되는 리서치 업무를 코드로 해결하려던 시도와, 그 과정에서 겪은 에러 해결기를 정리했다.유튜브 API 연동 코드 작업 화면위 화면은 텔레그램 봇이 유튜브 새 영상을 확인하고 전송하도록 짜인 초기 파이썬 코드다. 이 코드는 정상적으로 작동하는 것처럼 보였지만, 곧 서버에 치명적인 문제를 일으켰다.💡 발단: 매일 아침 30분, 반복 업무를 없애고 싶었다사업을 운영하다 보면 업계 트렌드를 기민하게 파악하는 것이 필요적입니다. 저 역시 매일 아침 업무 시작 전, 유튜브에 핵심 키워드를 검색해 경쟁사 동향과 신기술 트렌드를 파악하는 것이 중요한 일과였습니다. 방대한 정보가 모이는 유튜브는 훌륭한 리서치 채널이었기 때문입니다.하지만 .. 더보기 LLM과 Pydantic: 프롬프트 대신 코드 레벨에서 JSON 에러 잡기 LLM과 Pydantic: 프롬프트 대신 코드 레벨에서 JSON 에러 잡기LLM(대규모 언어 모델)에게 JSON 형태로 출력을 요구할 때 흔히 겪는 파싱 에러와 이를 해결하기 위한 과정이다. 단순히 프롬프트를 튜닝하는 것을 넘어, 코드 레벨에서 구조적인 검증을 통해 시스템의 안정성을 높여야 한다는 깨달음을 얻었다.위 화면은 LLM에게 프롬프트로 엄격하게 형식을 지시했음에도 불구하고 잘못된 응답을 반환하여 시스템 에러가 발생한 상황을 보여주는 예시다. LLM의 자유도를 통제하지 못하면 파이프라인 전체가 무너질 수 있음을 보여준다.프롬프트 한 줄이면 JSON이 예쁘게 나올 줄 알았다최근 인공지능을 활용해 다양한 비정형 텍스트 데이터를 분석하고, 이를 서비스 데이터베이스에 맞게 구조화하는 파이프라인 구축을 시.. 더보기 데이터 보안과 API 비용 사이에서의 타협점: 로컬 LLM Ollama 도입기 데이터 보안과 API 비용 사이에서의 타협점: 로컬 LLM Ollama 도입기외부 API 대신 내 서버에서 직접 LLM을 돌리겠다는 야심 찬 계획이 있었다. 보안도 지키고 비용도 아끼는 두 마리 토끼를 한 번에 잡으려 했지만, 실제 현실은 달랐다. 올라마(Ollama) 도입 과정에서 마주친 VRAM 한계와 속도 충격, 그리고 결국 찾아낸 실용적 타협점을 기록한다.위 화면은 70B 모델 구동 시 CPU 사용률이 최대치로를 찍으며 시스템이 응답 불능 상태에 빠진 순간의 작업 관리자 캡처다. GPU VRAM이 모자라 연산이 CPU로 넘어가는 순간 서버는 마비 직전까지 몰렸다.[배경] 보안과 비용, 두 마리 토끼를 잡고 싶었습니다회사 내부에서 AI의 활용 빈도가 늘어날수록, 자연스럽게 두 가지 큰 벽에 부딪혔습.. 더보기 텔레그램 봇으로 일일 보고 시스템을 만들며 겪은 API의 매운맛 텔레그램 봇으로 일일 보고 시스템을 만들며 겪은 API의 매운맛텔레그램 봇 API를 활용해 매일 아침 자동으로 서비스 현황을 보고받는 시스템을 구축하려 했다. 그런데 메시지가 오지 않거나, 5번씩 중복으로 쏟아지거나, 텍스트가 외계어로 깨지는 문제가 연속으로 터졌다. 텔레그램 API의 3가지 숨겨진 함정을 직접 뚫어본 기록이다.이러한 문제들을 해결하기 위해 처음 작성했던 파이썬 코드의 일부를 살펴보면 그 원인을 짐작할 수 있다.위 화면은 텔레그램 봇이 서비스 일일 현황 데이터를 전송하는 코드 작업 화면이다. 이 코드는 완성 직후 서버에 올렸을 때 메시지가 오지 않거나, 반대로 동일한 메시지가 연달아 5번 쏟아지는 예상치 못한 문제를 일으켰다. 보기엔 단순한 API 연동 코드지만, 메시지 길이 제한·Rat.. 더보기 크롬 드라이버 버전 오류와의 전쟁, 웹드라이버 매니저로 마침표를 찍다 크롬 드라이버 버전 오류와의 전쟁, 웹드라이버 매니저로 마침표를 찍다크롬 브라우저가 자동 업데이트되면서 셀레늄 자동화 봇이 갑자기 먹통이 된 경험을 기록한다. SessionNotCreatedException 에러가 반복되는 이유를 찾는 데만 이틀이 걸렸고, 해결책은 단 한 줄의 라이브러리 교체였다.위 화면은 크롬 브라우저 자동 업데이트 이후 셀레늄 스크립트를 실행한 순간의 터미널 로그다. SessionNotCreatedException과 함께 "This version of ChromeDriver only supports Chrome version..."이라는 메시지가 붉게 도배된 화면은, 지금껏 정상 작동하던 자동화 봇이 하루아침에 멈췄다는 것을 의미한다. 하드코딩된 드라이버 파일과 업데이트된 브라우저 .. 더보기 클릭 한 번으로 블로그와 쇼츠를 여러 채널에 동시에 업로드하는 방법 콘텐츠 자동화 시스템을 완성하고 나서 매일 1개의 고품질 원고와 9:16 쇼츠 동영상이 파이썬을 통해 알아서 구워져 나오는 환경을 구축했습니다. 이제 매일 아침 커피 한 잔을 마시며 폴더에 새로 쌓인 작업물들을 확인하기만 하면 되니 “드디어 나만의 디지털 빌딩에서 월세를 받는 무인 자동화가 성사되었구나!”라며 크게 만족했습니다.하지만 기쁨도 잠시였습니다. 또 다른 수동 노동이 저를 기다리고 있었기 때문입니다.파이썬이 완벽하게 정리해 둔 블로그 글 파일(blog.md)을 복사해서 티스토리 에디터에 붙여넣고, 가로형 이미지들을 한 장 한 장 단락 사이에 드래그하여 배치하며, 유튜브에 들어가 쇼츠 영상과 자막 파일을 수동으로 올리는 작업이 매일 반복되었습니다. 플랫폼이 2~3개로 늘어날수록 복붙과 업로드에 들.. 더보기 Gemini API 비용을 90% 줄이는 파이썬 코드 최적화 가이드 (3대 안전장치) AI 자동화 스크립트를 만들어 실전에 적용하는 일은 매우 설레는 과정입니다. 하지만 비용을 통제하지 않는 코드는 자칫하면 지갑을 얇게 만드는 주범이 됩니다. 개발 초기 단계에서 발생하는 사소한 무한 루프나 불필요한 중복 데이터 전송은 순식간에 수십만 원의 요금 청구서로 돌아오곤 합니다.이를 방지하기 위해, 파이썬 코드 단에서 API 비용을 획기적으로 차단하고 효율성을 극대화할 수 있는 3대 비용 안전장치 핵심 코드를 공유합니다. 이 코드를 복사하여 대표님의 프로젝트에 바로 탑재해 보세요.1. 무한 루프 에러 폭탄 방지: 지수 백오프 재시도 로직API를 상시 가동할 때 가장 위험한 시나리오는 네트워크 에러나 일시적인 API 장애가 났을 때입니다. 예외 처리가 제대로 되어 있지 않으면 코드가 밤새 에러를 뱉.. 더보기 Google Gemini API 비용이 예상보다 많이 나왔을 때 제가 했던 대응 Google Gemini API 비용이 예상보다 많이 나왔을 때 제가 했던 대응AI와 파이썬을 결합한 자동화 스크립트를 신나게 돌리기 시작하면서, 저는 콘텐츠 제작에 들어가는 시간이 획기적으로 줄어들 것이라 확신했습니다. 대량의 데이터를 수집하고 요약해서 포스팅 준비를 마치는 루틴을 보며 “이 정도 속도면 1인 기업 자동화는 식은 죽 먹기겠는데?”라고 생각했습니다.하지만 실제 결과는 기대와 달랐습니다.작업은 자동으로 진행되었지만, 며칠 뒤 확인한 구글 클라우드 콘솔의 요금 청구서는 제 예상보다 훨씬 높은 금액을 가리키고 있었습니다. 이번 글은 성공담이 아닙니다. 오히려 멍청한 실수로 비용 폭탄을 맞았던 부끄러운 실패의 기록입니다.다만 이 실패 덕분에 앞으로 파이선생 AI 자동화랩의 시스템을 어떻게 설계하.. 더보기 이전 1 다음