feat: robust FormData handling for AI services to improve N100 performance and stability
This commit is contained in:
@@ -5,7 +5,6 @@ import { Camera, Upload, CheckCircle2, AlertCircle, X, Search, ExternalLink, Arr
|
||||
|
||||
import { createClient } from '@/lib/supabase/client';
|
||||
import { useRouter, useSearchParams } from 'next/navigation';
|
||||
import { analyzeBottle } from '@/services/analyze-bottle';
|
||||
import { saveBottle } from '@/services/save-bottle';
|
||||
import { BottleMetadata } from '@/types/whisky';
|
||||
import { db } from '@/lib/db';
|
||||
@@ -158,8 +157,13 @@ export default function CameraCapture({ onImageCaptured, onAnalysisComplete, onS
|
||||
return;
|
||||
}
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('file', processed.file);
|
||||
formData.append('provider', aiProvider);
|
||||
formData.append('locale', locale);
|
||||
|
||||
const startAi = performance.now();
|
||||
const response = await magicScan(compressedBase64, aiProvider, locale);
|
||||
const response = await magicScan(formData);
|
||||
const endAi = performance.now();
|
||||
|
||||
const startPrep = performance.now();
|
||||
|
||||
@@ -87,11 +87,15 @@ export default function ScanAndTasteFlow({ isOpen, onClose, imageFile }: ScanAnd
|
||||
const endComp = performance.now();
|
||||
setProcessedImage(processed);
|
||||
|
||||
const cleanBase64 = processed.base64.split(',')[1] || processed.base64;
|
||||
console.log('[ScanFlow] Calling magicScan service with compressed images (WebP)...');
|
||||
console.log('[ScanFlow] Calling magicScan service with FormData (optimized WebP)...');
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('file', processed.file);
|
||||
formData.append('provider', 'gemini');
|
||||
formData.append('locale', locale);
|
||||
|
||||
const startAi = performance.now();
|
||||
const result = await magicScan(cleanBase64, 'gemini', locale);
|
||||
const result = await magicScan(formData);
|
||||
const endAi = performance.now();
|
||||
|
||||
const startPrep = performance.now();
|
||||
|
||||
Reference in New Issue
Block a user