@@ -127,7 +127,9 @@ class ModelName(str, Enum):
127127 gemini_2_5_flash = "gemini_2_5_flash"
128128 gemini_2_5_flash_lite = "gemini_2_5_flash_lite"
129129 gemini_3_pro_preview = "gemini_3_pro_preview"
130+ gemini_3_flash = "gemini_3_flash"
130131 nemotron_70b = "nemotron_70b"
132+ nemotron_3_nano = "nemotron_3_nano"
131133 mixtral_8x7b = "mixtral_8x7b"
132134 qwen_2p5_7b = "qwen_2p5_7b"
133135 qwen_2p5_14b = "qwen_2p5_14b"
@@ -1459,7 +1461,6 @@ class KilnModel(BaseModel):
14591461 KilnMimeType .PNG ,
14601462 ],
14611463 gemini_reasoning_enabled = True ,
1462- thinking_level = "medium" ,
14631464 ),
14641465 KilnModelProvider (
14651466 name = ModelProviderName .gemini_api ,
@@ -1492,7 +1493,87 @@ class KilnModel(BaseModel):
14921493 max_parallel_requests = 2 ,
14931494 thinking_level = "medium" ,
14941495 ),
1495- # Vertex isn't working yet: they have a page up, but the API can't find the model ID.
1496+ KilnModelProvider (
1497+ name = ModelProviderName .vertex ,
1498+ model_id = "gemini-3-pro-preview" ,
1499+ structured_output_mode = StructuredOutputMode .json_schema ,
1500+ suggested_for_data_gen = True ,
1501+ suggested_for_evals = True ,
1502+ reasoning_capable = True ,
1503+ gemini_reasoning_enabled = True ,
1504+ thinking_level = "medium" ,
1505+ ),
1506+ ],
1507+ ),
1508+ # Gemini 3 Flash
1509+ KilnModel (
1510+ family = ModelFamily .gemini ,
1511+ name = ModelName .gemini_3_flash ,
1512+ friendly_name = "Gemini 3 Flash" ,
1513+ providers = [
1514+ KilnModelProvider (
1515+ name = ModelProviderName .openrouter ,
1516+ model_id = "google/gemini-3-flash-preview" ,
1517+ structured_output_mode = StructuredOutputMode .json_schema ,
1518+ reasoning_capable = True ,
1519+ suggested_for_data_gen = True ,
1520+ suggested_for_evals = True ,
1521+ supports_doc_extraction = True ,
1522+ multimodal_capable = True ,
1523+ supports_vision = True ,
1524+ multimodal_mime_types = [
1525+ # documents
1526+ KilnMimeType .PDF ,
1527+ KilnMimeType .CSV ,
1528+ KilnMimeType .TXT ,
1529+ KilnMimeType .HTML ,
1530+ KilnMimeType .MD ,
1531+ # images
1532+ KilnMimeType .JPG ,
1533+ KilnMimeType .PNG ,
1534+ ],
1535+ gemini_reasoning_enabled = True ,
1536+ ),
1537+ KilnModelProvider (
1538+ name = ModelProviderName .gemini_api ,
1539+ model_id = "gemini-3-flash-preview" ,
1540+ structured_output_mode = StructuredOutputMode .json_schema ,
1541+ suggested_for_data_gen = True ,
1542+ suggested_for_evals = True ,
1543+ supports_doc_extraction = True ,
1544+ multimodal_capable = True ,
1545+ supports_vision = True ,
1546+ multimodal_mime_types = [
1547+ # documents
1548+ KilnMimeType .PDF ,
1549+ KilnMimeType .CSV ,
1550+ KilnMimeType .TXT ,
1551+ KilnMimeType .HTML ,
1552+ KilnMimeType .MD ,
1553+ # images
1554+ KilnMimeType .JPG ,
1555+ KilnMimeType .PNG ,
1556+ # audio
1557+ KilnMimeType .MP3 ,
1558+ KilnMimeType .WAV ,
1559+ KilnMimeType .OGG ,
1560+ # video
1561+ KilnMimeType .MP4 ,
1562+ KilnMimeType .MOV ,
1563+ ],
1564+ reasoning_capable = True ,
1565+ thinking_level = "medium" ,
1566+ ),
1567+ KilnModelProvider (
1568+ name = ModelProviderName .vertex ,
1569+ model_id = "gemini-3-flash-preview" ,
1570+ structured_output_mode = StructuredOutputMode .json_schema ,
1571+ suggested_for_data_gen = True ,
1572+ suggested_for_evals = True ,
1573+ reasoning_capable = True ,
1574+ gemini_reasoning_enabled = True ,
1575+ thinking_level = "medium" ,
1576+ ),
14961577 ],
14971578 ),
14981579 # Gemini 2.5 Pro
@@ -1887,6 +1968,27 @@ class KilnModel(BaseModel):
18871968 ),
18881969 ],
18891970 ),
1971+ # Nemotron 3 Nano
1972+ KilnModel (
1973+ family = ModelFamily .llama ,
1974+ name = ModelName .nemotron_3_nano ,
1975+ friendly_name = "Nemotron 3 Nano" ,
1976+ providers = [
1977+ KilnModelProvider (
1978+ name = ModelProviderName .openrouter ,
1979+ model_id = "nvidia/nemotron-3-nano-30b-a3b:free" ,
1980+ structured_output_mode = StructuredOutputMode .json_schema ,
1981+ reasoning_capable = True ,
1982+ ),
1983+ KilnModelProvider (
1984+ name = ModelProviderName .ollama ,
1985+ model_id = "nemotron-3-nano" ,
1986+ structured_output_mode = StructuredOutputMode .json_schema ,
1987+ reasoning_capable = True ,
1988+ ollama_model_aliases = ["nemotron-3-nano:30b" ],
1989+ ),
1990+ ],
1991+ ),
18901992 # Nemotron 70B
18911993 KilnModel (
18921994 family = ModelFamily .llama ,
0 commit comments