unique_toolkit 0.7.11__tar.gz → 0.7.13__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 (65) hide show
  1. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/CHANGELOG.md +6 -0
  2. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/PKG-INFO +7 -1
  3. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/pyproject.toml +1 -1
  4. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/infos.py +140 -0
  5. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/LICENSE +0 -0
  6. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/README.md +0 -0
  7. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/__init__.py +0 -0
  8. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/_common/_base_service.py +0 -0
  9. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/_common/_time_utils.py +0 -0
  10. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/_common/exception.py +0 -0
  11. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/_common/validate_required_values.py +0 -0
  12. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/_common/validators.py +0 -0
  13. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/__init__.py +0 -0
  14. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/init_logging.py +0 -0
  15. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/init_sdk.py +0 -0
  16. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/performance/async_tasks.py +0 -0
  17. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/performance/async_wrapper.py +0 -0
  18. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/schemas.py +0 -0
  19. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/app/verification.py +0 -0
  20. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/__init__.py +0 -0
  21. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/constants.py +0 -0
  22. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/functions.py +0 -0
  23. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/schemas.py +0 -0
  24. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/service.py +0 -0
  25. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/state.py +0 -0
  26. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/chat/utils.py +0 -0
  27. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/__init__.py +0 -0
  28. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/constants.py +0 -0
  29. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/functions.py +0 -0
  30. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/schemas.py +0 -0
  31. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/service.py +0 -0
  32. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/content/utils.py +0 -0
  33. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/__init__.py +0 -0
  34. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/constants.py +0 -0
  35. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/functions.py +0 -0
  36. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/schemas.py +0 -0
  37. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/service.py +0 -0
  38. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/embedding/utils.py +0 -0
  39. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/__init__.py +0 -0
  40. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/config.py +0 -0
  41. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/constants.py +0 -0
  42. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/context_relevancy/constants.py +0 -0
  43. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/context_relevancy/prompts.py +0 -0
  44. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/context_relevancy/service.py +0 -0
  45. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/context_relevancy/utils.py +0 -0
  46. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/exception.py +0 -0
  47. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/hallucination/constants.py +0 -0
  48. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/hallucination/prompts.py +0 -0
  49. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/hallucination/service.py +0 -0
  50. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/hallucination/utils.py +0 -0
  51. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/output_parser.py +0 -0
  52. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/evaluators/schemas.py +0 -0
  53. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/__init__.py +0 -0
  54. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/builder.py +0 -0
  55. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/constants.py +0 -0
  56. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/functions.py +0 -0
  57. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/prompt.py +0 -0
  58. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/schemas.py +0 -0
  59. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/service.py +0 -0
  60. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/language_model/utils.py +0 -0
  61. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/short_term_memory/__init__.py +0 -0
  62. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/short_term_memory/constants.py +0 -0
  63. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/short_term_memory/functions.py +0 -0
  64. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/short_term_memory/schemas.py +0 -0
  65. {unique_toolkit-0.7.11 → unique_toolkit-0.7.13}/unique_toolkit/short_term_memory/service.py +0 -0
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.7.13] - 2025-05-07
9
+ - Adding litellm models `litellm:anthropic-claude-3-7-sonnet`, `litellm:anthropic-claude-3-7-sonnet-thinking`, `litellm:gemini-2-0-flash`, `gemini-2-5-flash-preview-04-17` , `litellm:gemini-2-5-pro-exp-03-25`
10
+
11
+ ## [0.7.12] - 2025-05-02
12
+ - add `AZURE_o3_2025_0416` and `AZURE_o4_MINI_2025_0416` as part of the models
13
+
8
14
  ## [0.7.11] - 2025-04-28
9
15
  - Removing `STRUCTURED_OUTPUT` capability from `AZURE_GPT_35_TURBO_0125`, `AZURE_GPT_4_TURBO_2024_0409` and `AZURE_GPT_4o_2024_0513`
10
16
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: unique_toolkit
3
- Version: 0.7.11
3
+ Version: 0.7.13
4
4
  Summary:
5
5
  License: Proprietary
6
6
  Author: Martin Fadler
@@ -111,6 +111,12 @@ 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.13] - 2025-05-07
115
+ - Adding litellm models `litellm:anthropic-claude-3-7-sonnet`, `litellm:anthropic-claude-3-7-sonnet-thinking`, `litellm:gemini-2-0-flash`, `gemini-2-5-flash-preview-04-17` , `litellm:gemini-2-5-pro-exp-03-25`
116
+
117
+ ## [0.7.12] - 2025-05-02
118
+ - add `AZURE_o3_2025_0416` and `AZURE_o4_MINI_2025_0416` as part of the models
119
+
114
120
  ## [0.7.11] - 2025-04-28
115
121
  - Removing `STRUCTURED_OUTPUT` capability from `AZURE_GPT_35_TURBO_0125`, `AZURE_GPT_4_TURBO_2024_0409` and `AZURE_GPT_4o_2024_0513`
116
122
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "unique_toolkit"
3
- version = "0.7.11"
3
+ version = "0.7.13"
4
4
  description = ""
5
5
  authors = [
6
6
  "Martin Fadler <martin.fadler@unique.ch>",
@@ -23,6 +23,15 @@ class LanguageModelName(StrEnum):
23
23
  AZURE_o3_MINI_2025_0131 = "AZURE_o3_MINI_2025_0131"
24
24
  AZURE_GPT_45_PREVIEW_2025_0227 = "AZURE_GPT_45_PREVIEW_2025_0227"
25
25
  AZURE_GPT_41_2025_0414 = "AZURE_GPT_41_2025_0414"
26
+ AZURE_o3_2025_0416 = "AZURE_o3_2025_0416"
27
+ AZURE_o4_MINI_2025_0416 = "AZURE_o4_MINI_2025_0416"
28
+ ANTHROPIC_CLAUDE_3_7_SONNET = "litellm:anthropic-claude-3-7-sonnet"
29
+ ANTHROPIC_CLAUDE_3_7_SONNET_THINKING = (
30
+ "litellm:anthropic-claude-3-7-sonnet-thinking"
31
+ )
32
+ GEMINI_2_0_FLASH = "litellm:gemini-2-0-flash"
33
+ GEMINI_2_5_FLASH_PREVIEW_0417 = "litellm:gemini-2-5-flash-preview-04-17"
34
+ GEMINI_2_5_PRO_EXP_0325 = "litellm:gemini-2-5-pro-exp-03-25"
26
35
 
27
36
 
28
37
  class EncoderName(StrEnum):
@@ -57,6 +66,7 @@ def get_encoder_name(model_name: LanguageModelName) -> EncoderName:
57
66
  class LanguageModelProvider(StrEnum):
58
67
  AZURE = "AZURE"
59
68
  CUSTOM = "CUSTOM"
69
+ LITELLM = "LITELLM"
60
70
 
61
71
 
62
72
  class ModelCapabilities(StrEnum):
@@ -290,6 +300,44 @@ class LanguageModelInfo(BaseModel):
290
300
  info_cutoff_at=date(2023, 10, 1),
291
301
  published_at=date(2025, 1, 31),
292
302
  )
303
+ case LanguageModelName.AZURE_o3_2025_0416:
304
+ return cls(
305
+ name=model_name,
306
+ capabilities=[
307
+ ModelCapabilities.STRUCTURED_OUTPUT,
308
+ ModelCapabilities.FUNCTION_CALLING,
309
+ ModelCapabilities.STREAMING,
310
+ ModelCapabilities.REASONING,
311
+ ModelCapabilities.VISION,
312
+ ],
313
+ provider=LanguageModelProvider.AZURE,
314
+ version="2025-04-16",
315
+ encoder_name=EncoderName.O200K_BASE,
316
+ token_limits=LanguageModelTokenLimits(
317
+ token_limit_input=200_000, token_limit_output=100_000
318
+ ),
319
+ info_cutoff_at=date(2024, 5, 31),
320
+ published_at=date(2025, 4, 16),
321
+ )
322
+ case LanguageModelName.AZURE_o4_MINI_2025_0416:
323
+ return cls(
324
+ name=model_name,
325
+ capabilities=[
326
+ ModelCapabilities.STRUCTURED_OUTPUT,
327
+ ModelCapabilities.FUNCTION_CALLING,
328
+ ModelCapabilities.STREAMING,
329
+ ModelCapabilities.REASONING,
330
+ ModelCapabilities.VISION,
331
+ ],
332
+ provider=LanguageModelProvider.AZURE,
333
+ version="2025-04-16",
334
+ encoder_name=EncoderName.O200K_BASE,
335
+ token_limits=LanguageModelTokenLimits(
336
+ token_limit_input=200_000, token_limit_output=100_000
337
+ ),
338
+ info_cutoff_at=date(2024, 5, 31),
339
+ published_at=date(2025, 4, 16),
340
+ )
293
341
  case LanguageModelName.AZURE_GPT_45_PREVIEW_2025_0227:
294
342
  return cls(
295
343
  name=model_name,
@@ -326,6 +374,98 @@ class LanguageModelInfo(BaseModel):
326
374
  info_cutoff_at=date(2024, 5, 31),
327
375
  published_at=date(2025, 4, 14),
328
376
  )
377
+ case LanguageModelName.ANTHROPIC_CLAUDE_3_7_SONNET:
378
+ return cls(
379
+ name=model_name,
380
+ capabilities=[
381
+ ModelCapabilities.FUNCTION_CALLING,
382
+ ModelCapabilities.STREAMING,
383
+ ModelCapabilities.VISION,
384
+ ],
385
+ provider=LanguageModelProvider.LITELLM,
386
+ version="claude-3-7-sonnet",
387
+ encoder_name=EncoderName.O200K_BASE, # TODO: Update encoder with litellm
388
+ token_limits=LanguageModelTokenLimits(
389
+ token_limit_input=200_000, token_limit_output=128_000
390
+ ),
391
+ info_cutoff_at=date(2024, 10, 31),
392
+ published_at=date(2025, 2, 24),
393
+ )
394
+ case LanguageModelName.ANTHROPIC_CLAUDE_3_7_SONNET_THINKING:
395
+ return cls(
396
+ name=model_name,
397
+ capabilities=[
398
+ ModelCapabilities.FUNCTION_CALLING,
399
+ ModelCapabilities.STREAMING,
400
+ ModelCapabilities.VISION,
401
+ ModelCapabilities.REASONING,
402
+ ],
403
+ provider=LanguageModelProvider.LITELLM,
404
+ version="claude-3-7-sonnet-thinking",
405
+ encoder_name=EncoderName.O200K_BASE, # TODO: Update encoder with litellm
406
+ token_limits=LanguageModelTokenLimits(
407
+ token_limit_input=200_000, token_limit_output=128_000
408
+ ),
409
+ info_cutoff_at=date(2024, 10, 31),
410
+ published_at=date(2025, 2, 24),
411
+ )
412
+ case LanguageModelName.GEMINI_2_0_FLASH:
413
+ return cls(
414
+ name=model_name,
415
+ capabilities=[
416
+ ModelCapabilities.FUNCTION_CALLING,
417
+ ModelCapabilities.STREAMING,
418
+ ModelCapabilities.VISION,
419
+ ModelCapabilities.STRUCTURED_OUTPUT,
420
+ ModelCapabilities.REASONING,
421
+ ],
422
+ provider=LanguageModelProvider.LITELLM,
423
+ version="gemini-2-0-flash",
424
+ encoder_name=EncoderName.O200K_BASE, # TODO: Update encoder with litellm
425
+ token_limits=LanguageModelTokenLimits(
426
+ token_limit_input=1_048_576, token_limit_output=8_192
427
+ ),
428
+ info_cutoff_at=date(2024, 8, 1),
429
+ published_at=date(2025, 2, 1),
430
+ )
431
+ case LanguageModelName.GEMINI_2_5_FLASH_PREVIEW_0417:
432
+ return cls(
433
+ name=model_name,
434
+ capabilities=[
435
+ ModelCapabilities.FUNCTION_CALLING,
436
+ ModelCapabilities.STREAMING,
437
+ ModelCapabilities.VISION,
438
+ ModelCapabilities.STRUCTURED_OUTPUT,
439
+ ModelCapabilities.REASONING,
440
+ ],
441
+ provider=LanguageModelProvider.LITELLM,
442
+ version="gemini-2-5-flash-preview-04-17",
443
+ encoder_name=EncoderName.O200K_BASE, # TODO:Replace with LLM tokenizer
444
+ token_limits=LanguageModelTokenLimits(
445
+ token_limit_input=1_048_576, token_limit_output=65_536
446
+ ),
447
+ info_cutoff_at=date(2025, 1, day=1),
448
+ published_at=date(2025, 4, 1),
449
+ )
450
+ case LanguageModelName.GEMINI_2_5_PRO_EXP_0325:
451
+ return cls(
452
+ name=model_name,
453
+ capabilities=[
454
+ ModelCapabilities.FUNCTION_CALLING,
455
+ ModelCapabilities.STREAMING,
456
+ ModelCapabilities.VISION,
457
+ ModelCapabilities.STRUCTURED_OUTPUT,
458
+ ModelCapabilities.REASONING,
459
+ ],
460
+ provider=LanguageModelProvider.LITELLM,
461
+ version="gemini-2-5-pro-exp-0325",
462
+ encoder_name=EncoderName.O200K_BASE, # TODO: Update encoder with litellm
463
+ token_limits=LanguageModelTokenLimits(
464
+ token_limit_input=1_048_576, token_limit_output=65_536
465
+ ),
466
+ info_cutoff_at=date(2025, 1, day=1),
467
+ published_at=date(2025, 3, 1),
468
+ )
329
469
  case _:
330
470
  if isinstance(model_name, LanguageModelName):
331
471
  raise ValueError(
File without changes