-- ============================================
-- WebVal - Mise à jour complète des modèles
-- Gemini, Mistral, OpenAI, Ollama
-- ============================================

-- Supprimer les anciens modèles
DELETE FROM available_models WHERE provider IN ('gemini', 'mistral', 'openai');

-- GEMINI (Google) - Modèles gratuits et puissants
INSERT INTO available_models 
(provider, model_id, display_name, description, context_length, is_free, cost_per_1m_tokens, recommended, speed_rating, quality_rating) 
VALUES
('gemini', 'gemini-2.5-flash', 'Gemini 2.5 Flash', 'Dernier modèle rapide de Google (juin 2025)', 1048576, TRUE, 0, TRUE, 5, 5),
('gemini', 'gemini-2.0-flash', 'Gemini 2.0 Flash', 'Modèle rapide et polyvalent', 1048576, TRUE, 0, FALSE, 5, 4),
('gemini', 'gemini-2.5-pro', 'Gemini 2.5 Pro', 'Modèle le plus puissant (juin 2025)', 1048576, FALSE, 1.25, FALSE, 3, 5);

-- MISTRAL - Modèles français performants
INSERT INTO available_models 
(provider, model_id, display_name, description, context_length, is_free, cost_per_1m_tokens, recommended, speed_rating, quality_rating) 
VALUES
('mistral', 'mistral-small-latest', 'Mistral Small', 'Modèle compact et rapide', 32000, FALSE, 0.20, FALSE, 5, 3),
('mistral', 'ministral-3b-latest', 'Ministral 3B', 'Petit modèle efficace pour le raisonnement', 128000, FALSE, 0.04, TRUE, 5, 3),
('mistral', 'ministral-8b-latest', 'Ministral 8B', 'Meilleur équilibre qualité/vitesse', 128000, FALSE, 0.10, TRUE, 4, 4),
('mistral', 'mistral-large-latest', 'Mistral Large', 'Modèle le plus puissant de Mistral', 128000, FALSE, 2.00, FALSE, 3, 5);

-- OPENAI - Modèles de référence
INSERT INTO available_models 
(provider, model_id, display_name, description, context_length, is_free, cost_per_1m_tokens, recommended, speed_rating, quality_rating) 
VALUES
('openai', 'gpt-4o-mini', 'GPT-4o Mini', 'Petit modèle rapide et économique', 128000, FALSE, 0.15, TRUE, 5, 4),
('openai', 'gpt-4o', 'GPT-4o', 'Modèle multimodal puissant', 128000, FALSE, 2.50, FALSE, 4, 5),
('openai', 'gpt-4-turbo', 'GPT-4 Turbo', 'Modèle GPT-4 optimisé', 128000, FALSE, 10.00, FALSE, 3, 5);

-- Vérification
SELECT 
    provider, 
    COUNT(*) as nb_modeles,
    SUM(CASE WHEN recommended = 1 THEN 1 ELSE 0 END) as nb_recommandes
FROM available_models
WHERE provider IN ('gemini', 'mistral', 'openai', 'ollama')
GROUP BY provider
ORDER BY provider;

SELECT '✅ Modèles mis à jour : Gemini (3), Mistral (4), OpenAI (3), Ollama (3)' as Status;
