osbot-utils 2.48.0__py3-none-any.whl → 2.50.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.
@@ -43,6 +43,7 @@ class LLM_Request__Builder(Type_Safe):
43
43
  def set__model (self, model : Safe_Str__Text): self.llm_request_data.model = model ; return self
44
44
  def set__platform (self, platform: Safe_Str__Text): self.llm_request_data.platform = platform; return self
45
45
  def set__provider (self, provider: Safe_Str__Text): self.llm_request_data.provider = provider; return self
46
+ def set__model__gpt_4o (self ): return self.set__model('gpt-4o' )
46
47
  def set__model__gpt_4o_mini(self ): return self.set__model('gpt-4o-mini')
47
48
 
48
49
  @type_safe
@@ -3,11 +3,8 @@ from osbot_utils.decorators.methods.cache_on_self import cache
3
3
  from osbot_utils.helpers.safe_str.Safe_Str__File__Path import Safe_Str__File__Path
4
4
  from osbot_utils.type_safe.Type_Safe import Type_Safe
5
5
  from osbot_utils.type_safe.decorators.type_safe import type_safe
6
- from osbot_utils.utils.Files import current_temp_folder, path_combine_safe, folder_create, file_exists, folder_exists, file_delete, file_name_without_extension, parent_folder, create_folder, files_recursive
7
- from osbot_utils.utils.Json import json_save_file, json_load_file, json_file_load
8
-
9
- FOLDER_NAME__CACHE_IN_TEMP_FOLDER = '_llm_requests_cache'
10
- FILE_NAME__CACHE_INDEX = "cache_index.json"
6
+ from osbot_utils.utils.Files import current_temp_folder, path_combine_safe, folder_create, file_exists, folder_exists, file_delete, parent_folder, create_folder, files_recursive
7
+ from osbot_utils.utils.Json import json_save_file, json_load_file
11
8
 
12
9
  class Virtual_Storage__Local__Folder(Type_Safe):
13
10
 
@@ -3,5 +3,6 @@ from osbot_utils.type_safe.Type_Safe import Type_Saf
3
3
 
4
4
 
5
5
  class Schema__LLM_Request(Type_Safe):
6
- #request_id : Obj_Id # can't put this id here or we won't be able to cache this data
7
- request_data : Schema__LLM_Request__Data
6
+ request_data : Schema__LLM_Request__Data
7
+
8
+ # request_id : Obj_Id # can't put this id here or we won't be able to cache this data
@@ -50,8 +50,10 @@ class Type_Safe__Step__From_Json:
50
50
  annotation = type_safe_annotations.obj_attribute_annotation(_self, key)
51
51
  annotation_origin = type_safe_cache.get_origin(annotation)
52
52
 
53
+ if type(annotation) is type and issubclass(annotation, Type_Safe) and type(value) is dict: # if the annotation is a Type_Safe class and the value is a dict
54
+ value = annotation.from_json(value) # we can use the Type_Safe.from_json to create the deserialized value object
53
55
 
54
- if annotation == type: # Handle type objects
56
+ elif annotation == type: # Handle type objects
55
57
  value = self.deserialize_type__using_value(value)
56
58
  elif annotation_origin == type: # Handle type objects inside ForwardRef
57
59
  value = self.deserialize_type__using_value(value)
osbot_utils/version CHANGED
@@ -1 +1 @@
1
- v2.48.0
1
+ v2.50.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: osbot_utils
3
- Version: 2.48.0
3
+ Version: 2.50.0
4
4
  Summary: OWASP Security Bot - Utils
5
5
  License: MIT
6
6
  Author: Dinis Cruz
@@ -23,7 +23,7 @@ Description-Content-Type: text/markdown
23
23
 
24
24
  Powerful Python util methods and classes that simplify common apis and tasks.
25
25
 
26
- ![Current Release](https://img.shields.io/badge/release-v2.48.0-blue)
26
+ ![Current Release](https://img.shields.io/badge/release-v2.50.0-blue)
27
27
  [![codecov](https://codecov.io/gh/owasp-sbot/OSBot-Utils/graph/badge.svg?token=GNVW0COX1N)](https://codecov.io/gh/owasp-sbot/OSBot-Utils)
28
28
 
29
29
 
@@ -193,7 +193,7 @@ osbot_utils/helpers/llms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
193
193
  osbot_utils/helpers/llms/actions/LLM_Request__Execute.py,sha256=IsC5gzQXG__j5M2dSWVCmV77Kf133pKbZRvbiQyeihU,2453
194
194
  osbot_utils/helpers/llms/actions/Type_Safe__Schema_For__LLMs.py,sha256=em9RoSZqSSo6BQBZvEKH8Qv8f8f8oubNpy0LIDsak-E,12024
195
195
  osbot_utils/helpers/llms/actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
196
- osbot_utils/helpers/llms/builders/LLM_Request__Builder.py,sha256=c8MN66ijFn9DugbBIGmG0bm9ujS-0kvZDGqJcZsHHYc,3385
196
+ osbot_utils/helpers/llms/builders/LLM_Request__Builder.py,sha256=PvLvDdZsvwb_W5Na0JUyQpboX00-6lrP3lEXnaHs79E,3488
197
197
  osbot_utils/helpers/llms/builders/LLM_Request__Builder__Open_AI.py,sha256=JwyPDeBUQd70Ltm801y5qvS883IIC7TcfG04D3LWdGI,3430
198
198
  osbot_utils/helpers/llms/builders/LLM_Request__Factory.py,sha256=bpFXVTKpalBL7ZONjaHU5c0-2Rwzzd2vgdD1FpYxfGw,6291
199
199
  osbot_utils/helpers/llms/builders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -201,14 +201,14 @@ osbot_utils/helpers/llms/cache/LLM_Cache__Path_Generator.py,sha256=7kDY-aaUWR4Da
201
201
  osbot_utils/helpers/llms/cache/LLM_Request__Cache.py,sha256=jvJFA4dCN7keoRuk6AjTNoePuUVh01iohPntN-vY5tg,7689
202
202
  osbot_utils/helpers/llms/cache/LLM_Request__Cache__File_System.py,sha256=BWuWDZw-V2uamEJ39clWu9Jox63uaSHGdY6EIrkYw34,15497
203
203
  osbot_utils/helpers/llms/cache/LLM_Request__Cache__Storage.py,sha256=0ok7z2kGiK3edlgD0hwD5z2hYFZ91Viar1JgD7SNoxg,5434
204
- osbot_utils/helpers/llms/cache/Virtual_Storage__Local__Folder.py,sha256=xNM2xy0-2ROvhEFXa_jwqth7eApIcRTqcRUDxo0THXI,3214
204
+ osbot_utils/helpers/llms/cache/Virtual_Storage__Local__Folder.py,sha256=-ggOMO2wu8T1qIK4tWdxkZtbZ3zTdPZTtToo0LG8zYg,3055
205
205
  osbot_utils/helpers/llms/cache/Virtual_Storage__Sqlite.py,sha256=j8EWuKFVMtDBxrCEi8yNdpzwvTxO6Bri2Bi4-KwO-3s,4638
206
206
  osbot_utils/helpers/llms/cache/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
207
207
  osbot_utils/helpers/llms/platforms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
208
208
  osbot_utils/helpers/llms/platforms/open_ai/API__LLM__Open_AI.py,sha256=Yyy2ZnIS6CfxXepP9pZNsOYx02d-5EnK1IFeFf8myyk,2148
209
209
  osbot_utils/helpers/llms/platforms/open_ai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
210
210
  osbot_utils/helpers/llms/schemas/Schema__LLM_Cache__Index.py,sha256=12dUUSFhWRZvqEkNivqajqMPApPWhfSI7jWnHyBuxNw,717
211
- osbot_utils/helpers/llms/schemas/Schema__LLM_Request.py,sha256=7IXCf9AflRlUeFjDSqRR9CiBWlaAa1FgMzrS292e9Po,376
211
+ osbot_utils/helpers/llms/schemas/Schema__LLM_Request.py,sha256=UUiqZQ5mj16SPdlzef7_j3myLaKKCZdAUjsWUJnK1Ag,378
212
212
  osbot_utils/helpers/llms/schemas/Schema__LLM_Request__Data.py,sha256=EpII6ZMkWACkoHYn-TNowppbIskyoaCovefPA5Q5qtA,1380
213
213
  osbot_utils/helpers/llms/schemas/Schema__LLM_Request__Function_Call.py,sha256=VJgWi4aK-DJmuJvfY2qZUZuLkrLlmu5lgyzxZrrp3hM,440
214
214
  osbot_utils/helpers/llms/schemas/Schema__LLM_Request__Message__Content.py,sha256=nl-16yz4G_72ViACKE9CvGStrKxw2Gm_JcaU8wVcJXI,521
@@ -362,7 +362,7 @@ osbot_utils/type_safe/shared/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
362
362
  osbot_utils/type_safe/steps/Type_Safe__Step__Class_Kwargs.py,sha256=snoyJKvZ1crgF2fp0zexwNPnV_E63RfyRIsMAZdrKNY,6995
363
363
  osbot_utils/type_safe/steps/Type_Safe__Step__Default_Kwargs.py,sha256=tzKXDUc0HVP5QvCWsmcPuuZodNvQZ9FeMDNI2x00Ngw,1943
364
364
  osbot_utils/type_safe/steps/Type_Safe__Step__Default_Value.py,sha256=b5vsgM8eg9yq2KM0wRMntVHma6OhN_HnU76LxhEIpoA,4483
365
- osbot_utils/type_safe/steps/Type_Safe__Step__From_Json.py,sha256=y6iet08nQboMPZ1ymrPA61oaSVE3YB1EvPn8a8PiqOE,14133
365
+ osbot_utils/type_safe/steps/Type_Safe__Step__From_Json.py,sha256=33nlJC9WymFHf5JQzbpCF5sUpfsAcziyhNXkKC9YAPk,14517
366
366
  osbot_utils/type_safe/steps/Type_Safe__Step__Init.py,sha256=dQRwFxEMdmoW2ogmYZ6ZxLOvt1XnALx41LPpIB6yp3s,4473
367
367
  osbot_utils/type_safe/steps/Type_Safe__Step__Set_Attr.py,sha256=VuKHH9QEYlbAL9R4zwQ5dwexx2sFY6wMx52QmF7eqcg,5219
368
368
  osbot_utils/type_safe/steps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -398,8 +398,8 @@ osbot_utils/utils/Toml.py,sha256=Rxl8gx7mni5CvBAK-Ai02EKw-GwtJdd3yeHT2kMloik,166
398
398
  osbot_utils/utils/Version.py,sha256=Ww6ChwTxqp1QAcxOnztkTicShlcx6fbNsWX5xausHrg,422
399
399
  osbot_utils/utils/Zip.py,sha256=pR6sKliUY0KZXmqNzKY2frfW-YVQEVbLKiyqQX_lc-8,14052
400
400
  osbot_utils/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
401
- osbot_utils/version,sha256=dXkkR1HBYdt4oXoWWLkvGa6EqCJQKqhiZD6wE-ymYt4,8
402
- osbot_utils-2.48.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
403
- osbot_utils-2.48.0.dist-info/METADATA,sha256=u5pG_cfHbtditq5ly9YHW2rtM2f14EHaq-MiwXjyRjw,1329
404
- osbot_utils-2.48.0.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
405
- osbot_utils-2.48.0.dist-info/RECORD,,
401
+ osbot_utils/version,sha256=Sfic_5AyOSvZdVnIKvXbhV3Vki85TkZrpIBGHX2vAQA,8
402
+ osbot_utils-2.50.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
403
+ osbot_utils-2.50.0.dist-info/METADATA,sha256=AJO3NhBL-2s1dY3nJYW5RuxwKzhdojBmN50ymQ99frk,1329
404
+ osbot_utils-2.50.0.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
405
+ osbot_utils-2.50.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.1.1
2
+ Generator: poetry-core 2.1.2
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any