diff --git a/doConnect.go.notyet b/doConnect.go.notyet new file mode 100644 index 0000000..52fdc7c --- /dev/null +++ b/doConnect.go.notyet @@ -0,0 +1,28 @@ +package main + +import ( + "context" + "fmt" + "os" + + "github.com/google/generative-ai-go/genai" + "google.golang.org/api/option" +) + +// doConnect initializes and returns a Gemini client. +// It reads the API key from the GEMINI_API_KEY environment variable. +func doConnect() (*genai.GenerativeModel, error) { + apiKey := os.Getenv("GEMINI_API_KEY") + if apiKey == "" { + return nil, fmt.Errorf("GEMINI_API_KEY environment variable not set") + } + + ctx := context.Background() + client, err := genai.NewClient(ctx, option.WithAPIKey(apiKey)) + if err != nil { + return nil, fmt.Errorf("failed to create new genai client: %w", err) + } + + model := client.GenerativeModel("gemini-pro") + return model, nil +}