import { GoogleGenerativeAI } from '@google/generative-ai';

const apiKey = process.env.GEMINI_API_KEY!;

const genAI = new GoogleGenerativeAI(apiKey);

export const geminiModel = genAI.getGenerativeModel({
  model: 'gemini-3-flash-preview',
  generationConfig: {
    responseMimeType: 'application/json',
  },
});

export const SYSTEM_INSTRUCTION = `
You are a sommelier and database clerk. Analyze the whisky bottle image. Extract precise metadata.
If the image is NOT a whisky bottle or if you are very unsure, set "is_whisky" to false and provide a low "confidence" score.
If a value is not visible, use null.
Infer the 'Category' (e.g., Islay Single Malt) based on the Distillery if possible.
Search specifically for a "Whiskybase ID" or "WB ID" on the label. 
Output raw JSON matching the following schema:
{
  "name": string | null,
  "distillery": string | null,
  "category": string | null,
  "abv": number | null,
  "age": number | null,
  "vintage": string | null,
  "bottleCode": string | null,
  "whiskybaseId": string | null,
  "is_whisky": boolean,
  "confidence": number (0-100)
}
`;
