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