HN 표시: Gemini 멀티모달 임베딩을 사용한 역방향 조회 XKCD 만화

hackernews | | 📦 오픈소스
#chromadb #gemini #xkcd #머신러닝/연구 #멀티모달 #임베딩
원문 출처: hackernews · Genesis Park에서 요약 및 분석

요약

제미니의 멀티모달 임베딩 기술과 크로마DB를 활용하여, XKCD 만화의 이미지나 텍스트 설명을 입력하면 해당 만화를 즉시 찾아주는 역검색 시스템이 소개되었습니다. 이 프로젝트는 이미지와 텍스트가 동일한 임베딩 공간을 공유한다는 점을 활용해, 사용자가 업로드한 이미지뿐만 아니라 ‘파이썬으로 나는 사람’ 같은 구체적인 텍스트 질의로도 코사인 유사도를 통해 원하는 만화를 정확히 검색할 수 있습니다. 또한 오픈 소스 형태로 제공되어, 사용자는 데이터셋을 가져오고 인덱싱한 뒤 로컬 서버에서 직접 해당 기술을 체험해 볼 수 있습니다.

본문

Upload an XKCD comic image or describe it in text — instantly find which comic it is. Powered by gemini-embedding-2-preview multimodal embeddings, ChromaDB for vector storage, and the olivierdehaene/xkcd dataset. reverse-lookup.mov # Install dependencies pip install -r requirements.txt # Set your Gemini API key cp .env.example .env # edit .env with your key # Fetch comics from HF dataset (default: last 50) python fetch_xkcd.py 50 # Build the embedding index python index_comics.py # Start the server python app.py Open http://localhost:8000 and search! - Fetch — Loads XKCD metadata from the HF dataset and downloads comic images. - Index — Embeds each comic (image + text) using gemini-embedding-2-preview . Stores vectors in ChromaDB with two collections:xkcd_images andxkcd_text . - Search — Uploaded images or text queries are embedded with the same model. ChromaDB handles cosine similarity. Text queries score against both collections, taking the max. Because text and images share the same embedding space, you can describe a comic ("someone flying with a python script") and find it just as well as uploading a screenshot.

Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.

공유

관련 저널 읽기

전체 보기 →