Migrate Embeddings from Gemini API to Vertex AI

Resolved 💬 3 comments Opened Jan 9, 2026 by nathangoss Closed Feb 23, 2026

Summary

Currently, embeddings are using the Gemini API (generativelanguage.googleapis.com) while video transcription uses Vertex AI. This creates split billing and authentication paths.

Current State

  • Video Transcription: Uses Vertex AI (aiplatform.googleapis.com)
  • Embeddings: Uses Gemini API (generativelanguage.googleapis.com/v1beta/models/gemini-embedding-001:batchEmbedContents)

Proposed Change

Migrate embedding generation to use Vertex AI for consistency:

  • Consolidate billing under single GCP project
  • Use same authentication method (service account) for all AI calls
  • Potentially benefit from Vertex AI's higher rate limits

Files to Modify

  • app/utils/embedding_service.py - Update to use Vertex AI client for embeddings

Priority

Low - Current implementation works perfectly (100% success rate over 500+ calls in last 7 days). This is a cleanup/consolidation task, not a bug fix.

Notes

  • Pricing is identical between Gemini API and Vertex AI
  • No functional change expected - just billing/auth consolidation

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗