modelparams 0.0.22__tar.gz → 0.0.24__tar.gz

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.
Files changed (33) hide show
  1. {modelparams-0.0.22 → modelparams-0.0.24}/PKG-INFO +1 -1
  2. {modelparams-0.0.22 → modelparams-0.0.24}/pyproject.toml +1 -1
  3. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/_generated/catalog.json +171 -0
  4. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/_generated/model_ids.py +4 -0
  5. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/_generated/registry.py +2 -0
  6. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/alibaba.py +15 -0
  7. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/google.py +17 -0
  8. {modelparams-0.0.22 → modelparams-0.0.24}/.gitignore +0 -0
  9. {modelparams-0.0.22 → modelparams-0.0.24}/LICENSE +0 -0
  10. {modelparams-0.0.22 → modelparams-0.0.24}/README.md +0 -0
  11. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/__init__.py +0 -0
  12. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/_generated/__init__.py +0 -0
  13. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/catalog.py +0 -0
  14. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/models.py +0 -0
  15. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/py.typed +0 -0
  16. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/__init__.py +0 -0
  17. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/anthropic.py +0 -0
  18. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/cerebras.py +0 -0
  19. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/cohere.py +0 -0
  20. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/deepseek.py +0 -0
  21. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/groq.py +0 -0
  22. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/meta.py +0 -0
  23. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/minimax.py +0 -0
  24. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/mistral.py +0 -0
  25. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/moonshot.py +0 -0
  26. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/nvidia.py +0 -0
  27. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/openai.py +0 -0
  28. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/perplexity.py +0 -0
  29. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/thinking_machines.py +0 -0
  30. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/xai.py +0 -0
  31. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/xiaomi.py +0 -0
  32. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/types/z_ai.py +0 -0
  33. {modelparams-0.0.22 → modelparams-0.0.24}/src/modelparams/validation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: modelparams
3
- Version: 0.0.22
3
+ Version: 0.0.24
4
4
  Summary: Typed model parameters for Python, generated from the modelparams.dev catalog.
5
5
  Project-URL: Homepage, https://modelparams.dev
6
6
  Project-URL: Repository, https://github.com/mnfst/modelparameters.dev
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "modelparams"
7
- version = "0.0.22"
7
+ version = "0.0.24"
8
8
  description = "Typed model parameters for Python, generated from the modelparams.dev catalog."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -1,4 +1,79 @@
1
1
  [
2
+ {
3
+ "provider": "alibaba",
4
+ "authType": "api_key",
5
+ "model": "deepseek-v4-pro-0813",
6
+ "params": [
7
+ {
8
+ "path": "max_completion_tokens",
9
+ "label": "Max tokens",
10
+ "description": "Maximum number of tokens to generate, including both reasoning and the final answer.",
11
+ "group": "generation_length",
12
+ "type": "integer",
13
+ "range": {
14
+ "min": 1
15
+ }
16
+ },
17
+ {
18
+ "path": "temperature",
19
+ "label": "Temperature",
20
+ "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied.",
21
+ "group": "sampling",
22
+ "type": "number",
23
+ "range": {
24
+ "min": 0,
25
+ "max": 1.9,
26
+ "step": 0.1
27
+ }
28
+ },
29
+ {
30
+ "path": "top_p",
31
+ "label": "Top P",
32
+ "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability.",
33
+ "group": "sampling",
34
+ "type": "number",
35
+ "range": {
36
+ "min": 0,
37
+ "max": 1,
38
+ "step": 0.01
39
+ }
40
+ },
41
+ {
42
+ "path": "extra_body.top_k",
43
+ "label": "Top K",
44
+ "description": "Limits generation to the selected number of highest-probability tokens. Values above 100 disable top-k sampling.",
45
+ "group": "sampling",
46
+ "type": "integer",
47
+ "default": 20,
48
+ "range": {
49
+ "min": 0
50
+ }
51
+ },
52
+ {
53
+ "path": "extra_body.enable_thinking",
54
+ "label": "Enable thinking",
55
+ "description": "Toggles the model's hybrid thinking mode, sent as a provider-specific extra body field on OpenAI-compatible clients.",
56
+ "group": "reasoning",
57
+ "type": "boolean",
58
+ "default": true
59
+ },
60
+ {
61
+ "path": "extra_body.thinking_budget",
62
+ "label": "Thinking budget",
63
+ "description": "Maximum number of tokens the model may spend on reasoning before it starts the final answer; defaults to the model's maximum reasoning length.",
64
+ "group": "reasoning",
65
+ "applicability": {
66
+ "only": {
67
+ "extra_body.enable_thinking": true
68
+ }
69
+ },
70
+ "type": "integer",
71
+ "range": {
72
+ "min": 1
73
+ }
74
+ }
75
+ ]
76
+ },
2
77
  {
3
78
  "provider": "alibaba",
4
79
  "authType": "api_key",
@@ -8786,6 +8861,102 @@
8786
8861
  }
8787
8862
  ]
8788
8863
  },
8864
+ {
8865
+ "provider": "google",
8866
+ "authType": "api_key",
8867
+ "model": "gemini-3-pro-image",
8868
+ "params": [
8869
+ {
8870
+ "path": "generationConfig.maxOutputTokens",
8871
+ "label": "Max output tokens",
8872
+ "description": "Maximum number of tokens to include in a response candidate.",
8873
+ "group": "generation_length",
8874
+ "type": "integer",
8875
+ "range": {
8876
+ "min": 1,
8877
+ "max": 65536
8878
+ }
8879
+ },
8880
+ {
8881
+ "path": "generationConfig.temperature",
8882
+ "label": "Temperature",
8883
+ "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied.",
8884
+ "group": "sampling",
8885
+ "type": "number",
8886
+ "default": 1,
8887
+ "range": {
8888
+ "min": 0,
8889
+ "max": 2,
8890
+ "step": 0.1
8891
+ }
8892
+ },
8893
+ {
8894
+ "path": "generationConfig.topP",
8895
+ "label": "Top P",
8896
+ "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability.",
8897
+ "group": "sampling",
8898
+ "type": "number",
8899
+ "default": 0.95,
8900
+ "range": {
8901
+ "min": 0,
8902
+ "max": 1,
8903
+ "step": 0.01
8904
+ }
8905
+ },
8906
+ {
8907
+ "path": "generationConfig.topK",
8908
+ "label": "Top K",
8909
+ "description": "Limits token sampling to the top K most likely next tokens.",
8910
+ "group": "sampling",
8911
+ "type": "integer",
8912
+ "default": 64,
8913
+ "range": {
8914
+ "min": 0
8915
+ }
8916
+ },
8917
+ {
8918
+ "path": "generationConfig.seed",
8919
+ "label": "Seed",
8920
+ "description": "Optional seed used for decoding when reproducible sampling is desired.",
8921
+ "group": "sampling",
8922
+ "type": "integer"
8923
+ },
8924
+ {
8925
+ "path": "generationConfig.thinkingConfig.thinkingLevel",
8926
+ "label": "Thinking level",
8927
+ "description": "Controls Gemini 3.1 Flash-Lite reasoning effort.",
8928
+ "group": "reasoning",
8929
+ "type": "enum",
8930
+ "default": "minimal",
8931
+ "values": [
8932
+ "minimal",
8933
+ "low",
8934
+ "medium",
8935
+ "high"
8936
+ ]
8937
+ },
8938
+ {
8939
+ "path": "generationConfig.thinkingConfig.includeThoughts",
8940
+ "label": "Include thoughts",
8941
+ "description": "Controls whether Gemini returns available thought summaries in the response parts.",
8942
+ "group": "reasoning",
8943
+ "type": "boolean",
8944
+ "default": false
8945
+ },
8946
+ {
8947
+ "path": "generationConfig.responseMimeType",
8948
+ "label": "Response MIME type",
8949
+ "description": "MIME type for generated text candidates.",
8950
+ "group": "output_format",
8951
+ "type": "enum",
8952
+ "default": "text/plain",
8953
+ "values": [
8954
+ "text/plain",
8955
+ "application/json"
8956
+ ]
8957
+ }
8958
+ ]
8959
+ },
8789
8960
  {
8790
8961
  "provider": "google",
8791
8962
  "authType": "api_key",
@@ -4,6 +4,7 @@
4
4
  from typing import Literal
5
5
 
6
6
  ModelId = Literal[
7
+ "alibaba/deepseek-v4-pro-0813",
7
8
  "alibaba/qwen-flash",
8
9
  "alibaba/qwen-max",
9
10
  "alibaba/qwen-plus",
@@ -97,6 +98,7 @@ ModelId = Literal[
97
98
  "google/gemini-2.5-pro",
98
99
  "google/gemini-2.5-pro-subscription",
99
100
  "google/gemini-3-flash-preview-subscription",
101
+ "google/gemini-3-pro-image",
100
102
  "google/gemini-3.1-flash-lite",
101
103
  "google/gemini-3.1-flash-lite-preview-subscription",
102
104
  "google/gemini-3.1-flash-lite-subscription",
@@ -285,6 +287,7 @@ ModelId = Literal[
285
287
  ]
286
288
 
287
289
  MODEL_IDS: tuple[ModelId, ...] = (
290
+ "alibaba/deepseek-v4-pro-0813",
288
291
  "alibaba/qwen-flash",
289
292
  "alibaba/qwen-max",
290
293
  "alibaba/qwen-plus",
@@ -378,6 +381,7 @@ MODEL_IDS: tuple[ModelId, ...] = (
378
381
  "google/gemini-2.5-pro",
379
382
  "google/gemini-2.5-pro-subscription",
380
383
  "google/gemini-3-flash-preview-subscription",
384
+ "google/gemini-3-pro-image",
381
385
  "google/gemini-3.1-flash-lite",
382
386
  "google/gemini-3.1-flash-lite-preview-subscription",
383
387
  "google/gemini-3.1-flash-lite-subscription",
@@ -25,6 +25,7 @@ from modelparams.types import z_ai
25
25
  from .model_ids import ModelId
26
26
 
27
27
  PARAM_TYPES: dict[ModelId, Any] = {
28
+ "alibaba/deepseek-v4-pro-0813": alibaba.Deepseek_V4_Pro_0813Params,
28
29
  "alibaba/qwen-flash": alibaba.Qwen_FlashParams,
29
30
  "alibaba/qwen-max": alibaba.Qwen_MaxParams,
30
31
  "alibaba/qwen-plus": alibaba.Qwen_PlusParams,
@@ -118,6 +119,7 @@ PARAM_TYPES: dict[ModelId, Any] = {
118
119
  "google/gemini-2.5-pro": google.Gemini_2_5_ProParams,
119
120
  "google/gemini-2.5-pro-subscription": google.Gemini_2_5_Pro_SubscriptionParams,
120
121
  "google/gemini-3-flash-preview-subscription": google.Gemini_3_Flash_Preview_SubscriptionParams,
122
+ "google/gemini-3-pro-image": google.Gemini_3_Pro_ImageParams,
121
123
  "google/gemini-3.1-flash-lite": google.Gemini_3_1_Flash_LiteParams,
122
124
  "google/gemini-3.1-flash-lite-preview-subscription": google.Gemini_3_1_Flash_Lite_Preview_SubscriptionParams,
123
125
  "google/gemini-3.1-flash-lite-subscription": google.Gemini_3_1_Flash_Lite_SubscriptionParams,
@@ -10,6 +10,20 @@ from typing_extensions import TypedDict
10
10
 
11
11
  _PARAMS_CONFIG = ConfigDict(strict=True, extra="forbid")
12
12
 
13
+ Deepseek_V4_Pro_0813Params = TypedDict(
14
+ "Deepseek_V4_Pro_0813Params",
15
+ {
16
+ "max_completion_tokens": Annotated[int, Field(ge=1)],
17
+ "temperature": Annotated[float, Field(ge=0, le=1.9)],
18
+ "top_p": Annotated[float, Field(ge=0, le=1)],
19
+ "extra_body.top_k": Annotated[int, Field(ge=0)],
20
+ "extra_body.enable_thinking": bool,
21
+ "extra_body.thinking_budget": Annotated[int, Field(ge=1)],
22
+ },
23
+ total=False,
24
+ )
25
+ setattr(Deepseek_V4_Pro_0813Params, "__pydantic_config__", _PARAMS_CONFIG)
26
+
13
27
  Qwen_FlashParams = TypedDict(
14
28
  "Qwen_FlashParams",
15
29
  {
@@ -419,6 +433,7 @@ Qwq_PlusParams = TypedDict(
419
433
  setattr(Qwq_PlusParams, "__pydantic_config__", _PARAMS_CONFIG)
420
434
 
421
435
  __all__ = [
436
+ "Deepseek_V4_Pro_0813Params",
422
437
  "Qwen_FlashParams",
423
438
  "Qwen_MaxParams",
424
439
  "Qwen_PlusParams",
@@ -122,6 +122,22 @@ Gemini_3_Flash_Preview_SubscriptionParams = TypedDict(
122
122
  )
123
123
  setattr(Gemini_3_Flash_Preview_SubscriptionParams, "__pydantic_config__", _PARAMS_CONFIG)
124
124
 
125
+ Gemini_3_Pro_ImageParams = TypedDict(
126
+ "Gemini_3_Pro_ImageParams",
127
+ {
128
+ "generationConfig.maxOutputTokens": Annotated[int, Field(ge=1, le=65536)],
129
+ "generationConfig.temperature": Annotated[float, Field(ge=0, le=2)],
130
+ "generationConfig.topP": Annotated[float, Field(ge=0, le=1)],
131
+ "generationConfig.topK": Annotated[int, Field(ge=0)],
132
+ "generationConfig.seed": int,
133
+ "generationConfig.thinkingConfig.thinkingLevel": Literal["minimal", "low", "medium", "high"],
134
+ "generationConfig.thinkingConfig.includeThoughts": bool,
135
+ "generationConfig.responseMimeType": Literal["text/plain", "application/json"],
136
+ },
137
+ total=False,
138
+ )
139
+ setattr(Gemini_3_Pro_ImageParams, "__pydantic_config__", _PARAMS_CONFIG)
140
+
125
141
  Gemini_3_1_Flash_LiteParams = TypedDict(
126
142
  "Gemini_3_1_Flash_LiteParams",
127
143
  {
@@ -416,6 +432,7 @@ __all__ = [
416
432
  "Gemini_2_5_ProParams",
417
433
  "Gemini_2_5_Pro_SubscriptionParams",
418
434
  "Gemini_3_Flash_Preview_SubscriptionParams",
435
+ "Gemini_3_Pro_ImageParams",
419
436
  "Gemini_3_1_Flash_LiteParams",
420
437
  "Gemini_3_1_Flash_Lite_Preview_SubscriptionParams",
421
438
  "Gemini_3_1_Flash_Lite_SubscriptionParams",
File without changes
File without changes
File without changes