🤖 AI Summary
This post walks through a fully managed Google Cloud pipeline to add semantic search over GitHub issues: CloudQuery syncs issues into BigQuery, BigQuery delegates embedding generation to Vertex AI via a “remote model” (gemini-embedding-001), and you run vector search and RAG-style answering with Gemini. The result is the same UX as a pgvector/OpenAI build but with far less ops overhead—no vector DB to run, elastic scale, pay‑per‑query pricing, and centralized governance in BigQuery. It’s especially attractive for teams already on GCP who want fast, production-ready semantic search over issues, support tickets, docs, or analytics data.
Key technical pieces: create a BigQuery remote model that points to Vertex AI (CREATE OR REPLACE MODEL ... REMOTE WITH CONNECTION ... OPTIONS(ENDPOINT='gemini-embedding-001')), use CloudQuery CLI with a yaml that specifies embed_columns (title, body), text splitting, and remote_model_name:textembedding to populate a github_issues_embeddings table. Queries use ML.GENERATE_EMBEDDING to embed the query, VECTOR_SEARCH (COSINE) to retrieve top-k chunks, and a small Python script that calls Vertex AI’s genai client (e.g., gemini-2.5-flash) to synthesize answers. Required APIs/roles: BigQuery API, BigQuery Connection API, Vertex AI API, and IAM roles (bigquery.admin, projectIamAdmin, Vertex AI User for the connection service account). Caveats: match regions, monitor cost/quotas, and note remote model names vs. Vertex AI model IDs.
Loading comments...
login to comment
loading comments...
no comments yet