구글 제미니(Gemini)로 나만의 노트 필기 도구 'Quinoa'를 개발한 이야기

by DD
2개월 전
조회수 12

저자는 SaaS 도구 'Granola'의 Linux 미지원으로 인해 개인용 노트 필기 도구 'Quinoa'를 개발

구글 제미니(Gemini) API를 활용하여 회의 녹취, 요약, 노트 강화, RAG 기반 검색 기능 구현

코딩 에이전트(Coding Agent)를 활용하여 코드 작성 자동화 및 개발 생산성 향상

제미니(Gemini) API의 컨텍스트 이해(Context Understanding) 문제와 새로운 라이브러리(Library) 사용의 어려움을 지적

제미니(Gemini) API를 활용한 노트 필기 도구 아키텍처

저자는 Quinoa 개발에 구글 제미니(Gemini) API를 적극 활용하여, 회의 녹취, 요약, 노트 강화, RAG 기반 검색 기능을 구현했다. 특히, 제미니(Gemini) API는 화자 식별(Speaker Identification)노트 검색(Note Search) 기능을 제공하여 개발 편의성을 높였다.

회의 녹취(Meeting Transcription): 오디오(Audio)를 텍스트(Text)로 변환

회의 요약(Meeting Summarization): 2~3 문장으로 요약 및 액션 아이템(Action Item) 추출

노트 강화(Note Enhancement): 기존 노트에 오디오 및 녹취록 기반 추가 정보 제공

RAG 기반 노트 검색(RAG-based Note Search): 노트 검색 및 출처 인용

이러한 기능들은 코딩 에이전트(Coding Agent)를 통해 자동화되었으며, 개발자는 API 호출에 집중할 수 있었다.

코딩 에이전트(Coding Agent)를 활용한 개발 방식

저자는 Quinoa 개발 과정에서 코딩 에이전트(Coding Agent)를 적극 활용하여 코드 작성 및 리뷰를 자동화했다. 제미니(Gemini) CLI와 OpenCode를 주로 사용했으며, 구글, Anthropic, OpenAI 등 다양한 모델을 활용했다. 이러한 접근 방식은 개발 속도를 향상시키고, 개발 생산성(Development Productivity)을 극대화하는 데 기여했다.

코드 자동 생성(Code Generation): 코딩 에이전트에게 요구사항을 전달하여 코드 생성

코드 리뷰 자동화(Code Review Automation): 에이전트가 코드 리뷰 수행

개발 편의성 증대(Development Convenience): 버그(Bug) 발생 시 에이전트에게 해결 요청

저자는 코딩 에이전트 활용을 통해 개발 과정의 효율성을 높이고, 새로운 기술 학습 기회를 얻었다.

제미니(Gemini) API 사용 시 발생한 문제점

저자는 제미니(Gemini) API를 사용하면서 컨텍스트 이해(Context Understanding) 문제와 새로운 라이브러리(Library) 사용의 어려움을 겪었다. 특히, 새로운 라이브러리를 사용하는 경우, 에이전트가 적절한 컨텍스트를 파악하지 못해 오류가 발생하는 경우가 많았다. 이는 코딩 에이전트의 성능(Performance) 및 정확도(Accuracy)에 부정적인 영향을 미쳤다.

컨텍스트 부족(Lack of Context): 새로운 라이브러리 사용 시 에이전트의 이해 부족

구현 오류(Implementation Error): 컨텍스트 부족으로 인한 코드 오류 발생

해결 방안(Solution): 제미니 API Dev skill 활용 권장

저자는 이러한 문제점을 해결하기 위해 제미니 API Dev skill을 활용할 것을 권장하며, API 사용에 대한 추가적인 학습의 필요성을 강조했다.

SaaS 시장에 대한 고찰

저자는 SaaS(Software as a Service) 기업의 미래에 대한 의문을 제기하며, 개인화된 도구(Customized Tool) 개발의 중요성을 강조했다. 코딩 에이전트의 발전으로 인해, 사용자는 자신에게 맞는 도구를 직접 개발할 수 있게 되었으며, 이는 SaaS 기업에게 새로운 경쟁 환경(New Competitive Landscape)을 제시한다.

SaaS의 종말(End of SaaS): 개인화된 도구 개발의 증가

코딩 에이전트의 역할(Role of Coding Agent): 개발 장벽 완화

개인 맞춤형 도구(Customized Tool): 사용자 경험(User Experience) 극대화

저자는 이러한 변화를 통해, SaaS 기업은 경쟁 우위를 확보하기 위해 차별화된 가치를 제공해야 한다고 주장한다.

SaaS Companies Fear Me: Cloning* Granola for Linux

댓글 0

첫 번째 댓글을 남겨보세요!