From 09dbbd3b0f84cfd3d4c59f0b91ad6055e2d368f8 Mon Sep 17 00:00:00 2001 From: Yanlong Wang Date: Thu, 25 Jul 2024 08:56:02 +0800 Subject: [PATCH] fix: retry for brave search --- backend/functions/src/services/brave-search.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/backend/functions/src/services/brave-search.ts b/backend/functions/src/services/brave-search.ts index 7fbe8a9..c07dde1 100644 --- a/backend/functions/src/services/brave-search.ts +++ b/backend/functions/src/services/brave-search.ts @@ -1,4 +1,4 @@ -import { AsyncService, AutoCastable, DownstreamServiceFailureError, Prop, RPC_CALL_ENVIRONMENT, marshalErrorLike } from 'civkit'; +import { AsyncService, AutoCastable, DownstreamServiceFailureError, Prop, RPC_CALL_ENVIRONMENT, marshalErrorLike, retry } from 'civkit'; import { singleton } from 'tsyringe'; import { Logger } from '../shared/services/logger'; import { SecretExposer } from '../shared/services/secrets'; @@ -31,6 +31,7 @@ export class BraveSearchService extends AsyncService { this.braveSearchHTTP = new BraveSearchHTTP(this.secretExposer.BRAVE_SEARCH_API_KEY); } + @retry(3, Math.ceil(500 + 500 * Math.random())) async webSearch(query: WebSearchQueryParams) { const ip = this.threadLocal.get('ip'); const extraHeaders: WebSearchOptionalHeaderOptions = {}; @@ -145,7 +146,7 @@ export class BraveSearchExplicitOperatorsDto extends AutoCastable { return [searchTerm, opPart].join(' '); } - return searchTerm + return searchTerm; } static override from(input: any) { @@ -163,7 +164,7 @@ export class BraveSearchExplicitOperatorsDto extends AutoCastable { continue; } - const filtered = customValue.split(', ').filter(Boolean) + const filtered = customValue.split(', ').filter(Boolean); if (filtered.length) { Reflect.set(instance, p, filtered); }