TerraQuest AI: 화면 대신 자연을 만지다
요약
TerraQuest AI는 사용자가 화면에서 벗어나 현실 세계의 자연을 탐험하도록 돕기 위해 설계된 오프라인 우선 AI 동반자입니다. 이 플랫폼은 로컬 AI 모델과 게임화된 야외 도전 과제를 결합하여, 생물 다양성 학습 및 자연과의 연결에 초점을 맞춥니다. 주요 기능으로는 포켓 모드(Pocket Mode), AI 기반 식물/동물 식별, 그리고 오프라인 필드 가이드 등이 포함되어 있습니다.
핵심 포인트
- 화면 사용을 줄이고 현실 세계 탐험을 유도하는 것이 핵심 철학입니다.
- 로컬 AI 모델과 오프라인 우선 기능을 결합하여 데이터 독립성을 확보했습니다.
- 게임화된 챌린지와 자연 일지 기능을 통해 교육적 경험을 제공합니다.
이 글은 Hacktoberfest Open-Source AI Challenge — Week 1: Touch Grass에 제출하는 내용입니다.
제가 만든 것 (What I Built)
저는 **TerraQuest AI — 현실 세계를 위한 오프라인 AI 동반자(Your Offline AI Companion for the Real World)**를 만들었습니다. 이는 사람들이 화면을 응시하는 시간을 줄이고 자연과 더 많은 시간을 보내도록 돕기 위해 설계된 오픈 소스, 개인 정보 보호 우선의 야외 탐험 플랫폼입니다.
대부분의 디지털 애플리케이션은 참여도를 극대화하고 사용자를 온라인 상태로 유지하도록 설계되어 있습니다. TerraQuest AI는 정반대의 접근 방식을 취합니다: AI를 사용하여 사람들이 현실 세계를 탐험하고, 생물 다양성에 대해 배우며, 휴대폰을 내려놓도록 돕습니다.
이 애플리케이션은 오프라인 우선 기능(offline-first functionality), 로컬 AI 모델(local AI models), 자연 탐험 도구, 그리고 게임화된 야외 도전 과제(gamified outdoor challenges)를 결합하여 외출하는 경험을 더욱 흥미롭고 교육적인 경험으로 만듭니다.
🌱 주요 기능 (Key Features)
-
포켓 모드 (Pocket Mode): 야외 퀘스트를 선택하고, 체크리스트를 검토한 다음, 휴대폰을 잠그고 탐험하도록 장려하는 최소화된 화면으로 전환합니다.
-
AI 기반 자연 식별: 안내형 형태학적 질문(guided morphological questions), 이미지 분석, 그리고 선택적 로컬 비전 모델(local vision models)을 사용하여 식물, 새, 나무, 곤충을 탐험합니다.
-
스마트 어드벤처 플래너 (Smart Adventure Planner): 자연에 초점을 맞춘 체크포인트와 접근성 고려 사항이 포함된 15~60분 동안 지속되는 야외 활동을 계획합니다.
-
자연 만지기 도전 과제 (Touch Grass Challenges): 화면 없는 활동을 완료하고, 야생 동물을 관찰하며, 나뭇잎 구조를 발견하고, 자연 테마의 XP와 배지를 얻습니다.
-
AI 정원 플래너 (AI Garden Planner): 햇빛, 토양 유형 및 성장 조건에 기반하여 계절별 원예 지침을 받습니다.
-
개인 자연 일지 (Private Nature Journal): 관찰 내용, 사진, 메모 및 선택적 위치 정보를 브라우저에 직접 저장합니다.
-
조류 소리 분석 (Birdsong Analysis): 브라우저의 Web Audio API를 통해 오디오 파형을 탐험합니다.
-
오프라인 현장 가이드 (Offline Field Guide): 인터넷 접속이나 로컬 AI 모델이 사용 불가능할 때도 로컬 분류학 정보(local taxonomy information)와 결정론적 식별 휴리스틱(deterministic identification heuristics)을 계속 사용할 수 있습니다.
-
데이터 포터빌리티 (Data Portability): JSON 및 CSV 형식으로 저널 데이터를 내보내고 가져올 수 있습니다.
TerraQuest AI는 하나의 단순한 철학을 바탕으로 설계되었습니다: 기술은 우리가 화면 너머의 세상과 다시 연결되도록 도와야 합니다.
데모 (Demo)
🌐 실시간 애플리케이션 (Live Application): [https://terraquest-ai-murex.vercel.app]
애플리케이션을 탐색하고, 자연 식별 작업 공간인 Pocket Mode, 야외 챌린지, 그리고 개인 필드 저널을 사용해 보세요.
의미 있는 데모를 위해, 먼저 퀘스트를 선택하고 Pocket Mode를 활성화한 다음, 애플리케이션이 계속해서 브라우징하는 대신 밖에 나가도록 장려하는 경험을 해보세요.
코드 (Code)
💻 GitHub 저장소 (GitHub Repository): [https://github.com/GenX0Gravity/TerraQuestAI]
본 프로젝트는 오픈 소스 우선 아키텍처(open-source-first architecture)로 구축되었으며, 기여를 환영합니다. 개발자들은 코드를 탐색하고, 로컬 AI 모델을 실험하며, 자연 식별 기능을 개선하거나 새로운 야외 활동을 추가할 수 있습니다.
제작 과정 (How I Built It)
저는 최신 웹 스택과 로컬 우선(local-first) AI 아키텍처를 사용하여 TerraQuest AI를 구축했습니다.
기술 스택 (Technology stack):
- Next.js 15 및 React 19 — 애플리케이션 프레임워크 및 사용자 인터페이스.
- TypeScript 및 Tailwind CSS — 타입 안전 개발(Type-safe development) 및 반응형 스타일링.
- Ollama — 오픈 가중치 언어 모델 및 비전 모델을 위한 선택적 로컬 추론 (local inference).
- Qwen 2.5 및 Gemma 2 — 자연주의자 추론 및 지원을 위한 오픈 가중치 언어 모델 옵션.
- Moondream 및 LLaVA — 이미지 기반 탐색을 위한 선택적 로컬 비전 모델.
- Dexie.js 및 IndexedDB — 관찰 기록, 저널 항목 및 진행 상황을 위한 브라우저 기반 스토리지.
- OpenStreetMap 및 Leaflet — 야외 지도 및 자연 중심의 탐험 기능.
- Web Audio API — 지저귐(birdsong) 탐색을 위한 오디오 파형 분석.
- Vitest — 단위 테스트(Unit) 및 통합 테스트(Integration testing).
- PyTorch, Torchvision 및 ONNX — 선택적 종 분류기 훈련 파이프라인을 지원하는 도구.
중요한 설계 결정 중 하나는 클라우드 기반 AI 서비스를 필수로 요구하지 않는 것이었습니다. Ollama를 사용할 수 없을 때, TerraQuest AI는 지원되는 기능을 위해 결정론적(deterministic) 로컬 현장 가이드 엔진으로 폴백(fall back)할 수 있습니다.
이는 연결성이 불안정한 장소에서 애플리케이션의 복원력(resilience)을 높여주고 개인 관찰 기록을 사용자의 기기에 유지하는 데 도움이 됩니다.
이 프로젝트에는 Oxford Flowers 102, Birds 525, PlantVillage와 같은 데이터셋으로 실험하기 위한 머신러닝(machine-learning) 학습 파이프라인도 포함되어 있습니다.
오픈 혁신은 왜 중요한가?
AI 기반 야외 도구는 사용자가 개인 데이터를 포기하거나, 단일 상업 공급자에게 의존하거나, 지속적인 인터넷 연결을 유지할 필요가 없어야 하기 때문에 오픈 혁신이 중요합니다.
TerraQuest AI는 오픈 소스 우선 접근 방식의 여러 장점을 보여줍니다:
1. 설계 단계부터 보장되는 개인정보 보호(Privacy by design)
자연 관찰 기록, 개인 메모, 사진 및 진행 상황은 IndexedDB를 사용하여 브라우저에 로컬로 저장됩니다. 이 애플리케이션은 필수 계정이나 클라우드 기반 저널 스토리지를 요구하지 않도록 설계되었습니다.
2. AI 모델 선택의 자유(Freedom to choose AI models)
Ollama를 통해 로컬 모델을 지원함으로써, 아키텍처는 사용자가 단일 독점 API에만 의존하는 대신 다양한 오픈 가중치 언어 및 비전 모델로 실험할 수 있는 더 많은 유연성을 제공합니다.
3. 안정적인 인터넷 연결 이상의 접근성(Accessibility beyond reliable internet)
로컬 현장 가이드 엔진과 오프라인 기능을 통해 사용자는 연결성이 제한적일 때도 탐험을 계속할 수 있습니다. 일부 지도 콘텐츠와 로컬 모델 기능은 별도의 요구 사항이 있으므로, 모든 기능이 모든 오프라인 환경에서 동일하게 작동하는 것은 아닙니다.
4. 실험에 대한 낮은 장벽(Lower barriers to experimentation)
개발자는 코드를 검사하고, 애플리케이션을 수정하며, 데이터셋으로 실험하고, 분류기(classifier)를 훈련시키고, 전체 시스템을 유료 AI 서비스 중심으로 구축할 필요 없이 개선 사항에 기여할 수 있습니다.
5. 실제 경험을 장려하는 AI
가장 중요한 부분은 프로젝트의 목적입니다. TerraQuest AI는 끝없는 스크롤에 최적화하기보다는 사용자들이 새를 관찰하고, 식물에 대해 배우고, 야외 공간을 탐험하며, 기기에서 벗어나도록 장려합니다.
오픈 혁신(Open innovation)은 이러한 접근 방식을 검토하고, 적응시키며, 협력적으로 개선하는 것을 용이하게 합니다.
나의 에이전트 세션 (My Agent Session)
저는 AI 지원 개발을 활용하여 프로젝트의 형태를 잡고, 아키텍처를 다듬었으며, 기능을 응집력 있는 애플리케이션으로 정리했습니다.
개발 과정은 이 도전 과제의 핵심 아이디어인 ‘풀밭 만지기(Touch Grass)’를 실질적인 기능성으로 전환하는 데 중점을 두었습니다. 여기에는 포켓 모드(Pocket Mode), 오프라인 우선 자연 탐험, 로컬 AI 통합, 야외 챌린지, 그리고 개인 필드 저널이 포함됩니다.
또한 저는 명확한 README, 문서화된 설정 지침, 테스트 가이드, 기여 가이드라인을 통해 프로젝트의 유지보수성을 확보하는 데 집중했습니다.
목표는 단순히 다른 애플리케이션에 AI를 추가하는 것이 아니었습니다. 그것은 오픈 AI 모델과 사려 깊은 제품 디자인이 사람들이 물리적 세계에서 더 많은 시간을 보내도록 어떻게 장려할 수 있는지 탐구하는 것이었습니다.
수상 부문 (Prize Categories)
TerraQuest AI는 다음 주제들과 특히 관련성이 높습니다:
- 오픈 소스 AI(Open-Source AI): 아키텍처가 오픈 웨이트 모델(open-weight models)을 사용한 로컬 추론과 결정론적 오프라인 폴백(deterministic offline fallback)을 지원합니다.
- 오프라인 및 프라이버시 우선 혁신 (Offline and Privacy-First Innovation): 핵심 자연 탐험 및 저널 기능은 브라우저 내에서 로컬로 작동하도록 설계되었습니다.
- 풀밭 만지기 (Touch Grass): 포켓 모드와 화면 없는 야외 챌린지는 사람들이 기기에서 벗어나도록 직접적으로 장려합니다.
- 커뮤니티 협업 (Community Collaboration): 이 프로젝트는 코드, 테스트, 자연 데이터베이스, 머신러닝 파이프라인에 대한 기여를 환영합니다.
최종 생각 (Final Thoughts)
TerraQuest AI를 구축하는 과정은 제가 중요하다고 생각하는 아이디어를 다시 한번 확인시켜 주었습니다. 기술의 가장 좋은 활용법은 항상 사람들이 그 기술을 더 많이 사용하게 만드는 것이 아닐 때가 있다는 것입니다.
때로는, 사람들이 그것을 치워두는 자신감을 주는 종류의 기술이 가장 좋습니다.
🌿 풀을 만져보세요. 주변 환경을 탐험하세요. 자연에 대해 무언가를 배우세요. AI를 목적지가 아닌 안내자로 삼으세요.
프로젝트: TerraQuest AI on GitHub
실시간 데모: Try TerraQuest AI
챌린지: Hacktoberfest Open-Source AI Challenge — Week 1: Touch Grass
#Hacktoberfest #OpenSource #AI #MachineLearning #NextJS #Ollama #TouchGrass #PrivacyFirst
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기