@@ -149,6 +149,7 @@ class ModelName(str, Enum):
149149 claude_sonnet_4_6 = "claude_sonnet_4_6"
150150 claude_sonnet_4_5 = "claude_sonnet_4_5"
151151 claude_opus_4 = "claude_opus_4"
152+ claude_opus_5 = "claude_opus_5"
152153 claude_opus_4_1 = "claude_opus_4_1"
153154 claude_opus_4_5 = "claude_opus_4_5"
154155 claude_opus_4_6 = "claude_opus_4_6"
@@ -591,6 +592,15 @@ class KilnModel(BaseModel):
591592 "Max" : "max" ,
592593}
593594
595+ CLAUDE_OPUS_5_ANTHROPIC_THINKING_LEVELS = {
596+ "Off/None" : "none" ,
597+ "Low" : "low" ,
598+ "Medium" : "medium" ,
599+ "High" : "high" ,
600+ "Extra High" : "xhigh" ,
601+ "Max" : "max" ,
602+ }
603+
594604CLAUDE_FABLE_5_ANTHROPIC_THINKING_LEVELS = {
595605 "Low" : "low" ,
596606 "Medium" : "medium" ,
@@ -2366,17 +2376,17 @@ class KilnModel(BaseModel):
23662376 ),
23672377 ],
23682378 ),
2369- # Claude Opus 4.8
2379+ # Claude Opus 5
23702380 KilnModel (
23712381 family = ModelFamily .claude ,
2372- name = ModelName .claude_opus_4_8 ,
2373- friendly_name = "Claude Opus 4.8 " ,
2382+ name = ModelName .claude_opus_5 ,
2383+ friendly_name = "Claude Opus 5 " ,
23742384 featured_rank = 2 ,
23752385 editorial_notes = "Anthropic's best Claude model. Expensive, but often the best." ,
23762386 providers = [
23772387 KilnModelProvider (
23782388 name = ModelProviderName .openrouter ,
2379- model_id = "anthropic/claude-opus-4.8 " ,
2389+ model_id = "anthropic/claude-opus-5 " ,
23802390 structured_output_mode = StructuredOutputMode .json_schema ,
23812391 openrouter_reasoning_object = True ,
23822392 available_thinking_levels = CLAUDE_OPENROUTER_THINKING_LEVELS ,
@@ -2397,10 +2407,10 @@ class KilnModel(BaseModel):
23972407 ),
23982408 KilnModelProvider (
23992409 name = ModelProviderName .anthropic ,
2400- model_id = "claude-opus-4-8 " ,
2410+ model_id = "claude-opus-5 " ,
24012411 structured_output_mode = StructuredOutputMode .json_schema ,
24022412 temp_top_p_exclusive = True ,
2403- available_thinking_levels = CLAUDE_OPUS_4_8_ANTHROPIC_THINKING_LEVELS ,
2413+ available_thinking_levels = CLAUDE_OPUS_5_ANTHROPIC_THINKING_LEVELS ,
24042414 default_thinking_level = "high" ,
24052415 anthropic_summarized_thinking = True ,
24062416 suggested_for_evals = True ,
@@ -2418,6 +2428,52 @@ class KilnModel(BaseModel):
24182428 ),
24192429 ],
24202430 ),
2431+ # Claude Opus 4.8
2432+ KilnModel (
2433+ family = ModelFamily .claude ,
2434+ name = ModelName .claude_opus_4_8 ,
2435+ friendly_name = "Claude Opus 4.8" ,
2436+ providers = [
2437+ KilnModelProvider (
2438+ name = ModelProviderName .openrouter ,
2439+ model_id = "anthropic/claude-opus-4.8" ,
2440+ structured_output_mode = StructuredOutputMode .json_schema ,
2441+ openrouter_reasoning_object = True ,
2442+ available_thinking_levels = CLAUDE_OPENROUTER_THINKING_LEVELS ,
2443+ default_thinking_level = "none" ,
2444+ supports_doc_extraction = True ,
2445+ supports_vision = True ,
2446+ multimodal_capable = True ,
2447+ multimodal_requires_pdf_as_image = True ,
2448+ multimodal_mime_types = [
2449+ KilnMimeType .PDF ,
2450+ KilnMimeType .TXT ,
2451+ KilnMimeType .MD ,
2452+ KilnMimeType .JPG ,
2453+ KilnMimeType .PNG ,
2454+ ],
2455+ ),
2456+ KilnModelProvider (
2457+ name = ModelProviderName .anthropic ,
2458+ model_id = "claude-opus-4-8" ,
2459+ structured_output_mode = StructuredOutputMode .json_schema ,
2460+ temp_top_p_exclusive = True ,
2461+ available_thinking_levels = CLAUDE_OPUS_4_8_ANTHROPIC_THINKING_LEVELS ,
2462+ default_thinking_level = "high" ,
2463+ anthropic_summarized_thinking = True ,
2464+ supports_doc_extraction = True ,
2465+ supports_vision = True ,
2466+ multimodal_capable = True ,
2467+ multimodal_mime_types = [
2468+ KilnMimeType .PDF ,
2469+ KilnMimeType .TXT ,
2470+ KilnMimeType .MD ,
2471+ KilnMimeType .JPG ,
2472+ KilnMimeType .PNG ,
2473+ ],
2474+ ),
2475+ ],
2476+ ),
24212477 # Claude Opus 4.7
24222478 KilnModel (
24232479 family = ModelFamily .claude ,
@@ -8169,9 +8225,24 @@ class KilnModel(BaseModel):
81698225 KilnMimeType .PNG ,
81708226 ],
81718227 ),
8228+ KilnModelProvider (
8229+ name = ModelProviderName .fireworks_ai ,
8230+ model_id = "accounts/fireworks/models/kimi-k3" ,
8231+ structured_output_mode = StructuredOutputMode .json_schema ,
8232+ supports_data_gen = True ,
8233+ multimodal_capable = True ,
8234+ supports_vision = True ,
8235+ supports_doc_extraction = True ,
8236+ multimodal_requires_pdf_as_image = True ,
8237+ multimodal_mime_types = [
8238+ KilnMimeType .PDF ,
8239+ KilnMimeType .JPG ,
8240+ KilnMimeType .PNG ,
8241+ ],
8242+ ),
81728243 # SiliconFlow provider omitted: moonshotai/Kimi-K3 returns HTTP 400
81738244 # "Model does not exist" on the .cn endpoint Kiln uses (it appears live
8174- # on the .com site only). Not yet on Fireworks AI or Together AI (K2.6 / K2.7).
8245+ # on the .com site only). Not yet on Together AI (K2.6 / K2.7).
81758246 ],
81768247 ),
81778248 # Kimi K2.6
0 commit comments