a
    ~g	                     @  s2   d dl mZ ddlmZmZ ddddddZdS )	    )annotations   )is_dictis_listzdict[object, object])accdeltareturnc           	      C  s  |  D ]\}}|| vr$|| |< q| | }|d u r>|| |< q|dksN|dkrX|| |< qt|trxt|trx||7 }nFt|ttfrt|ttfr||7 }nt|rt|rt||}n t|rt|rtdd |D r|	| q|D ]}t|st
d| z|d }W n6 tyR } ztd| |W Y d }~n
d }~0 0 t|tsnt
d| z|| }W n  ty   ||| Y q0 t|st
dt||||< q|| |< q| S )	Nindextypec                 s  s   | ]}t |tttfV  qd S )N)
isinstancestrintfloat).0x r   a/var/www/html/emsaiapi.evdpl.com/venv/lib/python3.9/site-packages/openai/lib/streaming/_deltas.py	<genexpr>$       z#accumulate_delta.<locals>.<genexpr>z1Unexpected list delta entry is not a dictionary: z2Expected list delta entry to have an `index` key; z>Unexpected, list delta entry `index` value is not an integer; znot handled yet)itemsr   r   r   r   r   accumulate_deltar   allextend	TypeErrorKeyErrorRuntimeError
IndexErrorinsert)	r   r   keydelta_value	acc_valuedelta_entryr	   exc	acc_entryr   r   r   r      sN    

&

r   N)
__future__r   _utilsr   r   r   r   r   r   r   <module>   s   