AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

Genkit – Google Firebase가 프로덕션에서 쓰는 오픈소스 AI 앱 프레임워크

Genkit은 AI 기능을 웹·모바일·백엔드 앱에 넣기 위한 오픈소스 프레임워크다. Google Firebase가 만들고 프로덕션에서 사용하며, 모델 호출·구조화 출력·툴 호출·RAG·플로우·관찰 가능성을 하나의 개발 경험으로 묶는다. JavaScript/TypeScript와 Go는 프로덕션 준비 상태, Python은 베타, Dart는 프리뷰 단계다.

왜 필요한가

AI 앱을 만들 때 모델 API 호출만으로는 부족하다. 실제 제품에는 프롬프트 버전 관리, 타입이 있는 출력, 검색 증강 생성(RAG), 도구 호출, 로컬 디버깅, 평가, 배포 후 추적이 함께 필요하다. Genkit은 이 과정을 Firebase·Cloud Run·일반 Node.js/Go/Python 런타임에 붙일 수 있는 애플리케이션 프레임워크로 제공한다.

GitHub 저장소 기준 약 6천 개의 스타를 보유한 Apache-2.0 프로젝트이며, Google Gemini뿐 아니라 OpenAI, Anthropic, Ollama 등 여러 모델 제공자를 플러그인 방식으로 연결한다.

핵심 기능

기능설명
모델 추상화Gemini, OpenAI, Anthropic, Ollama 등 여러 모델 제공자를 같은 패턴으로 호출
구조화 출력스키마를 기반으로 LLM 응답을 타입이 있는 데이터로 생성
툴 호출애플리케이션 함수를 모델이 호출할 수 있는 도구로 노출
플로우(Flow)AI 작업을 관찰 가능하고 테스트 가능한 서버 측 함수로 정의
RAG리트리버, 인덱서, 임베더를 조합해 검색 증강 생성 파이프라인 구성
개발 UI로컬에서 플로우·프롬프트·모델·툴 실행 결과와 trace를 시각적으로 확인
배포·관찰Firebase, Cloud Run, 일반 서버 런타임에 배포하고 운영 지표를 추적

기본 사용 예

TypeScript에서는 genkit 코어와 모델 플러그인을 설치한 뒤 ai.generate()로 호출한다.

import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/google-genai';

const ai = genkit({ plugins: [googleAI()] });

const { text } = await ai.generate({
  model: googleAI.model('gemini-flash-latest'),
  prompt: 'What is the meaning of life?'
});

Genkit의 중심 단위는 flow다. 일반 함수처럼 작성하지만 입력·출력 스키마, trace, 평가, Developer UI 실행을 붙일 수 있어 프로토타입에서 운영 코드로 옮기기 쉽다.

개발 도구

CLI는 전역 설치 후 로컬 앱을 감싸서 실행한다.

npm install -g genkit-cli
npm install genkit @genkit-ai/google-genai

genkit start -- npx tsx --watch src/index.ts

genkit start를 실행하면 텔레메트리 API와 Developer UI가 로컬 포트에서 열린다. 이 UI에서 정의된 flow, prompt, model, tool, retriever, indexer, embedder, evaluator를 직접 실행하고 trace를 확인할 수 있다.

어떤 팀에 맞나

  • Firebase·Google Cloud 기반 제품팀: Cloud Functions for Firebase, Cloud Run, Gemini API와 자연스럽게 연결되는 AI 기능을 만들 때 적합하다.
  • TypeScript/Go 백엔드 팀: LangChain류의 범용 체인 프레임워크보다 앱 코드에 가까운 형태로 플로우와 도구를 정의하고 싶을 때 유용하다.
  • AI 기능을 제품에 내장하는 팀: 챗봇, 추천, 자동화, 문서 기반 질의응답처럼 모델 호출·도구·검색·관찰을 함께 관리해야 하는 경우에 맞다.
  • 프로토타입을 운영으로 옮기는 팀: 로컬 Developer UI에서 prompt와 flow를 빠르게 실험하고, 같은 정의를 배포·모니터링까지 이어갈 수 있다.

다른 프레임워크와의 차이

비교 대상Genkit의 차이
LangChain체인 조립보다 앱 플로우, 로컬 개발 UI, 배포 후 관찰 가능성에 더 초점을 둔다
pydantic-aiPython 타입 안전성 중심인 Pydantic AI와 달리 TypeScript·Go·Firebase 생태계 통합이 강하다
직접 SDK 호출모델 호출뿐 아니라 flow, trace, RAG, 평가, 툴 호출을 제품 개발 단위로 묶는다
클라우드 전용 AI 빌더Google 생태계와 잘 맞지만 오픈소스이고 Google 외 모델·배포 환경도 지원한다

한계와 주의점

  • 언어별 성숙도가 다르다. JavaScript/TypeScript와 Go는 프로덕션 준비 상태지만 Python은 베타, Dart는 프리뷰다.
  • Google/Firebase 워크플로에 가장 자연스럽다. AWS·Azure·자체 Kubernetes 중심 팀은 배포와 관찰 계층을 별도로 맞춰야 한다.
  • 단순한 한두 번의 모델 호출만 필요하다면 프레임워크 도입 비용이 더 클 수 있다.

라이선스

Apache-2.0

관련 문서

  • gemini — Google의 멀티모달 AI 모델 및 서비스 생태계
  • google-ai-studio — Gemini API 키와 모델 파라미터를 다루는 개발자 환경
  • rag — 외부 지식을 LLM에 실시간으로 주입하는 검색 증강 생성 기술
  • pydantic-ai — Python 중심 타입 안전 AI 에이전트 프레임워크
  • cloudflare-agents — Durable Objects 기반 영속 상태 AI 에이전트 SDK

참고 자료



AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)