From e9f5be541b61edffb4a6344cdff35ea23461c5da Mon Sep 17 00:00:00 2001 From: Yanlong Wang Date: Mon, 5 May 2025 22:55:28 +0800 Subject: [PATCH] chore: serp provider tweak --- src/api/serp.ts | 8 +++++--- thinapps-shared | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/api/serp.ts b/src/api/serp.ts index 1d1e15a..81951a9 100644 --- a/src/api/serp.ts +++ b/src/api/serp.ts @@ -26,6 +26,7 @@ import { SerperBingSearchService, SerperGoogleSearchService } from '../services/ import type { JinaEmbeddingsTokenAccount } from '../shared/db/jina-embeddings-token-account'; import { LRUCache } from 'lru-cache'; import { API_CALL_STATUS } from '../shared/db/api-roll'; +import { InternalJinaSerpService } from '../services/serp/internal'; const WORLD_COUNTRY_CODES = Object.keys(WORLD_COUNTRIES).map((x) => x.toLowerCase()); @@ -92,6 +93,7 @@ export class SerpHost extends RPCHost { protected googleSerp: GoogleSERP, protected serperGoogle: SerperGoogleSearchService, protected serperBing: SerperBingSearchService, + protected jinaSerp: InternalJinaSerpService, ) { super(...arguments); @@ -449,7 +451,7 @@ export class SerpHost extends RPCHost { return result; } - *iterProviders(preference?: string) { + *iterProviders(preference?: string, variant?: string) { if (preference === 'bing') { yield this.serperBing; yield this.serperGoogle; @@ -466,9 +468,9 @@ export class SerpHost extends RPCHost { return; } + yield variant === 'web' ? this.jinaSerp : this.serperGoogle; yield this.serperGoogle; yield this.googleSerp; - yield this.googleSerp; } async cachedSearch(variant: 'web' | 'news' | 'images', query: Record, opts: CrawlerOptions) { @@ -501,7 +503,7 @@ export class SerpHost extends RPCHost { let r: any[] | undefined; let lastError; outerLoop: - for (const client of this.iterProviders(provider)) { + for (const client of this.iterProviders(provider, variant)) { const t0 = Date.now(); try { switch (variant) { diff --git a/thinapps-shared b/thinapps-shared index a23636b..6980830 160000 --- a/thinapps-shared +++ b/thinapps-shared @@ -1 +1 @@ -Subproject commit a23636b2161908eefd897b6976c10a5924e2cd57 +Subproject commit 69808307131d4fbd8ef0026f5d2dcb90ebdfad8c