in aidial_interceptors_sdk/utils/streaming.py [0:0]
def _add_indices(chunk: Any) -> Any:
if isinstance(chunk, list):
ret = []
for idx, elem in enumerate(chunk, start=1):
if isinstance(elem, dict) and "index" not in elem:
elem = {**elem, "index": idx}
ret.append(_add_indices(elem))
return ret
if isinstance(chunk, dict):
return {key: _add_indices(value) for key, value in chunk.items()}
return chunk