Forráskód Böngészése

zen: fix routing non OC traffic

Frank 4 hete
szülő
commit
47cf267c23
1 módosított fájl, 5 hozzáadás és 2 törlés
  1. 5 2
      packages/console/app/src/routes/zen/util/handler.ts

+ 5 - 2
packages/console/app/src/routes/zen/util/handler.ts

@@ -120,6 +120,7 @@ export async function handler(
         zenData,
         authInfo,
         modelInfo,
+        ip,
         sessionId,
         trialProviders,
         retry,
@@ -402,6 +403,7 @@ export async function handler(
     zenData: ZenData,
     authInfo: AuthInfo,
     modelInfo: ModelInfo,
+    ip: string,
     sessionId: string,
     trialProviders: string[] | undefined,
     retry: RetryOptions,
@@ -430,10 +432,11 @@ export async function handler(
           .flatMap((provider) => Array<typeof provider>(provider.weight ?? 1).fill(provider))
 
         // Use the last 4 characters of session ID to select a provider
+        const identifier = sessionId.length ? sessionId : ip
         let h = 0
-        const l = sessionId.length
+        const l = identifier.length
         for (let i = l - 4; i < l; i++) {
-          h = (h * 31 + sessionId.charCodeAt(i)) | 0 // 32-bit int
+          h = (h * 31 + identifier.charCodeAt(i)) | 0 // 32-bit int
         }
         const index = (h >>> 0) % providers.length // make unsigned + range 0..length-1
         const provider = providers[index || 0]