Skip to content

Commit e96c480

Browse files
committed
Replace compression_rate and compression_semantic_preservation_threshold with compression_configuration object
1 parent 6b0a785 commit e96c480

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
@@ -62,11 +62,8 @@ class InputObject:
6262
compression_model: str | None = (
6363
None # Compression model: agentic, claude, opencode, cursor, customer (gateway-internal)
6464
)
65-
compression_rate: float | None = (
66-
None # Compression rate 0.0-1.0 (gateway-internal, not sent to providers)
67-
)
68-
compression_semantic_preservation_threshold: int | None = (
69-
None # Semantic preservation threshold 0-100 (gateway-internal)
65+
compression_configuration: dict | None = (
66+
None # Configuration for compression model: {"rate": 0.7, "semantic_preservation_threshold": 60}
7067
)
7168

7269

@@ -222,24 +219,21 @@ def send(
222219
tool_choice = None
223220
tags = None
224221
compression_model = None
225-
compression_rate = None
226-
compression_semantic_preservation_threshold = None
222+
compression_configuration = None
227223
elif isinstance(input, InputObject):
228224
messages = input.messages
229225
tools = input.tools
230226
tool_choice = input.tool_choice
231227
tags = input.tags
232228
compression_model = input.compression_model
233-
compression_rate = input.compression_rate
234-
compression_semantic_preservation_threshold = input.compression_semantic_preservation_threshold
229+
compression_configuration = input.compression_configuration
235230
else:
236231
messages = input.get("messages", [])
237232
tools = input.get("tools")
238233
tool_choice = input.get("tool_choice")
239234
tags = input.get("tags")
240235
compression_model = input.get("compression_model")
241-
compression_rate = input.get("compression_rate")
242-
compression_semantic_preservation_threshold = input.get("compression_semantic_preservation_threshold")
236+
compression_configuration = input.get("compression_configuration")
243237

244238
body: dict = {"model": model, "messages": messages}
245239
if stream:
@@ -252,10 +246,8 @@ def send(
252246
body["tags"] = tags
253247
if compression_model is not None:
254248
body["compression_model"] = compression_model
255-
if compression_rate is not None:
256-
body["compression_rate"] = compression_rate
257-
if compression_semantic_preservation_threshold is not None:
258-
body["compression_semantic_preservation_threshold"] = compression_semantic_preservation_threshold
249+
if compression_configuration is not None:
250+
body["compression_configuration"] = compression_configuration
259251

260252
request = Request(
261253
f"{self.base_url}{API_ENDPOINT}",

0 commit comments

Comments
 (0)