RdaktSyncMiddleware
Sync anonymization middleware for httpx
Synchronous version of RdaktMiddleware. Implements httpx.BaseTransport for use with synchronous httpx clients.
Import
from rdakt_ai import RdaktSyncMiddlewareConstructor
RdaktSyncMiddleware(
*,
inner: httpx.BaseTransport | None = None,
config: RdaktConfig | None = None,
store: SessionStore | None = None,
session_key: str | None = None,
mode: str | None = None,
error_policy: str | None = None,
on_entities_detected: Callable[[list[Entity], str], None] | None = None,
on_anonymized: Callable[[str, str, dict[str, str]], None] | None = None,
on_deanonymized: Callable[[str, str], None] | None = None,
on_error: Callable[[Exception, str], None] | None = None,
)Parameters
Same parameters as RdaktMiddleware, but inner accepts httpx.BaseTransport (sync) instead of httpx.AsyncBaseTransport.
| Parameter | Type | Default | Description |
|---|---|---|---|
inner | BaseTransport | None | HTTPTransport() | The inner httpx transport to wrap |
| All other parameters | — | — | Same as RdaktMiddleware |
Methods
handle_request
def handle_request(self, request: httpx.Request) -> httpx.ResponseMain transport method called by httpx for synchronous requests.
Usage
import httpx
from openai import OpenAI
from rdakt_ai import RdaktSyncMiddleware
middleware = RdaktSyncMiddleware(inner=httpx.HTTPTransport())
client = OpenAI(
http_client=httpx.Client(transport=middleware),
)See Also
- RdaktMiddleware — async version