한 하루정도 무료 api나, 서비스, 그리고 크롤링을 시도해봤지만 실패했다.
그냥 일괄적으로 데이터만 긁어오는 거면 괜찮겠는데, 목표로 했던 네이버 운세는 막 드롭다운도 있고, 달력도 눌러야 하고, 필드에 입력도 해야 하고... 해서 난이도가 조금 있었던듯
그리고 더 중요한게, 네이버 운세를 가져오는 것은 뭔가의 약관 위반이 될 수도 있다고 해서... 포기하고
그러면 뭘 써야 하나.. 하고 고민중이었는데, 의외로 퇴근하고 약속 자리에서 해결되었다(?)
판교인 된지 한두달 정도 된, 공부 같이 했던 친구들이었는데, 이런저런 얘기 하다가 지금 이런거 만들어보고 있다고 했더니 Gemini 무료 api 토큰 갯수가 한달에 백만개정도!! 된다는 소식 입수
그래서 오늘 시도해볼 것은, Gemini api 를 태워서 그쪽에 프롬프트로 작성해서 넣고, 결과를 받아오는 식으로 구성을 바꿔보려고 한다.
자 그럼 출발

먼저, Gemini api 를 사용하기 위해, Google AI Studio 의 Dashboard 에서, api key 를 설정해준다. 그리고, 그 api 키를 다시 이전에 생성했던 레포에 secret 으로 GEMINI_API_KEY 로 등록해준다.
그리고, 변경될 Gemini api 를 사용할 코드를 구성해주고..

실제로 어떤 식으로 구성될지를 가늠하기 위해 Gemini 에 수동으로 오늘의 운세도 요청해봤다. 그 이후 조금 보기 좋게 구성되도록 약간 요구를 해서 수정해본 다음..

이 문구를 바탕으로 프롬프트도 작성했다. 이런건 전부 GPT에 딸깍으로 시키면 되니까 얼마나 편해~
물론 꼼꼼히 읽어보고 원하는 결과가 나오도록 조정하는 것은 사용자의 몫이다.
[입력 정보]
- 이름: {r["name"]}
- 생년월일(양력): {r["birthday"]}
- 성별: {gender_ko}
- 출생시간: {time_ko}
────────────────────
[출력 형식 — 자리만 고정, 내용·제목은 전부 자유]
────────────────────
① 오늘의 운세 전체를 대표하는 메인 제목
- 사자성어, 은유, 상징적 문구 중 가장 어울리는 형태로 작성
- 날짜(YYYY년 M월 D일 요일)를 그 아래 한 줄로 표기
② 오늘 하루의 흐름을 압축한 한 문장 인용문
- 따옴표 사용
- 감정과 방향성이 드러나야 함
③ 오늘의 전체 운세 해설 (2문단)
- 1문단: 오늘의 분위기, 흐름, 기회와 평가
- 2문단: 장애물 → 전환 → 긍정적 결말의 서사
- 사람, 환경, 타이밍의 작용을 자연스럽게 포함
④ 오늘의 운을 이해하기 위한 심층 해석 파트
- 이 섹션의 제목은 자유롭게 생성
- ‘타고난 나의 성향’과 ‘오늘 마주한 흐름’을
자연물·상황·이야기 구조로 대비시켜 설명
⑤ 오늘의 핵심 포인트들 (2~4개)
- 각 포인트는 소제목 + 설명 문단으로 구성
- 소제목은 오늘의 운을 가장 잘 상징하는 문구로 자유 생성
⑥ 오늘을 위한 현실적인 행동 조언 (3문장)
- 줄바꿈으로만 구분 (번호·불릿 금지)
- 태도 / 관계 / 자기확신 관점에서 각각 하나씩
⑦ 따뜻하게 마무리되는 마지막 문장
- 독자를 다독이며 여운을 남길 것
[분량 가이드]
- 전체 900~1400자 내외
- 읽는 사람이 “오늘 나를 위해 쓴 글”이라고 느낄 것
""".strip()
모든 준비가 다 된 것 같으니.. 이제 한번 실제로 받아 볼 차례!
Github Actions 를 실행시켜보면...
당연히 한번에 될 리가 없겠죠??
여러번의 수정을 거쳤다.
데이터 못 읽어오는것을 수정하기도 하고, 하루에 한번만 전송하도록 수정하고, 여러 값이 있을때 실패하면 에러로그를 쏘면서 나머지 성공 데이터는 끊기지 않도록 수정하고...

이번엔 오긴 오는데 짤리기도 하고...

길고 현학적인 설명을 고봉밥으로 주기도 하며ㅋㅋㅋㅋㅋ

비유를 제한시켰더니 너무 심플해지기도 한다...
아... 프롬프팅 너무 어렵다...
그 외에도 막 오늘 날짜를 자기 마음대로 생성하기도 하고, 뭔가 내용이 마음에 안 들기도 하고, 가독성이 별로기도 하고, 이런저런 수정을 잔뜩 거쳐서

어느 정도 마음에 드는 형태로 작성되기 시작한... 그래도 며칠 두고 봐야 할 것 같다.
그러면 이제 테스트는 어느 정도 끝났으니, 매일 오전 10시 5분에 발송되도록 .yml 을 수정하고, 디버깅을 위한 이런저런 기능들도 추가했으며, 채널에 실 사용자를 위한 튜토리얼도 남겼다.

맞다. 정말 중요한... 실제로 토큰을 얼마나 사용했는가를 살펴보니,

1회 요청당 한 800토큰 정도 사용하고 있는 것 같다. 한달 제한이 1백만 정도이니.. 대충 계산해보면
평일 워킹데이 월 평균 21일정도, 하루에 한번, 1회 요청에 넉넉하게 1000토큰 정도 잡으면.. 대략 47.6명 정도가 사용할 수 있다.
재미로 만든 것 치고는 이정도면 충분할듯? 혹시나 사용자가 저것보다 더 많아지면 글자수를 줄여도 되는 거고.. 일단은 안심해도 될 것 같다.

채널의 모든 봇 메세지를 지우는 스크립트도 짜서, 테스트 하느라 더럽혀진 채널도 싹 청소해주고 나면.. 끝!
이제 실제 사용자를 모집해서 테스트 해볼 일만 남았다.내일오늘 아침이 기다려지네~
GitHub - svcbn/ssr-slack-todays-fortune-bot: 사내 슬랙에 오늘의 운세 봇 작동용 Github Actions
사내 슬랙에 오늘의 운세 봇 작동용 Github Actions. Contribute to svcbn/ssr-slack-todays-fortune-bot development by creating an account on GitHub.
github.com
레포는 공개해놨으니, 운세봇 하나씩 분양받아보고 싶은 분들은 커스텀해봐도 좋겠다.
츄라이 츄라이
'개발 > 잡동사니' 카테고리의 다른 글
| Slack 에 운세봇 만들기 - 2 (0) | 2026.01.15 |
|---|---|
| Slack 에 운세봇 만들기 - 1 (1) | 2026.01.14 |