1package provider
2
3import (
4 "context"
5 "log/slog"
6
7 "google.golang.org/genai"
8)
9
10func NewVertexAIProvider(base *baseProvider) Provider {
11 project := base.extraHeaders["project"]
12 location := base.extraHeaders["location"]
13 client, err := genai.NewClient(context.Background(), &genai.ClientConfig{
14 Project: project,
15 Location: location,
16 Backend: genai.BackendVertexAI,
17 })
18 if err != nil {
19 slog.Error("Failed to create VertexAI client", "error", err)
20 return nil
21 }
22
23 return &geminiProvider{
24 baseProvider: base,
25 client: client,
26 }
27}