[AI 크리에이티브 로그] 내 AI 챗봇을 전 세계에 무료 배포하기: API 키 유출 사고로 배운 깃허브(GitHub) 연동법
캐릭터 기획(1화)과 PC 로컬 구현(2화)을 거쳐, 마침내 내가 만든 챗봇을 전 세계 누구나 URL 하나로 접속할 수 있도록 웹에 무료로 배포(Deploy)하는 3부작의 마지막 과정입니다. 깃허브(GitHub)와 스트림릿 클라우드(Streamlit Cloud)를 연결하는 간단한 세팅법과 함께, 코드에 API 키를 그대로 올렸다가 구글에 의해 즉각 차단당했던 아찔한 유출 사고의 경험과 완벽한 해결책을 공유합니다.
Key Takeaways:
- 무료 배포의 핵심 도구 2가지: 작성한 코드를 인터넷에 저장하는 코드용 구글 드라이브 ‘깃허브(GitHub)’와, 그 코드를 읽어 실제 웹 서비스로 실행시켜 주는 ‘스트림릿 클라우드(Streamlit Cloud)’를 활용하면 비용 0원으로 서비스 런칭이 가능합니다.
- .gitignore 파일의 중요성: 깃허브에 코드를 올릴 때 절대 대중에게 공개되어서는 안 될 보안 파일을 지정하는 장치입니다. 메모장으로 ‘.env’ 한 줄만 적어 파일을 만든 뒤 프로젝트 폴더에 넣어줍니다.
- API 키 유출 사고(403 PERMISSION_DENIED) 발생: 내 PC용으로 짰던 코드(app.py)에 API 키를 텍스트로 그대로 박아둔 채 깃허브 Public(공개) 저장소에 올렸다가, 구글 자동 감지 시스템에 의해 키가 유출 처리되어 즉각 강제 차단되는 사고를 겪었습니다.
- 안전한 API 키 은닉(Secrets) 세팅법: 깃허브에 올라가는 코드에는 키를 지우고
st.secrets["GEMINI_API_KEY"]라는 명령어로 교체합니다. 실제 API 키는 코드 밖인 스트림릿 클라우드의 ‘Advanced settings(Secrets)’ 메뉴에 따로 입력해야 안전하게 챗봇이 구동됩니다. - 비개발자 1인 창작의 시대: 캐릭터 설계라는 본질에만 집중하고 나머지 기술적 구현과 배포는 AI의 가이드를 따르면, 단 하루 만에 전 세계를 대상으로 한 AI 서비스(Queen’s Chamber)를 만들어낼 수 있습니다.
초보자도 따라 할 수 있는 깃허브 저장소(Repository) 생성 방법과 스트림릿 배포(Deploy) 클릭 순서 등 상세한 스크린샷 가이드는 아래 링크의 원문 리포트에서 확인하실 수 있습니다.
🔗 [ 네이버 블로그에서 원문 전체 읽기 ]