File: //usr/local/lib/python3.10/dist-packages/langsmith/wrappers/__pycache__/_openai.cpython-310.pyc
o
���g�0 � @ s� d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm Z m
Z
mZmZm
Z
mZmZmZmZmZ d dlmZ d dlmZ d dlmZ d d lmZmZmZ e rhd d
lmZmZ d dl m!Z!m"Z"m#Z# d dl$m%Z% ed
edde
f d�Z&e�'e(�Z)ej*dJdd��Z+dKdd�Z,dLdd�Z-dMd d!�Z.dNd$d%�Z/dOd'd(�Z0dPd+d,�Z1dQd/d0�Z2 dRdSd:d;�Z3 dTdUd=d>�Z4G d?d@� d@edAdB�Z5ddCddD�dVdHdI�Z6dS )W� )�annotationsN)�defaultdict)�Mapping)
�
TYPE_CHECKING�Any�Callable�DefaultDict�Dict�List�Optional�Type�TypeVar�Union)� TypedDict)�client)�run_helpers)�InputTokenDetails�OutputTokenDetails�
UsageMetadata)�AsyncOpenAI�OpenAI)�ChatCompletionChunk�Choice�ChoiceDeltaToolCall)�
Completion�Cr r )�bound�return�Optional[Type]c C s( z ddl m} | W S ty Y d S w )Nr ��NotGiven)�
openai._typesr �ImportErrorr � r# �E/usr/local/lib/python3.10/dist-packages/langsmith/wrappers/_openai.py�_get_not_given( s �r% �d�dictc
sf zt � � � d u r| W S � fdd�| �� D �W S ty2 } zt�d|� �� | W Y d }~S d }~ww )Nc s i | ]\}}t |� �s||�qS r# )�
isinstance��.0�k�v�� not_givenr# r$ �
<dictcomp>7 s z$_strip_not_given.<locals>.<dictcomp>zError stripping NotGiven: )r% �items� Exception�logger�error)r&