기숙사 생활 해독: Infosys Mysore DC를 위한 100% 오프라인 AI 슬랭 번역기 제작
요약
Infosys Mysore DC 트레이니들을 위해 기숙사 슬랭과 캠퍼스 용어를 해독하는 오프라인 AI 번역기 'Slang Bridge'를 개발했습니다. 이 앱은 Streamlit, FastAPI, Ollama 등 오픈 소스를 활용하여 로컬 장치에서 실행되며, Wi-Fi 의존성 없이 높은 개인 정보 보호와 낮은 지연 시간을 보장합니다.
핵심 포인트
- 오프라인 작동: 클라우드 연결 없이 로컬 장치에서 구동되어 개인 정보 보호를 극대화했습니다.
- 풀스택 아키텍처: FastAPI 백엔드, Streamlit 프론트엔드, Ollama 기반의 모듈식 구조로 설계되었습니다.
- 현지화된 번역: 캠퍼스 특유의 슬랭과 용어에 초점을 맞춰 실용적인 커뮤니케이션 도구입니다.
_이 글은 Hacktoberfest Weekend Challenge: Build for a Friend 제출물입니다.
제가 만든 것
저는 **DC 룸메이트 슬랭 브릿지(DC Roommate Slang Bridge)**를 만들었습니다. 이것은 Infosys Mysore DC 캠퍼스 트레이니들을 위해 특별히 설계된, 100% 오프라인의 로컬 우선 문화 번역기이자 룸메이트 언어 다리입니다.
훈련 기간 동안 인도 전역에서 온 수천 명의 트레이니들이 거대한 337에이커 규모의 Mysore 캠퍼스에 모여듭니다. 이로 인해 지역 언어, 강한 지역 슬랭, GEC 학업 불안감, JC 푸드코트 계획, 그리고 ECC 기숙사 농담 등이 대규모로 충돌합니다. 룸메이트 간의 의사소통 장벽과 문화적 오해는 때때로 재미있는 혼란을 야기할 수 있습니다. 저는 이 앱을 제 기숙사 룸메이트들과 동기들을 위해 만들었습니다. 클라우드 의존성 없이, 100% 개인 정보 보호를 보장하여 지역 슬랭, 기숙사 농담, 캠퍼스 용어를 즉시 해독할 수 있게 했습니다. 이렇게 하면 불안정한 기숙사 Wi-Fi가 분위기나 소통의 흐름을 끊지 않습니다.
데모
이 애플리케이션은 절대적인 개인 정보 보호와 제로 지연 시간의 기숙사 Wi-Fi 복원력을 위해 완전히 오프라인으로 작동하므로, 사용자의 로컬 장치에서 실행됩니다:
- 프론트엔드 UI (
localhost:8501): Streamlit으로 구축되었으며, 실시간 캠퍼스 상태 배지(337에이커 Mysore DC, GEC/JC/ECC 구역 표시, 활성 사전 용어 개수 및 오프라인 엔진 상태), 구조화된 3부 구성 카드(직접적인 의미, 분위기 & 어조, 그리고 캠퍼스 맥락), 문화적 뉘앙스 노트, 사용 준비가 된 룸메이트 응답 제안 기능을 특징으로 합니다. - 로컬 LAN 공유:
streamlit run frontend/app.py --server.address 0.0.0.0명령을 통해 기숙사 Wi-Fi 네트워크를 거쳐 룸메이트들의 장치에 로컬로 원활하게 호스팅할 수 있어, 룸메이트들이 자신의 휴대폰이나 노트북에서 즉시 접근할 수 있습니다.
코드
전체 코드를 확인하세요: https://github.com/AbhavyaManchanda/SlangBridgeDC
프로젝트는 로컬 추론(local inference), 사전 관리(dictionary management), 그리고 반응형 UI를 분리하는 깔끔하고 모듈화된 풀스택 아키텍처를 따릅니다:
backend/main.py: 번역 엔드포인트, CORS 설정, 실시간 백엔드 상태 확인을 처리하는 FastAPI 서버 진입점입니다.backend/ollama_service.py: 로컬 Ollama 데몬과의 통신을 관리하며, 시스템 프롬프트(system prompts)를 구성하여 모델 응답이 캠퍼스 맥락에 엄격하게 근거하도록 합니다.backend/dictionary_service.py: 로컬 캠퍼스 사전 데이터베이스(data/campus_dictionary.json)를 불러오고 쿼리하며, 현지화된 용어 매칭을 처리합니다.frontend/app.py&frontend/components.py: Streamlit 기반의 반응형 프론트엔드에서 깔끔한 UI 컴포넌트, 분석 카드(breakdown cards), 사이드바 컨트롤을 렌더링합니다.frontend/styles.css: 현대적이고 다크 모드 친화적인 캠퍼스 미학에 맞춰 조정된 사용자 정의 CSS 스타일입니다.
구축 과정 (How I Built It)
이 프로젝트는 오픈 소스 도구를 사용하여 로컬 우선(local-first)이며 개인 정보 보호에 중점을 둔 풀스택 애플리케이션으로 설계되었습니다:
- 로컬 추론 엔진 (
Ollama): 포트11434에서 로컬로 실행되는 오픈 웨이트 모델(llama3/gemma2)을 기반으로 합니다. 이를 통해 외부 API 키, 인터넷 연결 또는 유료 클라우드 토큰이 필요 없는 100% 오프라인 기능을 보장합니다. - 백엔드 아키텍처 (
FastAPI&Pydantic): 고성능 비동기 요청 처리를 위해 FastAPI를 사용하여 구축되었습니다. Pydantic 모델(TranslationBreakdown,DictionaryTerm,AddTermRequest)은 UI와 추론 엔진 간에 엄격한 데이터 유효성 검사 및 구조화된 JSON 응답을 보장합니다. - 프론트엔드 & UI 레이어 (
Streamlit): 사용자 정의 컨테이너 레이아웃, 깔끔한 마크다운 카드, 실시간 백엔드 상태 모니터링으로 설계되어 원활한 사용자 경험을 제공합니다.
오픈 혁신이 중요한 이유 (Why Does Open Innovation Matter?)
오픈 이노베이션과 오픈 웨이트 로컬 모델 덕분에, OpenAI나 Anthropic 같은 폐쇄적인 상용 API로는 불가능했던 방식으로 이 프로젝트가 가능해졌습니다.
기숙사 및 캠퍼스 네트워크는 종종 속도 제한(throttled)되거나, 제한되거나, 높은 지연 시간(high latency)에 시달릴 수 있으며, 클라우드 API에 의존한다는 것은 절대적인 인터넷 의존성을 의미합니다. Ollama를 통해 오픈 웨이트 모델을 활용함으로써, 교육생들은 인터넷 접속 없이도 자신의 로컬 노트북에서 무거운 인텔리전스를 직접 실행할 수 있습니다. 이는 제로 API 비용과 개인 기숙사 대화 및 지역적 표현에 대한 완전한 데이터 프라이버시를 보장합니다. 오픈 소스 로컬 툴링은 개발자들에게 자신들의 소프트웨어 스택에 대한 진정한 주권(sovereignty)을 제공합니다.
수상 부문 (Prize Categories)
- 오픈 소스 AI / 로컬 우선 앱 (Open Source AI / Local-First Apps)
- Hacktoberfest 주말 챌린지 (Hacktoberfest Weekend Challenge)
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기