Skip to content

Commit 80597f8

Browse files
committed
Replace compression_rate and compression_semantic_preservation_threshold with compression_configuration object
1 parent 584b75d commit 80597f8

1 file changed

Lines changed: 7 additions & 15 deletions

File tree

edgee/__init__.py

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,8 @@ class InputObject:
4949
compression_model: str | None = (
5050
None # Compression model: agentic, claude, opencode, cursor, customer (gateway-internal)
5151
)
52-
compression_rate: float | None = (
53-
None # Compression rate 0.0-1.0 (gateway-internal, not sent to providers)
54-
)
55-
compression_semantic_preservation_threshold: int | None = (
56-
None # Semantic preservation threshold 0-100 (gateway-internal)
52+
compression_configuration: dict | None = (
53+
None # Configuration for compression model: {"rate": 0.7, "semantic_preservation_threshold": 60}
5754
)
5855

5956

@@ -208,24 +205,21 @@ def send(
208205
tool_choice = None
209206
tags = None
210207
compression_model = None
211-
compression_rate = None
212-
compression_semantic_preservation_threshold = None
208+
compression_configuration = None
213209
elif isinstance(input, InputObject):
214210
messages = input.messages
215211
tools = input.tools
216212
tool_choice = input.tool_choice
217213
tags = input.tags
218214
compression_model = input.compression_model
219-
compression_rate = input.compression_rate
220-
compression_semantic_preservation_threshold = input.compression_semantic_preservation_threshold
215+
compression_configuration = input.compression_configuration
221216
else:
222217
messages = input.get("messages", [])
223218
tools = input.get("tools")
224219
tool_choice = input.get("tool_choice")
225220
tags = input.get("tags")
226221
compression_model = input.get("compression_model")
227-
compression_rate = input.get("compression_rate")
228-
compression_semantic_preservation_threshold = input.get("compression_semantic_preservation_threshold")
222+
compression_configuration = input.get("compression_configuration")
229223

230224
body: dict = {"model": model, "messages": messages}
231225
if stream:
@@ -238,10 +232,8 @@ def send(
238232
body["tags"] = tags
239233
if compression_model is not None:
240234
body["compression_model"] = compression_model
241-
if compression_rate is not None:
242-
body["compression_rate"] = compression_rate
243-
if compression_semantic_preservation_threshold is not None:
244-
body["compression_semantic_preservation_threshold"] = compression_semantic_preservation_threshold
235+
if compression_configuration is not None:
236+
body["compression_configuration"] = compression_configuration
245237

246238
request = Request(
247239
f"{self.base_url}{API_ENDPOINT}",

0 commit comments

Comments
 (0)