kiln-ai 0.18.0__py3-none-any.whl → 0.19.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kiln-ai might be problematic. Click here for more details.
- kiln_ai/adapters/adapter_registry.py +28 -0
- kiln_ai/adapters/data_gen/data_gen_task.py +2 -2
- kiln_ai/adapters/data_gen/test_data_gen_task.py +7 -3
- kiln_ai/adapters/eval/test_eval_runner.py +6 -12
- kiln_ai/adapters/eval/test_g_eval_data.py +1 -1
- kiln_ai/adapters/fine_tune/base_finetune.py +1 -0
- kiln_ai/adapters/fine_tune/fireworks_finetune.py +32 -20
- kiln_ai/adapters/fine_tune/test_fireworks_tinetune.py +30 -21
- kiln_ai/adapters/ml_model_list.py +635 -83
- kiln_ai/adapters/model_adapters/base_adapter.py +11 -7
- kiln_ai/adapters/model_adapters/litellm_adapter.py +14 -1
- kiln_ai/adapters/model_adapters/test_base_adapter.py +1 -1
- kiln_ai/adapters/model_adapters/test_litellm_adapter.py +22 -3
- kiln_ai/adapters/model_adapters/test_structured_output.py +10 -10
- kiln_ai/adapters/parsers/test_r1_parser.py +1 -1
- kiln_ai/adapters/provider_tools.py +20 -19
- kiln_ai/adapters/remote_config.py +57 -10
- kiln_ai/adapters/repair/repair_task.py +1 -1
- kiln_ai/adapters/test_adapter_registry.py +30 -2
- kiln_ai/adapters/test_ml_model_list.py +12 -0
- kiln_ai/adapters/test_provider_tools.py +18 -12
- kiln_ai/adapters/test_remote_config.py +372 -16
- kiln_ai/datamodel/basemodel.py +54 -28
- kiln_ai/datamodel/datamodel_enums.py +2 -0
- kiln_ai/datamodel/dataset_split.py +5 -3
- kiln_ai/datamodel/eval.py +3 -3
- kiln_ai/datamodel/finetune.py +2 -2
- kiln_ai/datamodel/project.py +3 -3
- kiln_ai/datamodel/prompt.py +2 -2
- kiln_ai/datamodel/prompt_id.py +4 -4
- kiln_ai/datamodel/task.py +6 -6
- kiln_ai/datamodel/task_output.py +1 -1
- kiln_ai/datamodel/test_basemodel.py +210 -18
- kiln_ai/datamodel/test_eval_model.py +6 -6
- kiln_ai/datamodel/test_model_perf.py +1 -1
- kiln_ai/datamodel/test_prompt_id.py +5 -1
- kiln_ai/datamodel/test_task.py +5 -0
- kiln_ai/utils/config.py +10 -0
- {kiln_ai-0.18.0.dist-info → kiln_ai-0.19.0.dist-info}/METADATA +32 -2
- {kiln_ai-0.18.0.dist-info → kiln_ai-0.19.0.dist-info}/RECORD +42 -42
- {kiln_ai-0.18.0.dist-info → kiln_ai-0.19.0.dist-info}/WHEEL +0 -0
- {kiln_ai-0.18.0.dist-info → kiln_ai-0.19.0.dist-info}/licenses/LICENSE.txt +0 -0
|
@@ -34,6 +34,11 @@ class ModelFamily(str, Enum):
|
|
|
34
34
|
dolphin = "dolphin"
|
|
35
35
|
grok = "grok"
|
|
36
36
|
kimi = "kimi"
|
|
37
|
+
hunyuan = "hunyuan"
|
|
38
|
+
glm = "glm"
|
|
39
|
+
ernie = "ernie"
|
|
40
|
+
minimax = "minimax"
|
|
41
|
+
pangu = "pangu"
|
|
37
42
|
|
|
38
43
|
|
|
39
44
|
# Where models have instruct and raw versions, instruct is default and raw is specified
|
|
@@ -53,6 +58,10 @@ class ModelName(str, Enum):
|
|
|
53
58
|
llama_3_3_70b = "llama_3_3_70b"
|
|
54
59
|
llama_4_maverick = "llama_4_maverick"
|
|
55
60
|
llama_4_scout = "llama_4_scout"
|
|
61
|
+
gpt_5 = "gpt_5"
|
|
62
|
+
gpt_5_chat = "gpt_5_chat"
|
|
63
|
+
gpt_5_mini = "gpt_5_mini"
|
|
64
|
+
gpt_5_nano = "gpt_5_nano"
|
|
56
65
|
gpt_4o_mini = "gpt_4o_mini"
|
|
57
66
|
gpt_4o = "gpt_4o"
|
|
58
67
|
gpt_4_1 = "gpt_4_1"
|
|
@@ -61,6 +70,8 @@ class ModelName(str, Enum):
|
|
|
61
70
|
gpt_o3_low = "gpt_o3_low"
|
|
62
71
|
gpt_o3_medium = "gpt_o3_medium"
|
|
63
72
|
gpt_o3_high = "gpt_o3_high"
|
|
73
|
+
gpt_oss_20b = "gpt_oss_20b"
|
|
74
|
+
gpt_oss_120b = "gpt_oss_120b"
|
|
64
75
|
gpt_o1_low = "gpt_o1_low"
|
|
65
76
|
gpt_o1_medium = "gpt_o1_medium"
|
|
66
77
|
gpt_o1_high = "gpt_o1_high"
|
|
@@ -111,6 +122,7 @@ class ModelName(str, Enum):
|
|
|
111
122
|
deepseek_3 = "deepseek_3"
|
|
112
123
|
deepseek_r1 = "deepseek_r1"
|
|
113
124
|
deepseek_r1_0528 = "deepseek_r1_0528"
|
|
125
|
+
deepseek_r1_0528_distill_qwen3_8b = "deepseek_r1_0528_distill_qwen3_8b"
|
|
114
126
|
deepseek_r1_distill_qwen_32b = "deepseek_r1_distill_qwen_32b"
|
|
115
127
|
deepseek_r1_distill_llama_70b = "deepseek_r1_distill_llama_70b"
|
|
116
128
|
deepseek_r1_distill_qwen_14b = "deepseek_r1_distill_qwen_14b"
|
|
@@ -132,13 +144,27 @@ class ModelName(str, Enum):
|
|
|
132
144
|
qwen_3_8b_no_thinking = "qwen_3_8b_no_thinking"
|
|
133
145
|
qwen_3_14b = "qwen_3_14b"
|
|
134
146
|
qwen_3_14b_no_thinking = "qwen_3_14b_no_thinking"
|
|
147
|
+
qwen_3_30b_a3b_2507 = "qwen_3_30b_a3b_2507"
|
|
135
148
|
qwen_3_30b_a3b = "qwen_3_30b_a3b"
|
|
149
|
+
qwen_3_30b_a3b_2507_no_thinking = "qwen_3_30b_a3b_2507_no_thinking"
|
|
136
150
|
qwen_3_30b_a3b_no_thinking = "qwen_3_30b_a3b_no_thinking"
|
|
137
151
|
qwen_3_32b = "qwen_3_32b"
|
|
138
152
|
qwen_3_32b_no_thinking = "qwen_3_32b_no_thinking"
|
|
153
|
+
qwen_3_235b_a22b_2507 = "qwen_3_235b_a22b_2507"
|
|
139
154
|
qwen_3_235b_a22b = "qwen_3_235b_a22b"
|
|
155
|
+
qwen_3_235b_a22b_2507_no_thinking = "qwen_3_235b_a22b_2507_no_thinking"
|
|
140
156
|
qwen_3_235b_a22b_no_thinking = "qwen_3_235b_a22b_no_thinking"
|
|
157
|
+
qwen_long_l1_32b = "qwen_long_l1_32b"
|
|
141
158
|
kimi_k2 = "kimi_k2"
|
|
159
|
+
kimi_dev_72b = "kimi_dev_72b"
|
|
160
|
+
glm_4_1v_9b_thinking = "glm_4_1v_9b_thinking"
|
|
161
|
+
glm_z1_32b_0414 = "glm_z1_32b_0414"
|
|
162
|
+
glm_z1_9b_0414 = "glm_z1_9b_0414"
|
|
163
|
+
ernie_4_5_300b_a47b = "ernie_4_5_300b_a47b"
|
|
164
|
+
hunyuan_a13b = "hunyuan_a13b"
|
|
165
|
+
hunyuan_a13b_no_thinking = "hunyuan_a13b_no_thinking"
|
|
166
|
+
minimax_m1_80k = "minimax_m1_80k"
|
|
167
|
+
pangu_pro_moe_72b_a16b = "pangu_pro_moe_72b_a16b"
|
|
142
168
|
|
|
143
169
|
|
|
144
170
|
class ModelParserID(str, Enum):
|
|
@@ -191,7 +217,7 @@ class KilnModelProvider(BaseModel):
|
|
|
191
217
|
suggested_for_uncensored_data_gen: bool = False
|
|
192
218
|
tuned_chat_strategy: ChatStrategy | None = None
|
|
193
219
|
|
|
194
|
-
#
|
|
220
|
+
# We need a more generalized way to handle custom provider parameters.
|
|
195
221
|
# Making them quite declarative here for now, isolating provider specific logic
|
|
196
222
|
# to this file. Later I should be able to override anything in this file via config.
|
|
197
223
|
r1_openrouter_options: bool = False
|
|
@@ -201,6 +227,16 @@ class KilnModelProvider(BaseModel):
|
|
|
201
227
|
thinking_level: Literal["low", "medium", "high"] | None = None
|
|
202
228
|
ollama_model_aliases: List[str] | None = None
|
|
203
229
|
anthropic_extended_thinking: bool = False
|
|
230
|
+
gemini_reasoning_enabled: bool = False
|
|
231
|
+
|
|
232
|
+
# some models on siliconflow allow dynamically disabling thinking
|
|
233
|
+
# currently only supported by Qwen3 and tencent/Hunyuan-A13B-Instruct
|
|
234
|
+
# ref: https://docs.siliconflow.cn/cn/api-reference/chat-completions/chat-completions
|
|
235
|
+
siliconflow_enable_thinking: bool | None = None
|
|
236
|
+
# enable this flag to make reasoning optional for structured output
|
|
237
|
+
# some reasoning models on siliconflow do not return any reasoning for structured output
|
|
238
|
+
# this is not uniform nor documented, so we need to test each model
|
|
239
|
+
reasoning_optional_for_structured_output: bool | None = None
|
|
204
240
|
|
|
205
241
|
|
|
206
242
|
class KilnModel(BaseModel):
|
|
@@ -222,6 +258,63 @@ class KilnModel(BaseModel):
|
|
|
222
258
|
|
|
223
259
|
|
|
224
260
|
built_in_models: List[KilnModel] = [
|
|
261
|
+
# GPT 5
|
|
262
|
+
KilnModel(
|
|
263
|
+
family=ModelFamily.gpt,
|
|
264
|
+
name=ModelName.gpt_5,
|
|
265
|
+
friendly_name="GPT-5",
|
|
266
|
+
providers=[
|
|
267
|
+
KilnModelProvider(
|
|
268
|
+
name=ModelProviderName.openai,
|
|
269
|
+
model_id="gpt-5",
|
|
270
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
271
|
+
suggested_for_data_gen=True,
|
|
272
|
+
suggested_for_evals=True,
|
|
273
|
+
),
|
|
274
|
+
],
|
|
275
|
+
),
|
|
276
|
+
# GPT 5 Mini
|
|
277
|
+
KilnModel(
|
|
278
|
+
family=ModelFamily.gpt,
|
|
279
|
+
name=ModelName.gpt_5_mini,
|
|
280
|
+
friendly_name="GPT-5 Mini",
|
|
281
|
+
providers=[
|
|
282
|
+
KilnModelProvider(
|
|
283
|
+
name=ModelProviderName.openai,
|
|
284
|
+
model_id="gpt-5-mini",
|
|
285
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
286
|
+
suggested_for_evals=True,
|
|
287
|
+
suggested_for_data_gen=True,
|
|
288
|
+
),
|
|
289
|
+
],
|
|
290
|
+
),
|
|
291
|
+
# GPT 5 Nano
|
|
292
|
+
KilnModel(
|
|
293
|
+
family=ModelFamily.gpt,
|
|
294
|
+
name=ModelName.gpt_5_nano,
|
|
295
|
+
friendly_name="GPT-5 Nano",
|
|
296
|
+
providers=[
|
|
297
|
+
KilnModelProvider(
|
|
298
|
+
name=ModelProviderName.openai,
|
|
299
|
+
model_id="gpt-5-nano",
|
|
300
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
301
|
+
),
|
|
302
|
+
],
|
|
303
|
+
),
|
|
304
|
+
# GPT 5 Chat
|
|
305
|
+
KilnModel(
|
|
306
|
+
family=ModelFamily.gpt,
|
|
307
|
+
name=ModelName.gpt_5_chat,
|
|
308
|
+
friendly_name="GPT-5 Chat",
|
|
309
|
+
providers=[
|
|
310
|
+
KilnModelProvider(
|
|
311
|
+
name=ModelProviderName.openai,
|
|
312
|
+
model_id="gpt-5-chat-latest",
|
|
313
|
+
# Oddly no json_schema support for this model.
|
|
314
|
+
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
315
|
+
),
|
|
316
|
+
],
|
|
317
|
+
),
|
|
225
318
|
# GPT 4.1
|
|
226
319
|
KilnModel(
|
|
227
320
|
family=ModelFamily.gpt,
|
|
@@ -234,7 +327,6 @@ built_in_models: List[KilnModel] = [
|
|
|
234
327
|
provider_finetune_id="gpt-4.1-2025-04-14",
|
|
235
328
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
236
329
|
supports_logprobs=True,
|
|
237
|
-
suggested_for_data_gen=True,
|
|
238
330
|
suggested_for_evals=True,
|
|
239
331
|
),
|
|
240
332
|
KilnModelProvider(
|
|
@@ -242,13 +334,11 @@ built_in_models: List[KilnModel] = [
|
|
|
242
334
|
model_id="openai/gpt-4.1",
|
|
243
335
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
244
336
|
supports_logprobs=True,
|
|
245
|
-
suggested_for_data_gen=True,
|
|
246
337
|
suggested_for_evals=True,
|
|
247
338
|
),
|
|
248
339
|
KilnModelProvider(
|
|
249
340
|
name=ModelProviderName.azure_openai,
|
|
250
341
|
model_id="gpt-4.1",
|
|
251
|
-
suggested_for_data_gen=True,
|
|
252
342
|
suggested_for_evals=True,
|
|
253
343
|
),
|
|
254
344
|
],
|
|
@@ -289,6 +379,7 @@ built_in_models: List[KilnModel] = [
|
|
|
289
379
|
model_id="gpt-4.1-nano",
|
|
290
380
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
291
381
|
supports_logprobs=True,
|
|
382
|
+
provider_finetune_id="gpt-4.1-nano-2025-04-14",
|
|
292
383
|
),
|
|
293
384
|
KilnModelProvider(
|
|
294
385
|
name=ModelProviderName.openrouter,
|
|
@@ -550,6 +641,70 @@ built_in_models: List[KilnModel] = [
|
|
|
550
641
|
),
|
|
551
642
|
],
|
|
552
643
|
),
|
|
644
|
+
# GPT OSS 120B
|
|
645
|
+
KilnModel(
|
|
646
|
+
family=ModelFamily.gpt,
|
|
647
|
+
name=ModelName.gpt_oss_120b,
|
|
648
|
+
friendly_name="GPT OSS 120B",
|
|
649
|
+
providers=[
|
|
650
|
+
KilnModelProvider(
|
|
651
|
+
name=ModelProviderName.openrouter,
|
|
652
|
+
model_id="openai/gpt-oss-120b",
|
|
653
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
654
|
+
reasoning_capable=True,
|
|
655
|
+
require_openrouter_reasoning=True,
|
|
656
|
+
),
|
|
657
|
+
KilnModelProvider(
|
|
658
|
+
name=ModelProviderName.groq,
|
|
659
|
+
model_id="openai/gpt-oss-120b",
|
|
660
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
661
|
+
),
|
|
662
|
+
KilnModelProvider(
|
|
663
|
+
name=ModelProviderName.fireworks_ai,
|
|
664
|
+
model_id="accounts/fireworks/models/gpt-oss-120b",
|
|
665
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
666
|
+
reasoning_capable=True,
|
|
667
|
+
),
|
|
668
|
+
KilnModelProvider(
|
|
669
|
+
name=ModelProviderName.ollama,
|
|
670
|
+
model_id="gpt-oss:120b",
|
|
671
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
672
|
+
reasoning_capable=True,
|
|
673
|
+
),
|
|
674
|
+
],
|
|
675
|
+
),
|
|
676
|
+
# GPT OSS 20B
|
|
677
|
+
KilnModel(
|
|
678
|
+
family=ModelFamily.gpt,
|
|
679
|
+
name=ModelName.gpt_oss_20b,
|
|
680
|
+
friendly_name="GPT OSS 20B",
|
|
681
|
+
providers=[
|
|
682
|
+
KilnModelProvider(
|
|
683
|
+
name=ModelProviderName.openrouter,
|
|
684
|
+
model_id="openai/gpt-oss-20b",
|
|
685
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
686
|
+
reasoning_capable=True,
|
|
687
|
+
require_openrouter_reasoning=True,
|
|
688
|
+
),
|
|
689
|
+
KilnModelProvider(
|
|
690
|
+
name=ModelProviderName.groq,
|
|
691
|
+
model_id="openai/gpt-oss-20b",
|
|
692
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
693
|
+
),
|
|
694
|
+
KilnModelProvider(
|
|
695
|
+
name=ModelProviderName.fireworks_ai,
|
|
696
|
+
model_id="accounts/fireworks/models/gpt-oss-20b",
|
|
697
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
698
|
+
reasoning_capable=True,
|
|
699
|
+
),
|
|
700
|
+
KilnModelProvider(
|
|
701
|
+
name=ModelProviderName.ollama,
|
|
702
|
+
model_id="gpt-oss:20b",
|
|
703
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
704
|
+
reasoning_capable=True,
|
|
705
|
+
),
|
|
706
|
+
],
|
|
707
|
+
),
|
|
553
708
|
# GPT o1 Low
|
|
554
709
|
KilnModel(
|
|
555
710
|
family=ModelFamily.gpt,
|
|
@@ -750,6 +905,8 @@ built_in_models: List[KilnModel] = [
|
|
|
750
905
|
suggested_for_data_gen=True,
|
|
751
906
|
suggested_for_evals=True,
|
|
752
907
|
reasoning_capable=True,
|
|
908
|
+
gemini_reasoning_enabled=True,
|
|
909
|
+
thinking_level="medium",
|
|
753
910
|
),
|
|
754
911
|
KilnModelProvider(
|
|
755
912
|
name=ModelProviderName.gemini_api,
|
|
@@ -757,9 +914,9 @@ built_in_models: List[KilnModel] = [
|
|
|
757
914
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
758
915
|
suggested_for_data_gen=True,
|
|
759
916
|
suggested_for_evals=True,
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
917
|
+
reasoning_capable=True,
|
|
918
|
+
gemini_reasoning_enabled=True,
|
|
919
|
+
thinking_level="medium",
|
|
763
920
|
),
|
|
764
921
|
KilnModelProvider(
|
|
765
922
|
name=ModelProviderName.vertex,
|
|
@@ -767,9 +924,9 @@ built_in_models: List[KilnModel] = [
|
|
|
767
924
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
768
925
|
suggested_for_data_gen=True,
|
|
769
926
|
suggested_for_evals=True,
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
927
|
+
reasoning_capable=True,
|
|
928
|
+
gemini_reasoning_enabled=True,
|
|
929
|
+
thinking_level="medium",
|
|
773
930
|
),
|
|
774
931
|
],
|
|
775
932
|
),
|
|
@@ -784,6 +941,7 @@ built_in_models: List[KilnModel] = [
|
|
|
784
941
|
model_id="google/gemini-2.5-flash",
|
|
785
942
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
786
943
|
reasoning_capable=True,
|
|
944
|
+
gemini_reasoning_enabled=True,
|
|
787
945
|
),
|
|
788
946
|
KilnModelProvider(
|
|
789
947
|
name=ModelProviderName.gemini_api,
|
|
@@ -810,17 +968,17 @@ built_in_models: List[KilnModel] = [
|
|
|
810
968
|
KilnModelProvider(
|
|
811
969
|
name=ModelProviderName.openrouter,
|
|
812
970
|
model_id="google/gemini-2.0-flash-001",
|
|
813
|
-
structured_output_mode=StructuredOutputMode.
|
|
971
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
814
972
|
),
|
|
815
973
|
KilnModelProvider(
|
|
816
974
|
name=ModelProviderName.gemini_api,
|
|
817
975
|
model_id="gemini-2.0-flash",
|
|
818
|
-
structured_output_mode=StructuredOutputMode.
|
|
976
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
819
977
|
),
|
|
820
978
|
KilnModelProvider(
|
|
821
979
|
name=ModelProviderName.vertex,
|
|
822
980
|
model_id="gemini-2.0-flash",
|
|
823
|
-
structured_output_mode=StructuredOutputMode.
|
|
981
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
824
982
|
provider_finetune_id="gemini-2.0-flash-001",
|
|
825
983
|
),
|
|
826
984
|
],
|
|
@@ -834,17 +992,17 @@ built_in_models: List[KilnModel] = [
|
|
|
834
992
|
KilnModelProvider(
|
|
835
993
|
name=ModelProviderName.openrouter,
|
|
836
994
|
model_id="google/gemini-2.0-flash-lite-001",
|
|
837
|
-
structured_output_mode=StructuredOutputMode.
|
|
995
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
838
996
|
),
|
|
839
997
|
KilnModelProvider(
|
|
840
998
|
name=ModelProviderName.gemini_api,
|
|
841
999
|
model_id="gemini-2.0-flash-lite",
|
|
842
|
-
structured_output_mode=StructuredOutputMode.
|
|
1000
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
843
1001
|
),
|
|
844
1002
|
KilnModelProvider(
|
|
845
1003
|
name=ModelProviderName.vertex,
|
|
846
1004
|
model_id="gemini-2.0-flash-lite",
|
|
847
|
-
structured_output_mode=StructuredOutputMode.
|
|
1005
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
848
1006
|
provider_finetune_id="gemini-2.0-flash-lite-001",
|
|
849
1007
|
),
|
|
850
1008
|
],
|
|
@@ -858,12 +1016,12 @@ built_in_models: List[KilnModel] = [
|
|
|
858
1016
|
KilnModelProvider(
|
|
859
1017
|
name=ModelProviderName.openrouter,
|
|
860
1018
|
model_id="google/gemini-pro-1.5",
|
|
861
|
-
structured_output_mode=StructuredOutputMode.
|
|
1019
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
862
1020
|
),
|
|
863
1021
|
KilnModelProvider(
|
|
864
1022
|
name=ModelProviderName.gemini_api,
|
|
865
1023
|
model_id="gemini-1.5-pro",
|
|
866
|
-
structured_output_mode=StructuredOutputMode.
|
|
1024
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
867
1025
|
),
|
|
868
1026
|
KilnModelProvider(
|
|
869
1027
|
name=ModelProviderName.vertex,
|
|
@@ -881,12 +1039,12 @@ built_in_models: List[KilnModel] = [
|
|
|
881
1039
|
KilnModelProvider(
|
|
882
1040
|
name=ModelProviderName.openrouter,
|
|
883
1041
|
model_id="google/gemini-flash-1.5",
|
|
884
|
-
structured_output_mode=StructuredOutputMode.
|
|
1042
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
885
1043
|
),
|
|
886
1044
|
KilnModelProvider(
|
|
887
1045
|
name=ModelProviderName.gemini_api,
|
|
888
1046
|
model_id="gemini-1.5-flash",
|
|
889
|
-
structured_output_mode=StructuredOutputMode.
|
|
1047
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
890
1048
|
),
|
|
891
1049
|
KilnModelProvider(
|
|
892
1050
|
name=ModelProviderName.vertex,
|
|
@@ -904,13 +1062,13 @@ built_in_models: List[KilnModel] = [
|
|
|
904
1062
|
KilnModelProvider(
|
|
905
1063
|
name=ModelProviderName.openrouter,
|
|
906
1064
|
model_id="google/gemini-flash-1.5-8b",
|
|
907
|
-
structured_output_mode=StructuredOutputMode.
|
|
1065
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
908
1066
|
supports_data_gen=False,
|
|
909
1067
|
),
|
|
910
1068
|
KilnModelProvider(
|
|
911
1069
|
name=ModelProviderName.gemini_api,
|
|
912
1070
|
model_id="gemini-1.5-flash-8b",
|
|
913
|
-
structured_output_mode=StructuredOutputMode.
|
|
1071
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
914
1072
|
supports_data_gen=False,
|
|
915
1073
|
),
|
|
916
1074
|
],
|
|
@@ -950,6 +1108,11 @@ built_in_models: List[KilnModel] = [
|
|
|
950
1108
|
model_id="meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
|
|
951
1109
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
952
1110
|
),
|
|
1111
|
+
KilnModelProvider(
|
|
1112
|
+
name=ModelProviderName.cerebras,
|
|
1113
|
+
model_id="llama-4-maverick-17b-128e-instruct",
|
|
1114
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1115
|
+
),
|
|
953
1116
|
],
|
|
954
1117
|
),
|
|
955
1118
|
# Llama 4 Scout Basic
|
|
@@ -973,6 +1136,11 @@ built_in_models: List[KilnModel] = [
|
|
|
973
1136
|
model_id="meta-llama/Llama-4-Scout-17B-16E-Instruct",
|
|
974
1137
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
975
1138
|
),
|
|
1139
|
+
KilnModelProvider(
|
|
1140
|
+
name=ModelProviderName.cerebras,
|
|
1141
|
+
model_id="llama-4-scout-17b-16e-instruct",
|
|
1142
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1143
|
+
),
|
|
976
1144
|
],
|
|
977
1145
|
),
|
|
978
1146
|
# Llama 3.1-8b
|
|
@@ -1017,6 +1185,13 @@ built_in_models: List[KilnModel] = [
|
|
|
1017
1185
|
structured_output_mode=StructuredOutputMode.function_calling_weak,
|
|
1018
1186
|
provider_finetune_id="meta-llama/Meta-Llama-3.1-8B-Instruct-Reference",
|
|
1019
1187
|
),
|
|
1188
|
+
KilnModelProvider(
|
|
1189
|
+
name=ModelProviderName.cerebras,
|
|
1190
|
+
model_id="llama3.1-8b",
|
|
1191
|
+
structured_output_mode=StructuredOutputMode.function_calling,
|
|
1192
|
+
supports_data_gen=False,
|
|
1193
|
+
suggested_for_evals=False,
|
|
1194
|
+
),
|
|
1020
1195
|
],
|
|
1021
1196
|
),
|
|
1022
1197
|
# Llama 3.1 70b
|
|
@@ -1170,12 +1345,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1170
1345
|
name=ModelName.llama_3_2_1b,
|
|
1171
1346
|
friendly_name="Llama 3.2 1B",
|
|
1172
1347
|
providers=[
|
|
1173
|
-
KilnModelProvider(
|
|
1174
|
-
name=ModelProviderName.groq,
|
|
1175
|
-
model_id="llama-3.2-1b-preview",
|
|
1176
|
-
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
1177
|
-
supports_data_gen=False,
|
|
1178
|
-
),
|
|
1179
1348
|
KilnModelProvider(
|
|
1180
1349
|
name=ModelProviderName.openrouter,
|
|
1181
1350
|
supports_structured_output=False,
|
|
@@ -1197,11 +1366,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1197
1366
|
name=ModelName.llama_3_2_3b,
|
|
1198
1367
|
friendly_name="Llama 3.2 3B",
|
|
1199
1368
|
providers=[
|
|
1200
|
-
KilnModelProvider(
|
|
1201
|
-
name=ModelProviderName.groq,
|
|
1202
|
-
model_id="llama-3.2-3b-preview",
|
|
1203
|
-
supports_data_gen=False,
|
|
1204
|
-
),
|
|
1205
1369
|
KilnModelProvider(
|
|
1206
1370
|
name=ModelProviderName.openrouter,
|
|
1207
1371
|
supports_structured_output=False,
|
|
@@ -1241,19 +1405,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1241
1405
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1242
1406
|
model_id="llama3.2-vision",
|
|
1243
1407
|
),
|
|
1244
|
-
KilnModelProvider(
|
|
1245
|
-
name=ModelProviderName.fireworks_ai,
|
|
1246
|
-
# No finetune support. https://docs.fireworks.ai/fine-tuning/fine-tuning-models
|
|
1247
|
-
model_id="accounts/fireworks/models/llama-v3p2-11b-vision-instruct",
|
|
1248
|
-
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
1249
|
-
supports_data_gen=False,
|
|
1250
|
-
),
|
|
1251
|
-
KilnModelProvider(
|
|
1252
|
-
name=ModelProviderName.huggingface,
|
|
1253
|
-
model_id="meta-llama/Llama-3.2-11B-Vision-Instruct",
|
|
1254
|
-
supports_structured_output=False,
|
|
1255
|
-
supports_data_gen=False,
|
|
1256
|
-
),
|
|
1257
1408
|
KilnModelProvider(
|
|
1258
1409
|
name=ModelProviderName.together_ai,
|
|
1259
1410
|
model_id="meta-llama/Llama-3.2-11B-Vision-Instruct-Turbo",
|
|
@@ -1278,13 +1429,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1278
1429
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1279
1430
|
model_id="llama3.2-vision:90b",
|
|
1280
1431
|
),
|
|
1281
|
-
KilnModelProvider(
|
|
1282
|
-
name=ModelProviderName.fireworks_ai,
|
|
1283
|
-
# No finetune support. https://docs.fireworks.ai/fine-tuning/fine-tuning-models
|
|
1284
|
-
model_id="accounts/fireworks/models/llama-v3p2-90b-vision-instruct",
|
|
1285
|
-
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
1286
|
-
supports_data_gen=False,
|
|
1287
|
-
),
|
|
1288
1432
|
KilnModelProvider(
|
|
1289
1433
|
name=ModelProviderName.together_ai,
|
|
1290
1434
|
model_id="meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo",
|
|
@@ -1327,7 +1471,7 @@ built_in_models: List[KilnModel] = [
|
|
|
1327
1471
|
KilnModelProvider(
|
|
1328
1472
|
name=ModelProviderName.vertex,
|
|
1329
1473
|
model_id="meta/llama-3.3-70b-instruct-maas",
|
|
1330
|
-
# Doesn't work
|
|
1474
|
+
# Doesn't work yet; needs debugging
|
|
1331
1475
|
supports_structured_output=False,
|
|
1332
1476
|
supports_data_gen=False,
|
|
1333
1477
|
),
|
|
@@ -1358,13 +1502,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1358
1502
|
model_id="microsoft/phi-3.5-mini-128k-instruct",
|
|
1359
1503
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1360
1504
|
),
|
|
1361
|
-
KilnModelProvider(
|
|
1362
|
-
name=ModelProviderName.fireworks_ai,
|
|
1363
|
-
# No finetune support. https://docs.fireworks.ai/fine-tuning/fine-tuning-models
|
|
1364
|
-
supports_structured_output=False,
|
|
1365
|
-
supports_data_gen=False,
|
|
1366
|
-
model_id="accounts/fireworks/models/phi-3-vision-128k-instruct",
|
|
1367
|
-
),
|
|
1368
1505
|
],
|
|
1369
1506
|
),
|
|
1370
1507
|
# Phi 4
|
|
@@ -1479,13 +1616,6 @@ built_in_models: List[KilnModel] = [
|
|
|
1479
1616
|
supports_structured_output=False,
|
|
1480
1617
|
supports_data_gen=False,
|
|
1481
1618
|
),
|
|
1482
|
-
KilnModelProvider(
|
|
1483
|
-
name=ModelProviderName.openrouter,
|
|
1484
|
-
# TODO: swap to non-free model when available (more reliable)
|
|
1485
|
-
model_id="google/gemma-3-1b-it:free",
|
|
1486
|
-
supports_structured_output=False,
|
|
1487
|
-
supports_data_gen=False,
|
|
1488
|
-
),
|
|
1489
1619
|
],
|
|
1490
1620
|
),
|
|
1491
1621
|
# Gemma 3 4B
|
|
@@ -1502,8 +1632,7 @@ built_in_models: List[KilnModel] = [
|
|
|
1502
1632
|
KilnModelProvider(
|
|
1503
1633
|
name=ModelProviderName.openrouter,
|
|
1504
1634
|
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
1505
|
-
|
|
1506
|
-
model_id="google/gemma-3-4b-it:free",
|
|
1635
|
+
model_id="google/gemma-3-4b-it",
|
|
1507
1636
|
),
|
|
1508
1637
|
],
|
|
1509
1638
|
),
|
|
@@ -1520,8 +1649,7 @@ built_in_models: List[KilnModel] = [
|
|
|
1520
1649
|
KilnModelProvider(
|
|
1521
1650
|
name=ModelProviderName.openrouter,
|
|
1522
1651
|
structured_output_mode=StructuredOutputMode.json_instruction_and_object,
|
|
1523
|
-
|
|
1524
|
-
model_id="google/gemma-3-12b-it:free",
|
|
1652
|
+
model_id="google/gemma-3-12b-it",
|
|
1525
1653
|
),
|
|
1526
1654
|
],
|
|
1527
1655
|
),
|
|
@@ -1636,17 +1764,16 @@ built_in_models: List[KilnModel] = [
|
|
|
1636
1764
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1637
1765
|
),
|
|
1638
1766
|
KilnModelProvider(
|
|
1639
|
-
name=ModelProviderName.
|
|
1640
|
-
model_id="
|
|
1641
|
-
reasoning_capable=True,
|
|
1642
|
-
parser=ModelParserID.r1_thinking,
|
|
1767
|
+
name=ModelProviderName.together_ai,
|
|
1768
|
+
model_id="Qwen/QwQ-32B",
|
|
1643
1769
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1770
|
+
parser=ModelParserID.r1_thinking,
|
|
1771
|
+
reasoning_capable=True,
|
|
1644
1772
|
),
|
|
1645
1773
|
KilnModelProvider(
|
|
1646
|
-
name=ModelProviderName.
|
|
1774
|
+
name=ModelProviderName.siliconflow_cn,
|
|
1647
1775
|
model_id="Qwen/QwQ-32B",
|
|
1648
1776
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1649
|
-
parser=ModelParserID.r1_thinking,
|
|
1650
1777
|
reasoning_capable=True,
|
|
1651
1778
|
),
|
|
1652
1779
|
],
|
|
@@ -1766,6 +1893,38 @@ built_in_models: List[KilnModel] = [
|
|
|
1766
1893
|
reasoning_capable=True,
|
|
1767
1894
|
supports_data_gen=True,
|
|
1768
1895
|
),
|
|
1896
|
+
KilnModelProvider(
|
|
1897
|
+
name=ModelProviderName.siliconflow_cn,
|
|
1898
|
+
model_id="Pro/deepseek-ai/DeepSeek-R1",
|
|
1899
|
+
parser=ModelParserID.optional_r1_thinking,
|
|
1900
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1901
|
+
reasoning_capable=True,
|
|
1902
|
+
supports_data_gen=True,
|
|
1903
|
+
),
|
|
1904
|
+
],
|
|
1905
|
+
),
|
|
1906
|
+
# DeepSeek R1 0528 Distill Qwen 3 8B
|
|
1907
|
+
KilnModel(
|
|
1908
|
+
family=ModelFamily.deepseek,
|
|
1909
|
+
name=ModelName.deepseek_r1_0528_distill_qwen3_8b,
|
|
1910
|
+
friendly_name="DeepSeek R1 0528 Distill Qwen 3 8B",
|
|
1911
|
+
providers=[
|
|
1912
|
+
KilnModelProvider(
|
|
1913
|
+
name=ModelProviderName.openrouter,
|
|
1914
|
+
model_id="deepseek/deepseek-r1-0528-qwen3-8b",
|
|
1915
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1916
|
+
reasoning_capable=True,
|
|
1917
|
+
r1_openrouter_options=True,
|
|
1918
|
+
require_openrouter_reasoning=True,
|
|
1919
|
+
),
|
|
1920
|
+
KilnModelProvider(
|
|
1921
|
+
name=ModelProviderName.siliconflow_cn,
|
|
1922
|
+
model_id="deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",
|
|
1923
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1924
|
+
reasoning_capable=True,
|
|
1925
|
+
reasoning_optional_for_structured_output=True,
|
|
1926
|
+
supports_data_gen=False,
|
|
1927
|
+
),
|
|
1769
1928
|
],
|
|
1770
1929
|
),
|
|
1771
1930
|
# DeepSeek 3
|
|
@@ -1791,6 +1950,11 @@ built_in_models: List[KilnModel] = [
|
|
|
1791
1950
|
model_id="deepseek-ai/DeepSeek-V3",
|
|
1792
1951
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1793
1952
|
),
|
|
1953
|
+
KilnModelProvider(
|
|
1954
|
+
name=ModelProviderName.siliconflow_cn,
|
|
1955
|
+
model_id="Pro/deepseek-ai/DeepSeek-V3",
|
|
1956
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1957
|
+
),
|
|
1794
1958
|
],
|
|
1795
1959
|
),
|
|
1796
1960
|
# DeepSeek R1
|
|
@@ -1848,11 +2012,11 @@ built_in_models: List[KilnModel] = [
|
|
|
1848
2012
|
model_id="deepseek-r1:32b",
|
|
1849
2013
|
),
|
|
1850
2014
|
KilnModelProvider(
|
|
1851
|
-
name=ModelProviderName.
|
|
1852
|
-
model_id="deepseek-ai/DeepSeek-R1-Distill-Qwen-
|
|
1853
|
-
structured_output_mode=StructuredOutputMode.
|
|
1854
|
-
parser=ModelParserID.r1_thinking,
|
|
2015
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2016
|
+
model_id="deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
|
|
2017
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
1855
2018
|
reasoning_capable=True,
|
|
2019
|
+
reasoning_optional_for_structured_output=True,
|
|
1856
2020
|
),
|
|
1857
2021
|
],
|
|
1858
2022
|
),
|
|
@@ -1918,6 +2082,14 @@ built_in_models: List[KilnModel] = [
|
|
|
1918
2082
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1919
2083
|
parser=ModelParserID.r1_thinking,
|
|
1920
2084
|
),
|
|
2085
|
+
KilnModelProvider(
|
|
2086
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2087
|
+
model_id="deepseek-ai/DeepSeek-R1-Distill-Qwen-14B",
|
|
2088
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2089
|
+
reasoning_capable=True,
|
|
2090
|
+
reasoning_optional_for_structured_output=True,
|
|
2091
|
+
supports_data_gen=False,
|
|
2092
|
+
),
|
|
1921
2093
|
],
|
|
1922
2094
|
),
|
|
1923
2095
|
# DeepSeek R1 Distill Llama 8B
|
|
@@ -1957,6 +2129,17 @@ built_in_models: List[KilnModel] = [
|
|
|
1957
2129
|
name=ModelName.deepseek_r1_distill_qwen_7b,
|
|
1958
2130
|
friendly_name="DeepSeek R1 Distill Qwen 7B",
|
|
1959
2131
|
providers=[
|
|
2132
|
+
KilnModelProvider(
|
|
2133
|
+
name=ModelProviderName.openrouter,
|
|
2134
|
+
# Best mode, but fails to often to enable without warning
|
|
2135
|
+
supports_structured_output=False,
|
|
2136
|
+
supports_data_gen=False,
|
|
2137
|
+
model_id="deepseek/deepseek-r1-distill-qwen-7b",
|
|
2138
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2139
|
+
reasoning_capable=True,
|
|
2140
|
+
r1_openrouter_options=True,
|
|
2141
|
+
require_openrouter_reasoning=True,
|
|
2142
|
+
),
|
|
1960
2143
|
KilnModelProvider(
|
|
1961
2144
|
name=ModelProviderName.ollama,
|
|
1962
2145
|
# Best mode, but fails to often to enable without warning
|
|
@@ -1967,6 +2150,16 @@ built_in_models: List[KilnModel] = [
|
|
|
1967
2150
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
1968
2151
|
model_id="deepseek-r1:7b",
|
|
1969
2152
|
),
|
|
2153
|
+
KilnModelProvider(
|
|
2154
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2155
|
+
# Best mode, but fails to often to enable without warning
|
|
2156
|
+
supports_structured_output=False,
|
|
2157
|
+
supports_data_gen=False,
|
|
2158
|
+
model_id="Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
|
|
2159
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2160
|
+
reasoning_capable=True,
|
|
2161
|
+
reasoning_optional_for_structured_output=True,
|
|
2162
|
+
),
|
|
1970
2163
|
],
|
|
1971
2164
|
),
|
|
1972
2165
|
# DeepSeek R1 Distill Qwen 1.5B
|
|
@@ -2242,6 +2435,15 @@ built_in_models: List[KilnModel] = [
|
|
|
2242
2435
|
reasoning_capable=True,
|
|
2243
2436
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2244
2437
|
),
|
|
2438
|
+
KilnModelProvider(
|
|
2439
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2440
|
+
model_id="Qwen/Qwen3-8B",
|
|
2441
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2442
|
+
reasoning_capable=True,
|
|
2443
|
+
siliconflow_enable_thinking=True,
|
|
2444
|
+
reasoning_optional_for_structured_output=True,
|
|
2445
|
+
supports_data_gen=False,
|
|
2446
|
+
),
|
|
2245
2447
|
],
|
|
2246
2448
|
),
|
|
2247
2449
|
# Qwen 3 8B Non-Thinking
|
|
@@ -2265,6 +2467,13 @@ built_in_models: List[KilnModel] = [
|
|
|
2265
2467
|
formatter=ModelFormatterID.qwen3_style_no_think,
|
|
2266
2468
|
supports_data_gen=False,
|
|
2267
2469
|
),
|
|
2470
|
+
KilnModelProvider(
|
|
2471
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2472
|
+
model_id="Qwen/Qwen3-8B",
|
|
2473
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2474
|
+
siliconflow_enable_thinking=False,
|
|
2475
|
+
supports_data_gen=False,
|
|
2476
|
+
),
|
|
2268
2477
|
],
|
|
2269
2478
|
),
|
|
2270
2479
|
# Qwen 3 14B
|
|
@@ -2290,6 +2499,15 @@ built_in_models: List[KilnModel] = [
|
|
|
2290
2499
|
reasoning_capable=True,
|
|
2291
2500
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2292
2501
|
),
|
|
2502
|
+
KilnModelProvider(
|
|
2503
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2504
|
+
model_id="Qwen/Qwen3-14B",
|
|
2505
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2506
|
+
supports_data_gen=True,
|
|
2507
|
+
reasoning_capable=True,
|
|
2508
|
+
siliconflow_enable_thinking=True,
|
|
2509
|
+
reasoning_optional_for_structured_output=True,
|
|
2510
|
+
),
|
|
2293
2511
|
],
|
|
2294
2512
|
),
|
|
2295
2513
|
# Qwen 3 14B Non-Thinking
|
|
@@ -2313,6 +2531,28 @@ built_in_models: List[KilnModel] = [
|
|
|
2313
2531
|
supports_data_gen=True,
|
|
2314
2532
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2315
2533
|
),
|
|
2534
|
+
KilnModelProvider(
|
|
2535
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2536
|
+
model_id="Qwen/Qwen3-14B",
|
|
2537
|
+
formatter=ModelFormatterID.qwen3_style_no_think,
|
|
2538
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2539
|
+
siliconflow_enable_thinking=False,
|
|
2540
|
+
supports_data_gen=True,
|
|
2541
|
+
),
|
|
2542
|
+
],
|
|
2543
|
+
),
|
|
2544
|
+
# Qwen 3 30B (3B Active) 2507 Version
|
|
2545
|
+
KilnModel(
|
|
2546
|
+
family=ModelFamily.qwen,
|
|
2547
|
+
name=ModelName.qwen_3_30b_a3b_2507,
|
|
2548
|
+
friendly_name="Qwen 3 30B (3B Active) 2507",
|
|
2549
|
+
providers=[
|
|
2550
|
+
KilnModelProvider(
|
|
2551
|
+
name=ModelProviderName.ollama,
|
|
2552
|
+
model_id="qwen3:30b-a3b-thinking-2507-q4_K_M",
|
|
2553
|
+
reasoning_capable=True,
|
|
2554
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2555
|
+
),
|
|
2316
2556
|
],
|
|
2317
2557
|
),
|
|
2318
2558
|
# Qwen 3 30B (3B Active)
|
|
@@ -2346,6 +2586,33 @@ built_in_models: List[KilnModel] = [
|
|
|
2346
2586
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2347
2587
|
parser=ModelParserID.r1_thinking,
|
|
2348
2588
|
),
|
|
2589
|
+
KilnModelProvider(
|
|
2590
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2591
|
+
model_id="Qwen/Qwen3-30B-A3B",
|
|
2592
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2593
|
+
reasoning_capable=True,
|
|
2594
|
+
reasoning_optional_for_structured_output=True,
|
|
2595
|
+
supports_data_gen=True,
|
|
2596
|
+
),
|
|
2597
|
+
],
|
|
2598
|
+
),
|
|
2599
|
+
# Qwen 3 30B (3B Active) 2507 Version Non-Thinking
|
|
2600
|
+
KilnModel(
|
|
2601
|
+
family=ModelFamily.qwen,
|
|
2602
|
+
name=ModelName.qwen_3_30b_a3b_2507_no_thinking,
|
|
2603
|
+
friendly_name="Qwen 3 30B (3B Active) 2507 Non-Thinking",
|
|
2604
|
+
providers=[
|
|
2605
|
+
KilnModelProvider(
|
|
2606
|
+
name=ModelProviderName.openrouter,
|
|
2607
|
+
model_id="qwen/qwen3-30b-a3b-instruct-2507",
|
|
2608
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2609
|
+
),
|
|
2610
|
+
KilnModelProvider(
|
|
2611
|
+
name=ModelProviderName.ollama,
|
|
2612
|
+
model_id="qwen3:30b-a3b-instruct-2507-q8_0",
|
|
2613
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2614
|
+
supports_data_gen=True,
|
|
2615
|
+
),
|
|
2349
2616
|
],
|
|
2350
2617
|
),
|
|
2351
2618
|
# Qwen 3 30B (3B Active) Non-Thinking
|
|
@@ -2385,6 +2652,14 @@ built_in_models: List[KilnModel] = [
|
|
|
2385
2652
|
name=ModelName.qwen_3_32b,
|
|
2386
2653
|
friendly_name="Qwen 3 32B",
|
|
2387
2654
|
providers=[
|
|
2655
|
+
KilnModelProvider(
|
|
2656
|
+
name=ModelProviderName.groq,
|
|
2657
|
+
model_id="Qwen/Qwen3-32B",
|
|
2658
|
+
supports_data_gen=True,
|
|
2659
|
+
reasoning_capable=True,
|
|
2660
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2661
|
+
parser=ModelParserID.r1_thinking,
|
|
2662
|
+
),
|
|
2388
2663
|
KilnModelProvider(
|
|
2389
2664
|
name=ModelProviderName.openrouter,
|
|
2390
2665
|
model_id="qwen/qwen3-32b",
|
|
@@ -2402,6 +2677,22 @@ built_in_models: List[KilnModel] = [
|
|
|
2402
2677
|
reasoning_capable=True,
|
|
2403
2678
|
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2404
2679
|
),
|
|
2680
|
+
KilnModelProvider(
|
|
2681
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2682
|
+
model_id="Qwen/Qwen3-32B",
|
|
2683
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2684
|
+
reasoning_capable=True,
|
|
2685
|
+
reasoning_optional_for_structured_output=True,
|
|
2686
|
+
supports_data_gen=True,
|
|
2687
|
+
),
|
|
2688
|
+
KilnModelProvider(
|
|
2689
|
+
name=ModelProviderName.cerebras,
|
|
2690
|
+
model_id="qwen-3-32b",
|
|
2691
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2692
|
+
supports_data_gen=True,
|
|
2693
|
+
reasoning_capable=True,
|
|
2694
|
+
parser=ModelParserID.r1_thinking,
|
|
2695
|
+
),
|
|
2405
2696
|
],
|
|
2406
2697
|
),
|
|
2407
2698
|
# Qwen 3 32B No Thinking
|
|
@@ -2425,6 +2716,56 @@ built_in_models: List[KilnModel] = [
|
|
|
2425
2716
|
formatter=ModelFormatterID.qwen3_style_no_think,
|
|
2426
2717
|
supports_data_gen=True,
|
|
2427
2718
|
),
|
|
2719
|
+
KilnModelProvider(
|
|
2720
|
+
name=ModelProviderName.cerebras,
|
|
2721
|
+
model_id="qwen-3-32b",
|
|
2722
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2723
|
+
formatter=ModelFormatterID.qwen3_style_no_think,
|
|
2724
|
+
supports_data_gen=True,
|
|
2725
|
+
parser=ModelParserID.optional_r1_thinking,
|
|
2726
|
+
),
|
|
2727
|
+
],
|
|
2728
|
+
),
|
|
2729
|
+
# Qwen 3 235B (22B Active) 2507 Version
|
|
2730
|
+
KilnModel(
|
|
2731
|
+
family=ModelFamily.qwen,
|
|
2732
|
+
name=ModelName.qwen_3_235b_a22b_2507,
|
|
2733
|
+
friendly_name="Qwen 3 235B (22B Active) 2507",
|
|
2734
|
+
providers=[
|
|
2735
|
+
KilnModelProvider(
|
|
2736
|
+
name=ModelProviderName.openrouter,
|
|
2737
|
+
model_id="qwen/qwen3-235b-a22b-thinking-2507",
|
|
2738
|
+
reasoning_capable=True,
|
|
2739
|
+
require_openrouter_reasoning=True,
|
|
2740
|
+
supports_data_gen=True,
|
|
2741
|
+
suggested_for_data_gen=True,
|
|
2742
|
+
r1_openrouter_options=True,
|
|
2743
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2744
|
+
parser=ModelParserID.r1_thinking,
|
|
2745
|
+
),
|
|
2746
|
+
KilnModelProvider(
|
|
2747
|
+
name=ModelProviderName.ollama,
|
|
2748
|
+
model_id="qwen3:235b-a22b-thinking-2507-q4_K_M",
|
|
2749
|
+
supports_data_gen=True,
|
|
2750
|
+
reasoning_capable=True,
|
|
2751
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2752
|
+
),
|
|
2753
|
+
KilnModelProvider(
|
|
2754
|
+
name=ModelProviderName.fireworks_ai,
|
|
2755
|
+
model_id="accounts/fireworks/models/qwen3-235b-a22b-thinking-2507",
|
|
2756
|
+
supports_data_gen=True,
|
|
2757
|
+
reasoning_capable=True,
|
|
2758
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2759
|
+
parser=ModelParserID.r1_thinking,
|
|
2760
|
+
),
|
|
2761
|
+
KilnModelProvider(
|
|
2762
|
+
name=ModelProviderName.together_ai,
|
|
2763
|
+
model_id="Qwen/Qwen3-235B-A22B-Thinking-2507",
|
|
2764
|
+
supports_data_gen=True,
|
|
2765
|
+
reasoning_capable=True,
|
|
2766
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2767
|
+
parser=ModelParserID.r1_thinking,
|
|
2768
|
+
),
|
|
2428
2769
|
],
|
|
2429
2770
|
),
|
|
2430
2771
|
# Qwen 3 235B (22B Active)
|
|
@@ -2439,7 +2780,6 @@ built_in_models: List[KilnModel] = [
|
|
|
2439
2780
|
reasoning_capable=True,
|
|
2440
2781
|
require_openrouter_reasoning=True,
|
|
2441
2782
|
supports_data_gen=True,
|
|
2442
|
-
suggested_for_data_gen=True,
|
|
2443
2783
|
r1_openrouter_options=True,
|
|
2444
2784
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2445
2785
|
parser=ModelParserID.r1_thinking,
|
|
@@ -2467,6 +2807,49 @@ built_in_models: List[KilnModel] = [
|
|
|
2467
2807
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2468
2808
|
parser=ModelParserID.r1_thinking,
|
|
2469
2809
|
),
|
|
2810
|
+
KilnModelProvider(
|
|
2811
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2812
|
+
model_id="Qwen/Qwen3-235B-A22B",
|
|
2813
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2814
|
+
reasoning_capable=True,
|
|
2815
|
+
siliconflow_enable_thinking=True,
|
|
2816
|
+
supports_data_gen=True,
|
|
2817
|
+
suggested_for_data_gen=True,
|
|
2818
|
+
),
|
|
2819
|
+
],
|
|
2820
|
+
),
|
|
2821
|
+
# Qwen 3 235B (22B Active) 2507 Version Non-Thinking
|
|
2822
|
+
KilnModel(
|
|
2823
|
+
family=ModelFamily.qwen,
|
|
2824
|
+
name=ModelName.qwen_3_235b_a22b_2507_no_thinking,
|
|
2825
|
+
friendly_name="Qwen 3 235B (22B Active) 2507 Non-Thinking",
|
|
2826
|
+
providers=[
|
|
2827
|
+
KilnModelProvider(
|
|
2828
|
+
name=ModelProviderName.openrouter,
|
|
2829
|
+
model_id="qwen/qwen3-235b-a22b-2507",
|
|
2830
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2831
|
+
supports_data_gen=True,
|
|
2832
|
+
reasoning_capable=False,
|
|
2833
|
+
),
|
|
2834
|
+
KilnModelProvider(
|
|
2835
|
+
name=ModelProviderName.ollama,
|
|
2836
|
+
model_id="qwen3:235b-a22b-instruct-2507-q4_K_M",
|
|
2837
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2838
|
+
supports_data_gen=True,
|
|
2839
|
+
reasoning_capable=False,
|
|
2840
|
+
),
|
|
2841
|
+
KilnModelProvider(
|
|
2842
|
+
name=ModelProviderName.fireworks_ai,
|
|
2843
|
+
model_id="accounts/fireworks/models/qwen3-235b-a22b-instruct-2507",
|
|
2844
|
+
supports_data_gen=True,
|
|
2845
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2846
|
+
),
|
|
2847
|
+
KilnModelProvider(
|
|
2848
|
+
name=ModelProviderName.together_ai,
|
|
2849
|
+
model_id="Qwen/Qwen3-235B-A22B-Instruct-2507-tput",
|
|
2850
|
+
supports_data_gen=True,
|
|
2851
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2852
|
+
),
|
|
2470
2853
|
],
|
|
2471
2854
|
),
|
|
2472
2855
|
# Qwen 3 235B (22B Active) Non-Thinking
|
|
@@ -2507,6 +2890,28 @@ built_in_models: List[KilnModel] = [
|
|
|
2507
2890
|
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2508
2891
|
parser=ModelParserID.optional_r1_thinking,
|
|
2509
2892
|
),
|
|
2893
|
+
KilnModelProvider(
|
|
2894
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2895
|
+
model_id="Qwen/Qwen3-235B-A22B",
|
|
2896
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2897
|
+
siliconflow_enable_thinking=False,
|
|
2898
|
+
supports_data_gen=True,
|
|
2899
|
+
),
|
|
2900
|
+
],
|
|
2901
|
+
),
|
|
2902
|
+
# Qwen Long L1 32B
|
|
2903
|
+
KilnModel(
|
|
2904
|
+
family=ModelFamily.qwen,
|
|
2905
|
+
name=ModelName.qwen_long_l1_32b,
|
|
2906
|
+
friendly_name="QwenLong L1 32B",
|
|
2907
|
+
providers=[
|
|
2908
|
+
KilnModelProvider(
|
|
2909
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2910
|
+
model_id="Tongyi-Zhiwen/QwenLong-L1-32B",
|
|
2911
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2912
|
+
reasoning_capable=True,
|
|
2913
|
+
reasoning_optional_for_structured_output=True,
|
|
2914
|
+
),
|
|
2510
2915
|
],
|
|
2511
2916
|
),
|
|
2512
2917
|
# Kimi K2 Instruct
|
|
@@ -2542,6 +2947,153 @@ built_in_models: List[KilnModel] = [
|
|
|
2542
2947
|
structured_output_mode=StructuredOutputMode.function_calling,
|
|
2543
2948
|
suggested_for_evals=True,
|
|
2544
2949
|
),
|
|
2950
|
+
KilnModelProvider(
|
|
2951
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2952
|
+
model_id="Pro/moonshotai/Kimi-K2-Instruct",
|
|
2953
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2954
|
+
supports_data_gen=True,
|
|
2955
|
+
suggested_for_evals=True,
|
|
2956
|
+
),
|
|
2957
|
+
],
|
|
2958
|
+
),
|
|
2959
|
+
KilnModel(
|
|
2960
|
+
family=ModelFamily.kimi,
|
|
2961
|
+
name=ModelName.kimi_dev_72b,
|
|
2962
|
+
friendly_name="Kimi Dev 72B",
|
|
2963
|
+
providers=[
|
|
2964
|
+
KilnModelProvider(
|
|
2965
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2966
|
+
model_id="moonshotai/Kimi-Dev-72B",
|
|
2967
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2968
|
+
reasoning_capable=True,
|
|
2969
|
+
reasoning_optional_for_structured_output=True,
|
|
2970
|
+
),
|
|
2971
|
+
],
|
|
2972
|
+
),
|
|
2973
|
+
# GLM 4.1V 9B
|
|
2974
|
+
KilnModel(
|
|
2975
|
+
family=ModelFamily.glm,
|
|
2976
|
+
name=ModelName.glm_4_1v_9b_thinking,
|
|
2977
|
+
friendly_name="GLM-4.1V 9B Thinking",
|
|
2978
|
+
providers=[
|
|
2979
|
+
KilnModelProvider(
|
|
2980
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2981
|
+
model_id="Pro/THUDM/GLM-4.1V-9B-Thinking",
|
|
2982
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
2983
|
+
reasoning_capable=True,
|
|
2984
|
+
supports_data_gen=False,
|
|
2985
|
+
),
|
|
2986
|
+
],
|
|
2987
|
+
),
|
|
2988
|
+
# GLM Z1 32B 0414
|
|
2989
|
+
KilnModel(
|
|
2990
|
+
family=ModelFamily.glm,
|
|
2991
|
+
name=ModelName.glm_z1_32b_0414,
|
|
2992
|
+
friendly_name="GLM-Z1 32B 0414",
|
|
2993
|
+
providers=[
|
|
2994
|
+
KilnModelProvider(
|
|
2995
|
+
name=ModelProviderName.siliconflow_cn,
|
|
2996
|
+
model_id="THUDM/GLM-Z1-32B-0414",
|
|
2997
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
2998
|
+
reasoning_capable=True,
|
|
2999
|
+
reasoning_optional_for_structured_output=True,
|
|
3000
|
+
supports_data_gen=False,
|
|
3001
|
+
),
|
|
3002
|
+
],
|
|
3003
|
+
),
|
|
3004
|
+
# GLM Z1 9B 0414
|
|
3005
|
+
KilnModel(
|
|
3006
|
+
family=ModelFamily.glm,
|
|
3007
|
+
name=ModelName.glm_z1_9b_0414,
|
|
3008
|
+
friendly_name="GLM-Z1 9B 0414",
|
|
3009
|
+
providers=[
|
|
3010
|
+
KilnModelProvider(
|
|
3011
|
+
name=ModelProviderName.siliconflow_cn,
|
|
3012
|
+
model_id="THUDM/GLM-Z1-9B-0414",
|
|
3013
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
3014
|
+
reasoning_capable=True,
|
|
3015
|
+
reasoning_optional_for_structured_output=True,
|
|
3016
|
+
supports_data_gen=False,
|
|
3017
|
+
),
|
|
3018
|
+
],
|
|
3019
|
+
),
|
|
3020
|
+
# Ernie 4.5 300B A47B
|
|
3021
|
+
KilnModel(
|
|
3022
|
+
family=ModelFamily.ernie,
|
|
3023
|
+
name=ModelName.ernie_4_5_300b_a47b,
|
|
3024
|
+
friendly_name="Ernie 4.5 300B A47B",
|
|
3025
|
+
providers=[
|
|
3026
|
+
KilnModelProvider(
|
|
3027
|
+
name=ModelProviderName.openrouter,
|
|
3028
|
+
model_id="baidu/ernie-4.5-300b-a47b",
|
|
3029
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
3030
|
+
supports_data_gen=True,
|
|
3031
|
+
r1_openrouter_options=True,
|
|
3032
|
+
),
|
|
3033
|
+
KilnModelProvider(
|
|
3034
|
+
name=ModelProviderName.siliconflow_cn,
|
|
3035
|
+
model_id="baidu/ERNIE-4.5-300B-A47B",
|
|
3036
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
3037
|
+
supports_data_gen=True,
|
|
3038
|
+
),
|
|
3039
|
+
],
|
|
3040
|
+
),
|
|
3041
|
+
# Hunyuan A13B Instruct
|
|
3042
|
+
KilnModel(
|
|
3043
|
+
family=ModelFamily.hunyuan,
|
|
3044
|
+
name=ModelName.hunyuan_a13b,
|
|
3045
|
+
friendly_name="Hunyuan A13B",
|
|
3046
|
+
providers=[
|
|
3047
|
+
# Openrouter provider for this model exists but currently wrongly parses the answer
|
|
3048
|
+
# it returns the reasoning at the right place, but wraps the answer (even JSON response)
|
|
3049
|
+
# between <answer> and </answer> tags
|
|
3050
|
+
KilnModelProvider(
|
|
3051
|
+
name=ModelProviderName.siliconflow_cn,
|
|
3052
|
+
model_id="tencent/Hunyuan-A13B-Instruct",
|
|
3053
|
+
structured_output_mode=StructuredOutputMode.json_schema,
|
|
3054
|
+
reasoning_capable=True,
|
|
3055
|
+
siliconflow_enable_thinking=True,
|
|
3056
|
+
reasoning_optional_for_structured_output=True,
|
|
3057
|
+
supports_data_gen=False,
|
|
3058
|
+
),
|
|
3059
|
+
],
|
|
3060
|
+
),
|
|
3061
|
+
# Minimax M1 80K
|
|
3062
|
+
KilnModel(
|
|
3063
|
+
family=ModelFamily.minimax,
|
|
3064
|
+
name=ModelName.minimax_m1_80k,
|
|
3065
|
+
friendly_name="Minimax M1",
|
|
3066
|
+
providers=[
|
|
3067
|
+
KilnModelProvider(
|
|
3068
|
+
name=ModelProviderName.openrouter,
|
|
3069
|
+
model_id="minimax/minimax-m1",
|
|
3070
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
3071
|
+
supports_data_gen=True,
|
|
3072
|
+
r1_openrouter_options=True,
|
|
3073
|
+
require_openrouter_reasoning=True,
|
|
3074
|
+
),
|
|
3075
|
+
KilnModelProvider(
|
|
3076
|
+
name=ModelProviderName.siliconflow_cn,
|
|
3077
|
+
model_id="MiniMaxAI/MiniMax-M1-80k",
|
|
3078
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
3079
|
+
reasoning_capable=True,
|
|
3080
|
+
supports_data_gen=True,
|
|
3081
|
+
),
|
|
3082
|
+
],
|
|
3083
|
+
),
|
|
3084
|
+
# Pangu Pro MOE
|
|
3085
|
+
KilnModel(
|
|
3086
|
+
family=ModelFamily.pangu,
|
|
3087
|
+
name=ModelName.pangu_pro_moe_72b_a16b,
|
|
3088
|
+
friendly_name="Pangu Pro MOE 72B A16B",
|
|
3089
|
+
providers=[
|
|
3090
|
+
KilnModelProvider(
|
|
3091
|
+
name=ModelProviderName.siliconflow_cn,
|
|
3092
|
+
model_id="ascend-tribe/pangu-pro-moe",
|
|
3093
|
+
structured_output_mode=StructuredOutputMode.json_instructions,
|
|
3094
|
+
reasoning_capable=True,
|
|
3095
|
+
supports_data_gen=True,
|
|
3096
|
+
),
|
|
2545
3097
|
],
|
|
2546
3098
|
),
|
|
2547
3099
|
]
|