mirror of
https://github.com/sipeed/picoclaw.git
synced 2026-06-12 18:08:54 +00:00
b3a7b7ad64
* feat: add agent self-evolution * fix ci * delete unused doc * fix lint * fix evolution review issues
26 lines
591 B
Go
26 lines
591 B
Go
package evolution
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
)
|
|
|
|
const (
|
|
llmTaskSuccessJudgeTimeout = 15 * time.Second
|
|
llmPatternClusterTimeout = 45 * time.Second
|
|
llmDraftGenerationTimeout = 60 * time.Second
|
|
)
|
|
|
|
func withLLMCallTimeout(parent context.Context, timeout time.Duration) (context.Context, context.CancelFunc) {
|
|
if parent == nil {
|
|
parent = context.Background()
|
|
}
|
|
if timeout <= 0 {
|
|
return context.WithCancel(parent)
|
|
}
|
|
if deadline, ok := parent.Deadline(); ok && time.Until(deadline) <= timeout {
|
|
return context.WithCancel(parent)
|
|
}
|
|
return context.WithTimeout(parent, timeout)
|
|
}
|