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.
- openai_sdk_helpers/agent/base.py +13 -5
- openai_sdk_helpers/agent/classifier.py +673 -93
- openai_sdk_helpers/prompt/classifier.jinja +9 -4
- openai_sdk_helpers/settings.py +65 -0
- openai_sdk_helpers/structure/base.py +79 -55
- openai_sdk_helpers/structure/classification.py +191 -43
- openai_sdk_helpers/structure/plan/enum.py +4 -0
- {openai_sdk_helpers-0.6.0.dist-info → openai_sdk_helpers-0.6.1.dist-info}/METADATA +12 -1
- {openai_sdk_helpers-0.6.0.dist-info → openai_sdk_helpers-0.6.1.dist-info}/RECORD +12 -12
- {openai_sdk_helpers-0.6.0.dist-info → openai_sdk_helpers-0.6.1.dist-info}/WHEEL +0 -0
- {openai_sdk_helpers-0.6.0.dist-info → openai_sdk_helpers-0.6.1.dist-info}/entry_points.txt +0 -0
- {openai_sdk_helpers-0.6.0.dist-info → openai_sdk_helpers-0.6.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: openai-sdk-helpers
|
|
3
|
-
Version: 0.6.
|
|
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=
|
|
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=
|
|
13
|
-
openai_sdk_helpers/agent/classifier.py,sha256=
|
|
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=
|
|
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=
|
|
60
|
-
openai_sdk_helpers/structure/classification.py,sha256=
|
|
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=
|
|
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.
|
|
95
|
-
openai_sdk_helpers-0.6.
|
|
96
|
-
openai_sdk_helpers-0.6.
|
|
97
|
-
openai_sdk_helpers-0.6.
|
|
98
|
-
openai_sdk_helpers-0.6.
|
|
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,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|