unique_toolkit 0.7.3__py3-none-any.whl → 0.7.6__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.
@@ -3,6 +3,7 @@ from enum import StrEnum
3
3
  from typing import ClassVar, Optional, Self
4
4
 
5
5
  from pydantic import BaseModel
6
+ from pydantic.json_schema import SkipJsonSchema
6
7
  from typing_extensions import deprecated
7
8
 
8
9
  from unique_toolkit.language_model.schemas import LanguageModelTokenLimits
@@ -16,10 +17,10 @@ class LanguageModelName(StrEnum):
16
17
  AZURE_GPT_4o_2024_0513 = "AZURE_GPT_4o_2024_0513"
17
18
  AZURE_GPT_4o_2024_0806 = "AZURE_GPT_4o_2024_0806"
18
19
  AZURE_GPT_4o_MINI_2024_0718 = "AZURE_GPT_4o_MINI_2024_0718"
19
- AZURE_o1_PREVIEW_2024_0912 = "AZURE_o1_PREVIEW_2024_0912"
20
- AZURE_o1_2024_1217 = "AZURE_o1_2024_1217"
21
20
  AZURE_o1_MINI_2024_0912 = "AZURE_o1_MINI_2024_0912"
21
+ AZURE_o1_2024_1217 = "AZURE_o1_2024_1217"
22
22
  AZURE_o3_MINI_2025_0131 = "AZURE_o3_MINI_2025_0131"
23
+ AZURE_GPT_45_PREVIEW_2025_0227 = "AZURE_GPT_45_PREVIEW_2025_0227"
23
24
 
24
25
 
25
26
  class EncoderName(StrEnum):
@@ -79,12 +80,12 @@ class LanguageModelInfo(BaseModel):
79
80
  )
80
81
  capabilities: list[ModelCapabilities] = [ModelCapabilities.STREAMING]
81
82
 
82
- info_cutoff_at: Optional[date] = None
83
- published_at: Optional[date] = None
84
- retirement_at: Optional[date] = None
83
+ info_cutoff_at: date | SkipJsonSchema[None] = None
84
+ published_at: date | SkipJsonSchema[None] = None
85
+ retirement_at: date | SkipJsonSchema[None] = None
85
86
 
86
- deprecated_at: Optional[date] = None
87
- retirement_text: Optional[str] = None
87
+ deprecated_at: date | SkipJsonSchema[None] = None
88
+ retirement_text: str | SkipJsonSchema[None] = None
88
89
 
89
90
  @classmethod
90
91
  def from_name(cls, model_name: LanguageModelName) -> Self:
@@ -216,7 +217,7 @@ class LanguageModelInfo(BaseModel):
216
217
  info_cutoff_at=date(2023, 10, 1),
217
218
  published_at=date(2024, 7, 18),
218
219
  )
219
- case LanguageModelName.AZURE_o1_2024_1217:
220
+ case LanguageModelName.AZURE_o1_MINI_2024_0912:
220
221
  return cls(
221
222
  name=model_name,
222
223
  capabilities=[
@@ -227,18 +228,15 @@ class LanguageModelInfo(BaseModel):
227
228
  ModelCapabilities.REASONING,
228
229
  ],
229
230
  provider=LanguageModelProvider.AZURE,
230
- version="2024-12-17",
231
+ version="2024-09-12",
231
232
  encoder_name=EncoderName.O200K_BASE,
232
233
  token_limits=LanguageModelTokenLimits(
233
- token_limit_input=200_000, token_limit_output=100_000
234
+ token_limit_input=128_000, token_limit_output=65_536
234
235
  ),
235
236
  info_cutoff_at=date(2023, 10, 1),
236
- published_at=date(2024, 12, 17),
237
+ published_at=date(2024, 9, 12),
237
238
  )
238
- case (
239
- LanguageModelName.AZURE_o1_MINI_2024_0912
240
- | LanguageModelName.AZURE_o1_PREVIEW_2024_0912
241
- ):
239
+ case LanguageModelName.AZURE_o1_2024_1217:
242
240
  return cls(
243
241
  name=model_name,
244
242
  capabilities=[
@@ -249,13 +247,13 @@ class LanguageModelInfo(BaseModel):
249
247
  ModelCapabilities.REASONING,
250
248
  ],
251
249
  provider=LanguageModelProvider.AZURE,
252
- version="2024-09-12",
250
+ version="2024-12-17",
253
251
  encoder_name=EncoderName.O200K_BASE,
254
252
  token_limits=LanguageModelTokenLimits(
255
- token_limit_input=128_000, token_limit_output=65_536
253
+ token_limit_input=200_000, token_limit_output=100_000
256
254
  ),
257
255
  info_cutoff_at=date(2023, 10, 1),
258
- published_at=date(2024, 9, 12),
256
+ published_at=date(2024, 12, 17),
259
257
  )
260
258
  case LanguageModelName.AZURE_o3_MINI_2025_0131:
261
259
  return cls(
@@ -275,6 +273,24 @@ class LanguageModelInfo(BaseModel):
275
273
  info_cutoff_at=date(2023, 10, 1),
276
274
  published_at=date(2025, 1, 31),
277
275
  )
276
+ case LanguageModelName.AZURE_GPT_45_PREVIEW_2025_0227:
277
+ return cls(
278
+ name=model_name,
279
+ capabilities=[
280
+ ModelCapabilities.STRUCTURED_OUTPUT,
281
+ ModelCapabilities.FUNCTION_CALLING,
282
+ ModelCapabilities.STREAMING,
283
+ ModelCapabilities.VISION,
284
+ ],
285
+ provider=LanguageModelProvider.AZURE,
286
+ version="2025-02-27",
287
+ encoder_name=EncoderName.O200K_BASE,
288
+ token_limits=LanguageModelTokenLimits(
289
+ token_limit_input=128_000, token_limit_output=16_384
290
+ ),
291
+ info_cutoff_at=date(2023, 10, 1),
292
+ published_at=date(2025, 2, 27),
293
+ )
278
294
  case _:
279
295
  if isinstance(model_name, LanguageModelName):
280
296
  raise ValueError(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: unique_toolkit
3
- Version: 0.7.3
3
+ Version: 0.7.6
4
4
  Summary:
5
5
  License: Proprietary
6
6
  Author: Martin Fadler
@@ -111,6 +111,14 @@ All notable changes to this project will be documented in this file.
111
111
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
112
112
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
113
113
 
114
+ ## [0.7.6] - 2025-04-08
115
+ - De provisioning o1-preview
116
+
117
+ ## [0.7.5] - 2025-04-07
118
+ - Skip None values when serializing to json schema for LanguageModelInfo
119
+
120
+ ## [0.7.4] - 2025-03-20
121
+ - add `AZURE_GPT_45_PREVIEW_2025_0227` as part of the models
114
122
 
115
123
  ## [0.7.3] - 2025-03-20
116
124
  - Enable handling tool calls in message builder
@@ -48,7 +48,7 @@ unique_toolkit/language_model/__init__.py,sha256=jWko_vQj48wjnpTtlkg8iNdef0SMI3F
48
48
  unique_toolkit/language_model/builder.py,sha256=aIAXWWUoB5G-HONJiAt3MdRGd4jdP8nA-HYX2D2WlSI,3048
49
49
  unique_toolkit/language_model/constants.py,sha256=B-topqW0r83dkC_25DeQfnPk3n53qzIHUCBS7YJ0-1U,119
50
50
  unique_toolkit/language_model/functions.py,sha256=I5jHhHsKoq7GwEQyTrM8LXB2n_6dvMAk7UklenjuHSY,7945
51
- unique_toolkit/language_model/infos.py,sha256=HRdQLG3oetwc-bPHtsXvDRRLsK7fSsC1q8FubvxLMsw,16459
51
+ unique_toolkit/language_model/infos.py,sha256=0Lx9M0gumczOpzbS5Zaqz_T-e_eV4MOb6gJVz5X1KF8,17339
52
52
  unique_toolkit/language_model/prompt.py,sha256=JSawaLjQg3VR-E2fK8engFyJnNdk21zaO8pPIodzN4Q,3991
53
53
  unique_toolkit/language_model/schemas.py,sha256=rrwzUgKANFOrdehCULW8Hh03uRW3tsE5dXpWqxmClfg,8618
54
54
  unique_toolkit/language_model/service.py,sha256=GupYD4uDZjy1TfVQW3jichmgQwiSgQCj350FtL4O0W4,5569
@@ -58,7 +58,7 @@ unique_toolkit/short_term_memory/constants.py,sha256=698CL6-wjup2MvU19RxSmQk3gX7
58
58
  unique_toolkit/short_term_memory/functions.py,sha256=3WiK-xatY5nh4Dr5zlDUye1k3E6kr41RiscwtTplw5k,4484
59
59
  unique_toolkit/short_term_memory/schemas.py,sha256=OhfcXyF6ACdwIXW45sKzjtZX_gkcJs8FEZXcgQTNenw,1406
60
60
  unique_toolkit/short_term_memory/service.py,sha256=0wrwuo6K17Edcuiwp5LMCvxFuBSDP82HF0_5qwi0nYc,5307
61
- unique_toolkit-0.7.3.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
62
- unique_toolkit-0.7.3.dist-info/METADATA,sha256=ynA_2RASnYvrs5DSqAcq7-taxnu1iZQe2gSRBiJupd4,20944
63
- unique_toolkit-0.7.3.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
64
- unique_toolkit-0.7.3.dist-info/RECORD,,
61
+ unique_toolkit-0.7.6.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
62
+ unique_toolkit-0.7.6.dist-info/METADATA,sha256=M2N81nXjCCmfZfZiWyj-jLwonMTt5TjMZxz_F7FLXCw,21181
63
+ unique_toolkit-0.7.6.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
64
+ unique_toolkit-0.7.6.dist-info/RECORD,,