Skip to content

Commit 7357044

Browse files
committed
Put a short timeout on the lie detector.
Signed-off-by: Katharine Berry <[email protected]>
1 parent f1e4edd commit 7357044

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

service/assistant/verifier/verifier.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import (
1818
"context"
1919
"encoding/json"
2020
"log"
21+
"time"
2122

2223
"github.com/honeycombio/beeline-go"
2324
"google.golang.org/genai"
@@ -67,7 +68,10 @@ func DetermineActions(ctx context.Context, qt *quota.Tracker, message string) ([
6768

6869
temperature := float32(0.1)
6970
f := false
70-
response, err := geminiClient.Models.GenerateContent(ctx, "models/gemini-2.0-flash-lite", []*genai.Content{
71+
// We don't want to hold up the user for too long - if the model is responding slowly, just give up.
72+
// Under normal circumstances, the P99 response time is around 600ms.
73+
timeoutCtx, cancelTimeout := context.WithTimeout(ctx, 1500*time.Millisecond)
74+
response, err := geminiClient.Models.GenerateContent(timeoutCtx, "models/gemini-2.0-flash-lite", []*genai.Content{
7175
genai.NewContentFromText(message, genai.RoleUser),
7276
}, &genai.GenerateContentConfig{
7377
SystemInstruction: genai.NewContentFromText(SYSTEM_PROMPT, genai.RoleUser),
@@ -93,6 +97,7 @@ func DetermineActions(ctx context.Context, qt *quota.Tracker, message string) ([
9397
},
9498
},
9599
})
100+
cancelTimeout()
96101
if err != nil {
97102
return nil, err
98103
}

0 commit comments

Comments
 (0)