aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2026-01-15 11:40:19 +0100
committerDmitry Vyukov <dvyukov@google.com>2026-01-15 12:26:50 +0000
commitb223fd77dc7379c8fd2f26596cf12502a9354ea3 (patch)
tree3a3709596dd253f7dd07bf6724a925d597250d60
parente30f059fce4242956bd289e6690b150ddc6cd0d5 (diff)
pkg/aflow: expect CitationMetadata
CitationMetadata may be present in replies sometimes. CitationMetadata is a specific field in the Gemini API's response object that alerts you when the model has directly quoted or closely derived content from a specific source, such as a book, website, or open-source code repository. We've got the following error: syz-agent: unexpected reply fields ({Content:0xc0058eb4a0 CitationMetadata:0xc0094009a8 FinishMessage: TokenCount:0 FinishReason:STOP AvgLogprobs:0 GroundingMetadata:<nil> Index:0 LogprobsResult:<nil> SafetyRatings:[] URLContextMetadata:<nil>})
-rw-r--r--pkg/aflow/llm_agent.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/pkg/aflow/llm_agent.go b/pkg/aflow/llm_agent.go
index 76661add6..b897643c7 100644
--- a/pkg/aflow/llm_agent.go
+++ b/pkg/aflow/llm_agent.go
@@ -191,9 +191,9 @@ func (a *LLMAgent) parseResponse(resp *genai.GenerateContentResponse) (
err = fmt.Errorf("%v (%v)", candidate.FinishMessage, candidate.FinishReason)
return
}
- // We don't expect to receive these now.
- if candidate.GroundingMetadata != nil || candidate.CitationMetadata != nil ||
- candidate.LogprobsResult != nil {
+ // We don't expect to receive these fields now.
+ // Note: CitationMetadata may be present sometimes, but we don't have uses for it.
+ if candidate.GroundingMetadata != nil || candidate.LogprobsResult != nil {
err = fmt.Errorf("unexpected reply fields (%+v)", *candidate)
return
}