feat: AI model selection dropdown with Claude and OpenAI models

Replaced free-text model field with Selection showing standard models
from both providers: Claude Opus/Sonnet/Haiku and OpenAI GPT-4o/4.1/o3.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
gsinghpal
2026-04-01 15:36:23 -04:00
parent c169704687
commit c46e4c0b28

View File

@@ -60,8 +60,20 @@ class WooInstance(models.Model):
('openai', 'OpenAI'),
], string='AI Provider')
ai_api_key = fields.Char(string='AI API Key', groups='base.group_system')
ai_model = fields.Char(string='AI Model',
help='e.g., claude-sonnet-4-5-20250514 for Claude or gpt-4o for OpenAI')
ai_model = fields.Selection([
# Claude models
('claude-opus-4-20250514', 'Anthropic — Claude Opus 4'),
('claude-sonnet-4-5-20250514', 'Anthropic — Claude Sonnet 4.5'),
('claude-haiku-4-5-20251001', 'Anthropic — Claude Haiku 4.5'),
# OpenAI models
('gpt-4o', 'OpenAI — GPT-4o'),
('gpt-4o-mini', 'OpenAI — GPT-4o Mini'),
('gpt-4-turbo', 'OpenAI — GPT-4 Turbo'),
('gpt-4.1', 'OpenAI — GPT-4.1'),
('gpt-4.1-mini', 'OpenAI — GPT-4.1 Mini'),
('gpt-4.1-nano', 'OpenAI — GPT-4.1 Nano'),
('o3-mini', 'OpenAI — o3 Mini'),
], string='AI Model')
# AI Prompts
prompt_product_title = fields.Text(string='Product Title Prompt',