openai-sdk-helpers 0.6.0__py3-none-any.whl → 0.6.1__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openai-sdk-helpers
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Composable helpers for OpenAI SDK agents, prompts, and storage
5
5
  Author: openai-sdk-helpers maintainers
6
6
  License: MIT
@@ -97,6 +97,7 @@ The `agent` module provides a higher-level abstraction for building agents, whil
97
97
  - **SummarizerAgent**: Generate concise summaries from provided text
98
98
  - **TranslatorAgent**: Translate text into target languages
99
99
  - **ValidatorAgent**: Check inputs and outputs against safety guardrails
100
+ - **TaxonomyClassifierAgent**: Classify text into taxonomy-driven labels
100
101
 
101
102
  #### Response Module (Built on `openai` SDK)
102
103
  - **Response handling utilities** for direct API control with fine-grained message management
@@ -210,12 +211,18 @@ These use the `agent` module built on `openai-agents` SDK:
210
211
  ```python
211
212
  from openai_sdk_helpers.agent import (
212
213
  SummarizerAgent,
214
+ TaxonomyClassifierAgent,
213
215
  TranslatorAgent,
214
216
  ValidatorAgent,
215
217
  )
218
+ from openai_sdk_helpers.structure import TaxonomyNode
216
219
 
217
220
  # Initialize agents with a default model
218
221
  summarizer = SummarizerAgent(default_model="gpt-4o-mini")
222
+ classifier = TaxonomyClassifierAgent(
223
+ model="gpt-4o-mini",
224
+ taxonomy=[TaxonomyNode(label="Billing"), TaxonomyNode(label="Support")],
225
+ )
219
226
  translator = TranslatorAgent(default_model="gpt-4o-mini")
220
227
  validator = ValidatorAgent(default_model="gpt-4o-mini")
221
228
 
@@ -227,6 +234,10 @@ print(summary.text)
227
234
  translation = translator.run_sync("Bonjour", target_language="English")
228
235
  print(translation)
229
236
 
237
+ # Classify text against a taxonomy
238
+ classification = classifier.run_sync("I need help with my invoice")
239
+ print(classification.final_node)
240
+
230
241
  # Validate against guardrails
231
242
  validation = validator.run_sync(
232
243
  "Share meeting notes with names removed",
@@ -5,12 +5,12 @@ openai_sdk_helpers/errors.py,sha256=ZclLp94o08fSsFNjFn_yrX9yTjw1RE0v7A5T1hBChUc,
5
5
  openai_sdk_helpers/files_api.py,sha256=Sg-k4YDsrzggvICYA7h4Ua6_vGhMpZmAeS5JtQVE2hU,12598
6
6
  openai_sdk_helpers/logging.py,sha256=djtMo_R_88JjxJeUGU_hSlYCTRv3ffoSu1ocOKrUBIw,1153
7
7
  openai_sdk_helpers/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- openai_sdk_helpers/settings.py,sha256=xK_u0YNKgtPrLrZrVr4F4k0CvSuYbsmkqqw9mCMdyF8,10932
8
+ openai_sdk_helpers/settings.py,sha256=9qTdEIWuvQfQEQI8MU6STUDvbOk-I9FdmAEDjb2Zwx8,13316
9
9
  openai_sdk_helpers/tools.py,sha256=8hhcytpmDfoXV16UQbDmDVV0rhLOn8c_VjXO8XaTFLQ,19000
10
10
  openai_sdk_helpers/types.py,sha256=ejCG0rYqJhjOQvKLoNnzq-TzcKCFt69GVfi7y805NkU,1451
11
11
  openai_sdk_helpers/agent/__init__.py,sha256=Nyvm8MJB-FhxhOfXD6ohDveSEUDR4KK76ffASCtgNIk,1119
12
- openai_sdk_helpers/agent/base.py,sha256=8LIwi7zuYcOsXBjpsNdFTdpY8Ih-iAYXkqzLn4wkd1w,26144
13
- openai_sdk_helpers/agent/classifier.py,sha256=CA2gB7Qm1UVerZXXUTdBWafTKwfmtcbUvBTrLtCQS8U,7729
12
+ openai_sdk_helpers/agent/base.py,sha256=vEsAZ6FkaQx1vAEJkCArL-ygplOEw4546f36jA2R6Ws,26488
13
+ openai_sdk_helpers/agent/classifier.py,sha256=6RjWhCz-hAWdHooShdUUFn0FkSWH4QZZogkRKML0S3k,25864
14
14
  openai_sdk_helpers/agent/configuration.py,sha256=FU3xnb8-8qoezLW47WwxZg7z2AxNXRW1Svl0FMsk8kc,14244
15
15
  openai_sdk_helpers/agent/coordinator.py,sha256=lVjA0yI-GhGKlqbNR_k9GOCrUjFoZ0QoqRaafHckyME,18052
16
16
  openai_sdk_helpers/agent/runner.py,sha256=l2NPS9VA9d4RISuBfanFfKxXNYSHQ7MTjRsuzx4APls,3473
@@ -29,7 +29,7 @@ openai_sdk_helpers/extract/extractor.py,sha256=vmRJyhKDEYAVfRk0KMgLH5hTqUfDAUyWB
29
29
  openai_sdk_helpers/extract/generator.py,sha256=K9Euq0IaWs82oe5aRm73_18DelLKYyuH8VhfZ1_ZCEU,14695
30
30
  openai_sdk_helpers/prompt/__init__.py,sha256=MOqgKwG9KLqKudoKRlUfLxiSmdOi2aD6hNrWDFqLHkk,418
31
31
  openai_sdk_helpers/prompt/base.py,sha256=6X0zeopEvO0ba8207O8Nnj1QvFZEZier7kNNh4qkcmE,7782
32
- openai_sdk_helpers/prompt/classifier.jinja,sha256=bKW-rG2xP6nF2G1vFAmVH3ONOrsCvzaJ14cbKSJaX3c,809
32
+ openai_sdk_helpers/prompt/classifier.jinja,sha256=PgJ8tvnuOcEa4DGbOqIrEyrG0GJ26bBpTZ7FlRZoL-s,1239
33
33
  openai_sdk_helpers/prompt/extractor_config_agent_instructions.jinja,sha256=vCrsoUnsgHWSr7OS_ojMUjmPtHfbyv9bzKfaMaCJ99E,329
34
34
  openai_sdk_helpers/prompt/extractor_config_generator.jinja,sha256=9rZ1PZdoQtnxDxFUlKRb0SooIEfNw4_Em99n9xvFyyU,960
35
35
  openai_sdk_helpers/prompt/extractor_config_generator_instructions.jinja,sha256=GqV3DrGObyER_Fa-GMGGqhWBrQIH9FFlyKdgTjidyzg,534
@@ -56,8 +56,8 @@ openai_sdk_helpers/streamlit_app/app.py,sha256=kkjtdCKVwrJ9nZWuBArm3dhvcjMESX0TM
56
56
  openai_sdk_helpers/streamlit_app/configuration.py,sha256=0KeJ4HqCNFthBHsedV6ptqHluAcTPBb5_TujFOGkIUU,16685
57
57
  openai_sdk_helpers/structure/__init__.py,sha256=-_bEFvvKhg99bgsMnimpxx7RpLQpQyReSMquOc-2Ts8,4173
58
58
  openai_sdk_helpers/structure/agent_blueprint.py,sha256=VyJWkgPNzAYKRDMeR1M4kE6qqQURnwqtrrEn0TRJf0g,9698
59
- openai_sdk_helpers/structure/base.py,sha256=nYViUME9pvzMRFIvNORTgwNFcjJdCjd4R1mLMo0nMSM,24822
60
- openai_sdk_helpers/structure/classification.py,sha256=KKho8rmGeVVC2SvtmKbrUoyMf6CisjyK_a7e-v_9_1c,8548
59
+ openai_sdk_helpers/structure/base.py,sha256=UrnNNU9qQ9mEES8MB9y6QESbDgPXH47XW8LVWSxYUYM,25280
60
+ openai_sdk_helpers/structure/classification.py,sha256=q7d9x2Ya7ICBr6rk5SOSrQrW5lDLat345wHQisKZO7Y,13351
61
61
  openai_sdk_helpers/structure/extraction.py,sha256=wODP0iLAhhsdQkMWRYPYTiLUMU8bFMKiBjPl3PKUleg,37335
62
62
  openai_sdk_helpers/structure/prompt.py,sha256=ZfsaHdA0hj5zmZDrOdpXjCsC8U-jjzwFG4JBsWYiaH4,1535
63
63
  openai_sdk_helpers/structure/responses.py,sha256=WUwh0DhXj24pkvgqH1FMkdx5V2ArdvdtrDN_fuMBtDU,4882
@@ -67,7 +67,7 @@ openai_sdk_helpers/structure/validation.py,sha256=D03rlyBDn22qNjTGaGsjhsk3g50oPm
67
67
  openai_sdk_helpers/structure/vector_search.py,sha256=XNQsG6_-c7X6TpXjqWOdKCmqXatX1gwd0zq-hII3cz4,5782
68
68
  openai_sdk_helpers/structure/web_search.py,sha256=cPqjwip0xS3OHf7yQ3B_t4VJSlviqgqzPpOkT8_qLvY,4330
69
69
  openai_sdk_helpers/structure/plan/__init__.py,sha256=IGr0Tk4inN_8o7fT2N02_FTi6U6l2T9_npcQHAlBwKA,1076
70
- openai_sdk_helpers/structure/plan/enum.py,sha256=seESSwH-IeeW-9BqIMUQyk3qjtchfU3TDhF9HPDB1OM,3079
70
+ openai_sdk_helpers/structure/plan/enum.py,sha256=sXi4Qk3zalF1vhLdo9c_hyhPSNr1hDZHhK1WygEIc2w,3273
71
71
  openai_sdk_helpers/structure/plan/helpers.py,sha256=Vc6dBTMFrNWlsaCTpEImEIKjfFq4BSSxNjB4K8dywOQ,5139
72
72
  openai_sdk_helpers/structure/plan/plan.py,sha256=yRBx0Z7tog4sGyq7s1kJHvqQOzLpKT8JJ9Ur5j-lhtk,9130
73
73
  openai_sdk_helpers/structure/plan/task.py,sha256=DAfgJIa3Yq2AMEzaX20o8SdOs2AlM28pPE9GfbmXk3o,3547
@@ -91,8 +91,8 @@ openai_sdk_helpers/vector_storage/__init__.py,sha256=L5LxO09puh9_yBB9IDTvc1CvVkA
91
91
  openai_sdk_helpers/vector_storage/cleanup.py,sha256=sZ4ZSTlnjF52o9Cc8A9dTX37ZYXXDxS_fdIpoOBWvrg,3666
92
92
  openai_sdk_helpers/vector_storage/storage.py,sha256=t_ukacaXRa9EXE4-3BxsrB4Rjhu6nTu7NA9IjCJBIpQ,24259
93
93
  openai_sdk_helpers/vector_storage/types.py,sha256=jTCcOYMeOpZWvcse0z4T3MVs-RBOPC-fqWTBeQrgafU,1639
94
- openai_sdk_helpers-0.6.0.dist-info/METADATA,sha256=CbfzWHMqcXc6Pvur9uzPr1N8dUImDAw4ErUryzEN78g,24185
95
- openai_sdk_helpers-0.6.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
96
- openai_sdk_helpers-0.6.0.dist-info/entry_points.txt,sha256=gEOD1ZeXe8d2OP-KzUlG-b_9D9yUZTCt-GFW3EDbIIY,63
97
- openai_sdk_helpers-0.6.0.dist-info/licenses/LICENSE,sha256=CUhc1NrE50bs45tcXF7OcTQBKEvkUuLqeOHgrWQ5jaA,1067
98
- openai_sdk_helpers-0.6.0.dist-info/RECORD,,
94
+ openai_sdk_helpers-0.6.1.dist-info/METADATA,sha256=S0KXq5lr2GHbi8uYDac-sn7W4ug5WlIjMqNXjXXHBj0,24622
95
+ openai_sdk_helpers-0.6.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
96
+ openai_sdk_helpers-0.6.1.dist-info/entry_points.txt,sha256=gEOD1ZeXe8d2OP-KzUlG-b_9D9yUZTCt-GFW3EDbIIY,63
97
+ openai_sdk_helpers-0.6.1.dist-info/licenses/LICENSE,sha256=CUhc1NrE50bs45tcXF7OcTQBKEvkUuLqeOHgrWQ5jaA,1067
98
+ openai_sdk_helpers-0.6.1.dist-info/RECORD,,