FieldQuest: 야외 활동을 위한 로컬 AI 퀘스트
요약
FieldQuest는 사용자의 시간과 기분을 기반으로 야외 활동을 위한 로컬 AI 퀘스트를 생성하는 웹 애플리케이션입니다. Hugging Face Transformers.js와 SmolLM2-360M-Instruct 같은 오픈 웨이트 모델을 브라우저에서 직접 실행하여, 위치 정보나 서버 연결 없이 오프라인으로 작동합니다. 이는 개인의 프라이버시 보호와 개방성을 강조한 개발 사례입니다.
핵심 포인트
- 위치 정보 및 서버 의존성 없음: 사용자의 사생활 보호에 초점을 맞춤.
- 로컬 브라우저 추론 구현: Hugging Face Transformers.js를 활용하여 오프라인 작동 가능.
- 오픈 웨이트 모델 사용: SmolLM2-360M-Instruct와 같은 오픈 모델을 사용하여 투명성을 확보함.
- 사용자 경험 중심 설계: 공공장소에서 쉽게 적용할 수 있는 짧은 퀘스트 제공.
이 글은 Hacktoberfest Open-Source AI Challenge: Week 1: Touch Grass에 제출하는 내용입니다.
제가 만든 것 (What I Built)
FieldQuest는 사용자가 가진 시간과 현재 기분이라는 두 가지 간단한 선택지를 기반으로 작은 야외 퀘스트를 만듭니다. 프롬프트를 읽고, 휴대폰을 주머니에 넣은 다음, 주변의 무언가를 찾아보세요.
이 앱은 위치 정보를 요청하지 않습니다. 퀘스트는 짧고, 익숙한 공공장소에 적용하기 쉬우며, 활동 중 화면에서 벗어나도록 설계되었습니다.
데모 (Demo)
코드 (Code)
제작 과정 (How I Built It)
FieldQuest는 Hugging Face Transformers.js를 사용하여 오픈 웨이트(open-weight) 모델인 SmolLM2-360M-Instruct를 브라우저에서 로컬로 실행합니다. 이 모델은 q4f16 ONNX 내보내기(export) 방식을 사용하며, 코드에 모델 개정 버전이 고정되어 있습니다. 양자화된 모델 가중치 파일 크기는 약 272 MB이며, 토크나이저 및 브라우저 실행 환경 자산이 첫 다운로드에 추가됩니다. 자산 캐싱 후에는 기기에서 추론(inference)이 실행되며, 해당 캐시가 유지되는 동안 앱은 오프라인으로 작동할 수 있습니다.
모델은 짧은 자연 관련 세부 사항을 제안합니다. FieldQuest는 이를 선택된 시간과 기분에 맞는 고정된 퀘스트 문구로 구성한 다음, 구문 형식과 작은 금지어 목록(blocked-term list)을 확인합니다. 이 목록은 제한적인 가드레일(guardrail) 역할만 합니다. 앱은 여전히 사용자에게 익숙한 공공장소를 선택하고, 길을 따라 이동하며, 상황에 대한 자체 판단을 사용하도록 요청합니다.
이 앱에는 애플리케이션 서버가 없습니다. 시간과 기분 선택 정보는 페이지 메모리에 남아 있으며 로컬 추론에만 사용됩니다. GPS, 계정 또는 분석(analytics) 기능은 없습니다.
오픈 혁신이 중요한 이유 (Why Does Open Innovation Matter?)
모델 가중치와 추론 코드는 검사하고, 변경하고, 자체 호스팅하거나 교체할 수 있습니다. 로컬 추론을 한다는 것은 두 가지 작은 선호도 선택 정보가 폐쇄적인 API로 전송될 필요가 없으며, 모든 모델 자산이 캐시된 상태에서는 생성(generation)에 연결이 필요하지 않다는 의미입니다. 오픈 웨이트는 누군가의 기분이나 위치를 다른 서비스로 보내지 않고도 이 작은 도구를 실행할 수 있게 만듭니다.
수상 부문
전체 챌린지 출품작입니다. 파트너 카테고리는 지정되지 않았습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기