in go/files.go [327:369]
func FilesDelete() error {
// [START files_delete]
ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
APIKey: os.Getenv("GEMINI_API_KEY"),
Backend: genai.BackendGeminiAPI,
})
if err != nil {
log.Fatal(err)
}
myfile, err := client.Files.UploadFromPath(
ctx,
filepath.Join(getMedia(), "poem.txt"),
&genai.UploadFileConfig{
MIMEType: "text/plain",
},
)
if err != nil {
log.Fatal(err)
}
// Delete the file.
_, err = client.Files.Delete(ctx, myfile.Name, nil)
if err != nil {
log.Fatal(err)
}
// Attempt to use the deleted file.
parts := []*genai.Part{
genai.NewPartFromURI(myfile.URI, myfile.MIMEType,),
genai.NewPartFromText("Describe this file."),
}
contents := []*genai.Content{
genai.NewContentFromParts(parts, genai.RoleUser),
}
_, err = client.Models.GenerateContent(ctx, "gemini-2.0-flash", contents, nil)
// Expect an error when using a deleted file.
if err != nil {
return nil
}
return fmt.Errorf("expected an error when using deleted file")
// [END files_delete]
}