Ë
    üeœi°°  ã                  ót  — d Z ddlmZ ddlmZ ddlmZmZmZ ddlm	Z	 ddl
mZ ddlmZ ddlmZmZmZmZmZmZmZ dd	lmZ dd
lmZmZmZmZmZmZmZ ddl m!Z!m"Z"m#Z# eeeedf   Z$ee%e&eeedf   Z' G d„ de«      Z(e%e&ee)e&e*f   e(e)e&ef   f   f   Z+	 e G d„ de«      «       Z, G d„ de«      Z- G d„ de#«      Z.ee(e.e)e&e*f   e)e&ef   f   Z/ G d„ de«      Z0e0Z1 G d„ de0«      Z2 G d„ de#«      Z3 G d„ de-«      Z4 G d„ de-«      Z5 G d„ d e«      Z6 G d!„ d"e«      Z7e7Z8 G d#„ d$e&e«      Z9 G d%„ d&e«      Z:e!d'   Z; G d(„ d)e#d*¬+«      Z< G d,„ d-e:«      Z= G d.„ d/e«      Z>d0„ Z? G d1„ d2e«      Z@ G d3„ d4e@«      ZA G d5„ d6e&e«      ZB G d7„ d8e#d*¬+«      ZC G d9„ d:e@«      ZD G d;„ d<e«      ZE G d=„ d>eE«      ZF G d?„ d@eE«      ZG G dA„ dBe«      ZH G dC„ dDe«      ZI G dE„ dFe#d*¬+«      ZJ G dG„ dHe#d*¬+«      ZK G dI„ dJeI«      ZL G dK„ dLeI«      ZM G dM„ dNe«      ZN G dO„ dPeN«      ZOe G dQ„ dRe«      «       ZP G dS„ dTe#d*¬+«      ZQ G dU„ dVe#d*¬+«      ZR G dW„ dXe«      ZS G dY„ dZeS«      ZT G d[„ d\e#d*¬+«      ZU G d]„ d^e«      ZVe4j¯                  «         G d_„ d`e«      ZX G da„ dbe«      ZY G dc„ dde#d*¬+«      ZZ G de„ dfe#d*¬+«      Z[ G dg„ dhe«      Z\ G di„ dje«      Z] G dk„ dle«      Z^ G dm„ dne«      Z_ G do„ dpe«      Z` G dq„ dre«      Za G ds„ dte&e«      Zb G du„ dve#d*¬+«      Zc G dw„ dxe#d*¬+«      Zd G dy„ dze#d*¬+«      Ze G d{„ d|e#d*¬+«      Zf G d}„ d~e#«      Zg G d„ d€e#d*¬+«      Zh G d�„ d‚e#«      Zi G dƒ„ d„e4«      Zj G d…„ d†e#«      Zk G d‡„ dˆe#«      Zl G d‰„ dŠe«      Zm G d‹„ dŒe«      Zn G d�„ dŽe«      Zo G d�„ d�e«      Zp G d‘„ d’eo«      Zq G d“„ d”e«      Zry)•zSchemas for the LangSmith API.é    )Úannotations)ÚIterator)ÚdatetimeÚ	timedeltaÚtimezone)ÚDecimal)ÚEnum)ÚPath)Ú	AnnotatedÚAnyÚ
NamedTupleÚOptionalÚProtocolÚUnionÚruntime_checkable)ÚUUID)Ú	BaseModelÚ
ConfigDictÚFieldÚPrivateAttrÚ
StrictBoolÚStrictFloatÚ	StrictInt)ÚLiteralÚNotRequiredÚ	TypedDictNc                  ó&   — e Zd ZU dZded<   ded<   y)Ú
AttachmentaŠ  Annotated type that will be stored as an attachment if used.

    Examples:
        ```python
        from langsmith import traceable
        from langsmith.schemas import Attachment


        @traceable
        def my_function(bar: int, my_val: Attachment):
            # my_val will be stored as an attachment
            # bar will be stored as inputs
            return bar
        ```
    ÚstrÚ	mime_typeúUnion[bytes, Path]ÚdataN©Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__© ó    úf/var/www/html/Whatsapp_Customer_Support_Chatbot/venv/lib/python3.12/site-packages/langsmith/schemas.pyr   r   $   s   … ñð  ƒNØ
Ôr*   r   c                  ó,   — e Zd ZdZddd„Zdd	d„Zd
d„Zy)ÚBinaryIOLikez$Protocol for binary IO-like objects.c                 ó   — y)zRead function.Nr)   )ÚselfÚsizes     r+   ÚreadzBinaryIOLike.readD   ó   € àr*   c                 ó   — y)zSeek function.Nr)   )r/   ÚoffsetÚwhences      r+   ÚseekzBinaryIOLike.seekH   r2   r*   c                 ó   — y)zGet value function.Nr)   ©r/   s    r+   ÚgetvaluezBinaryIOLike.getvalueL   r2   r*   N)éÿÿÿÿ)r0   ÚintÚreturnÚbytes)r   )r4   r;   r5   r;   r<   r;   )r<   r=   )r$   r%   r&   r'   r1   r6   r9   r)   r*   r+   r-   r-   @   s   „ á.ôôôr*   r-   c                  ó„   — e Zd ZU dZded<    ed¬«      Zded<    ed¬«      Zded<    ed¬«      Zded	<    e	d
d
¬«      Z
y)ÚExampleBasezExample base model.r   Ú
dataset_idN©ÚdefaultúOptional[dict[str, Any]]ÚinputsÚoutputsÚmetadataT)ÚfrozenÚarbitrary_types_allowed)r$   r%   r&   r'   r(   r   rD   rE   rF   r   Úmodel_configr)   r*   r+   r?   r?   Q   sG   … ÙàÓÙ',°TÔ':€FÐ$Ó:Ù(-°dÔ(;€GÐ%Ó;Ù).°tÔ)<€HÐ&Ó<á TÀ4ÔH�Lr*   r?   c                  ó"   — e Zd ZU ded<   ded<   y)Ú_AttachmentDictr   r    r!   r"   N)r$   r%   r&   r(   r)   r*   r+   rK   rK   \   s   … ØƒNØ
Ôr*   rK   c                  óê   ‡ — e Zd ZU dZdZded<    ed„ ¬«      Zded<    ed¬	«      Zd
ed<    ed¬	«      Z	d
ed<    ed¬	«      Z
d
ed<   dZded<   dZded<   dZded<   dZded<   dZded<   ˆ fd„Zˆ xZS )ÚExampleCreatez Example upload with attachments.NúOptional[UUID]Úidc                 óH   — t        j                  t        j                  «      S ©N©r   Únowr   Úutcr)   r*   r+   ú<lambda>zExampleCreate.<lambda>j   ó   € ¼¿¹ÄhÇlÁlÓ9S€ r*   ©Údefault_factoryr   Ú
created_atrA   rC   rD   rE   rF   úOptional[Union[str, list[str]]]Úsplitz$Optional[dict[str, _AttachmentLike]]ÚattachmentsFÚboolÚuse_source_run_ioúOptional[list[str]]Úuse_source_run_attachmentsÚsource_run_idc                ó$   •— t        ‰| �  di |¤Ž y©zInitialize from dict.Nr)   ©ÚsuperÚ__init__©r/   r"   Ú	__class__s     €r+   rf   zExampleCreate.__init__t   ó   ø€ ä‰ÑÑ ˜4Ó r*   )r$   r%   r&   r'   rO   r(   r   rY   rD   rE   rF   r[   r\   r^   r`   ra   rf   Ú__classcell__©rh   s   @r+   rM   rM   f   s‘   ø… Ù*à€BˆÓÙ Ñ1SÔT€J�ÓTÙ',°TÔ':€FÐ$Ó:Ù(-°dÔ(;€GÐ%Ó;Ù).°tÔ)<€HÐ&Ó<Ø-1€EÐ*Ó1Ø8<€KÐ5Ó<Ø#Ð�tÓ#Ø6:ÐÐ 3Ó:Ø$(€M�>Ó(÷!ð !r*   rM   c                  ó   — e Zd ZU dZded<   y)ÚExampleUpsertWithAttachmentsz Example create with attachments.r   r@   Nr#   r)   r*   r+   rm   rm   |   s   … Ù*àÔr*   rm   c                  ó0   — e Zd ZU dZded<   ded<   ded<   y)	ÚAttachmentInfozInfo for an attachment.r   Úpresigned_urlr-   ÚreaderúOptional[str]r    Nr#   r)   r*   r+   ro   ro   ‚   s   … Ù!àÓØÓØÔr*   ro   c                  ó"  ‡ — e Zd ZU dZded<    ed„ ¬«      Zded<    e ed«      ¬	«      Zded
<    ed¬	«      Z	ded<   dZ
ded<    ed¬	«      Zded<   	  ed¬	«      Zded<    ed¬	«      Zded<   	 	 d	 	 	 	 	 	 	 dˆ fd„Zedd„«       Zd„ Zˆ xZS )ÚExamplezExample model.r   rO   c                 óL   — t        j                  dt        j                  ¬«      S )Nr   )Útz)r   Úfromtimestampr   rT   r)   r*   r+   rU   zExample.<lambda>�   s   € ¤× 6Ñ 6°q¼X¿\¹\Ô J€ r*   rW   r   rY   z$00000000-0000-0000-0000-000000000000rA   r@   NúOptional[datetime]Úmodified_atrN   ra   z#Optional[dict[str, AttachmentInfo]]r\   rr   Ú	_host_urlÚ
_tenant_idc                ó@   •— t        ‰| �  di |¤Ž || _        || _        y)úInitialize a Dataset object.Nr)   )re   rf   rz   r{   )r/   rz   r{   Úkwargsrh   s       €r+   rf   zExample.__init__š   s#   ø€ ô 	‰ÑÑ"˜6Ò"Ø"ˆŒØ$ˆ�r*   c                óØ   — | j                   r^d| j                  › d| j                  › �}| j                  r&| j                   › dt	        | j                  «      › |› �S | j                   › |› �S y)úURL of this run within the app.ú
/datasets/z/e/ú/o/N)rz   r@   rO   r{   r   )r/   Úpaths     r+   ÚurlzExample.url¥   sh   € ð �>Š>Ø §¡Ð0°°D·G±G°9Ð=ˆDØ�ŠØŸ.™.Ð)¨¬S°·±Ó-AÐ,BÀ4À&ÐIÐIØ—n‘nÐ% d VÐ,Ð,Ør*   c                ón   — | j                   › d| j                  › d| j                  › d| j                  › d�S )ú5Return a string representation of the RunBase object.ú(id=z, dataset_id=z, link='ú'))rh   rO   r@   r„   r8   s    r+   Ú__repr__zExample.__repr__¯   s8   € à—.‘.Ð!  d§g¡g Y¨m¸D¿O¹OÐ;LÈHÐUY×U]ÑU]ÐT^Ð^`ÐaÐar*   )NN)rz   rr   r{   rN   r~   r   r<   ÚNone©r<   rr   )r$   r%   r&   r'   r(   r   rY   r   r@   ry   ra   r\   r   rz   r{   rf   Úpropertyr„   r‰   rj   rk   s   @r+   rt   rt   Š   sÐ   ø… ÙàƒHÙ ÙJô€J�ó ñ ¡TÐ*PÓ%QÔR€J�ÓRÙ&+°DÔ&9€KÐ#Ó9Ø$(€M�>Ó(Ù7<ÀTÔ7J€KÐ4ÓJð.á*°4Ô8€Iˆ}Ó8Ù!,°TÔ!:€J�Ó:ð $(Ø%)ð	%à ð	%ð #ð	%ð ð		%ð
 
õ	%ð òó ðöbr*   rt   c                  ó   — e Zd ZU dZded<   y)ÚExampleSearchzExample returned via search.r   rO   Nr#   r)   r*   r+   rŽ   rŽ   ´   s
   … Ù&à„Hr*   rŽ   c                  óN   — e Zd ZU dZ eed¬«      Zded<    eed¬«      Z	ded<   y	)
ÚAttachmentsOperationsz%Operations to perform on attachments.z,Mapping of old attachment names to new names)rX   Údescriptionzdict[str, str]Úrenamez List of attachment names to keepú	list[str]ÚretainN)
r$   r%   r&   r'   r   Údictr’   r(   Úlistr”   r)   r*   r+   r�   r�   º   s5   … Ù/á"ØÐ*Xô€FˆNó ñ ØÐ*Lô€FˆIô r*   r�   c                  óÌ   ‡ — e Zd ZU dZded<   dZded<    ed¬«      Zded	<    ed¬«      Zded
<    ed¬«      Z	ded<   dZ
ded<   dZded<   dZded<    ed¬«      Zˆ fd„Zˆ xZS )ÚExampleUpdatez Example update with attachments.r   rO   NrN   r@   rA   rC   rD   rE   rF   rZ   r[   zOptional[Attachments]r\   zOptional[AttachmentsOperations]Úattachments_operationsT©rG   c                ó$   •— t        ‰| �  di |¤Ž yrc   rd   rg   s     €r+   rf   zExampleUpdate.__init__Ó   ri   r*   )r$   r%   r&   r'   r(   r@   r   rD   rE   rF   r[   r\   r™   r   rI   rf   rj   rk   s   @r+   r˜   r˜   Å   s{   ø… Ù*àƒHØ!%€J�Ó%Ù',°TÔ':€FÐ$Ó:Ù(-°dÔ(;€GÐ%Ó;Ù).°tÔ)<€HÐ&Ó<Ø-1€EÐ*Ó1Ø)-€KÐ&Ó-Ø>BÐÐ;ÓBá TÔ*€L÷!ð !r*   r˜   c                  ó   — e Zd ZdZdZdZdZy)ÚDataTypezEnum for dataset data types.ÚkvÚllmÚchatN)r$   r%   r&   r'   rž   rŸ   r    r)   r*   r+   r�   r�   Û   s   „ Ù&à	€BØ
€CØ�Dr*   r�   c                  óJ   — e Zd ZU dZded<   dZded<   dZded<    ed	¬
«      Zy)ÚDatasetBasezDataset base model.r   ÚnameNrr   r‘   zOptional[DataType]Ú	data_typeTrš   )	r$   r%   r&   r'   r(   r‘   r¤   r   rI   r)   r*   r+   r¢   r¢   ã   s)   … Ùà
ƒIØ!%€K�Ó%Ø$(€IÐ!Ó(á TÔ*�Lr*   r¢   )Úremove_system_messagesÚconvert_to_openai_messageÚconvert_to_openai_toolÚremove_extra_fieldsÚextract_tools_from_runc                  ó&   — e Zd ZU dZded<   ded<   y)ÚDatasetTransformationz#Schema for dataset transformations.r“   rƒ   z%Union[DatasetTransformationType, str]Útransformation_typeNr#   r)   r*   r+   r«   r«   ö   s   … Ù-à
ƒOØ>Ô>r*   r«   F)Útotalc                  ó8  ‡ — e Zd ZU dZded<   ded<    ed¬«      Zded	<   dZd
ed<   dZd
ed<   dZ	ded<   dZ
ded<   dZded<   dZded<   dZded<    ed¬«      Zded<    ed¬«      Zded<    ed¬«      Zded<   	 	 	 d	 	 	 	 	 	 	 	 	 dˆ fd„Zedd„«       Zˆ xZS )ÚDatasetzDataset ORM model.r   rO   r   rY   NrA   rx   ry   úOptional[int]Úexample_countÚsession_countÚlast_session_start_timerC   Úinputs_schemaÚoutputs_schemaz%Optional[list[DatasetTransformation]]ÚtransformationsrF   rr   rz   rN   r{   Ú_public_pathc                ó®   •— d|v r|j                  d«      |d<   d|v r|j                  d«      |d<   t        ‰| �  di |¤Ž || _        || _        || _        y)r}   Úinputs_schema_definitionr´   Úoutputs_schema_definitionrµ   Nr)   )Úpopre   rf   rz   r{   r·   )r/   rz   r{   r·   r~   rh   s        €r+   rf   zDataset.__init__  sd   ø€ ð &¨Ñ/Ø&,§j¡jÐ1KÓ&LˆF�?Ñ#à&¨&Ñ0Ø'-§z¡zÐ2MÓ'NˆFÐ#Ñ$ä‰ÑÑ"˜6Ò"Ø"ˆŒØ$ˆŒØ(ˆÕr*   c                ó  — | j                   r~| j                  r| j                   › | j                  › �S | j                  r1| j                   › dt        | j                  «      › d| j                  › �S | j                   › d| j                  › �S y)r€   r‚   r�   N)rz   r·   r{   r   rO   r8   s    r+   r„   zDataset.url!  s}   € ð �>Š>Ø× Ò ØŸ.™.Ð)¨$×*;Ñ*;Ð)<Ð=Ð=Ø�ŠØŸ.™.Ð)¨¬S°·±Ó-AÐ,BÀ*ÈTÏWÉWÈIÐVÐVØ—n‘nÐ% Z°·±¨yÐ9Ð9Ør*   )NNN)
rz   rr   r{   rN   r·   rr   r~   r   r<   rŠ   r‹   )r$   r%   r&   r'   r(   r   ry   r±   r²   r³   r´   rµ   r¶   rF   r   rz   r{   r·   rf   rŒ   r„   rj   rk   s   @r+   r¯   r¯   ý   sî   ø… ÙàƒHØÓÙ&+°DÔ&9€KÐ#Ó9Ø#'€M�=Ó'Ø#'€M�=Ó'Ø26ÐÐ/Ó6Ø.2€MÐ+Ó2Ø/3€NÐ,Ó3Ø=A€OÐ:ÓAØ)-€HÐ&Ó-Ù*°4Ô8€Iˆ}Ó8Ù!,°TÔ!:€J�Ó:Ù"-°dÔ";€L�-Ó;ð $(Ø%)Ø&*ð	)à ð)ð #ð)ð $ð	)ð
 ð)ð 
õ)ð& òó ôr*   r¯   c                  ó*   — e Zd ZU dZdZded<   ded<   y)ÚDatasetVersionz%Class representing a dataset version.Nr_   Útagsr   Úas_of)r$   r%   r&   r'   r¿   r(   r)   r*   r+   r¾   r¾   -  s   … Ù/à $€DÐ
Ó$Ø„Or*   r¾   c                 ó
   — di iS )NrF   r)   r)   r*   r+   Ú_default_extrarÂ   4  s   € Ø˜ÐÐr*   c                  ój  — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 d	Zd
ed<   	  ee¬«      Zded<   	 d	Z	ded<   	 d	Z
ded<   	 d	Zded<   	  ee¬«      Zded<   	 d	Zded<   	 d	Zded<   	 d	Zded<   	 d	Zded<   	  ee¬«      Zded<   	 ed$d„«       Zed%d„«       Zed&d „«       Zd!„ Z ed"¬#«      Zy	)'ÚRunBasea3  Base Run schema.

    A Run is a span representing a single unit of work or operation within your LLM app.
    This could be a single call to an LLM or chain, to a prompt formatting call,
    to a runnable lambda invocation. If you are familiar with OpenTelemetry,
    you can think of a run as a span.
    r   rO   r   r£   r   Ú
start_timeÚrun_typeNrx   Úend_timerW   úOptional[dict]Úextrarr   ÚerrorÚ
serializedúOptional[list[dict]]Úeventsr•   rD   rE   rN   Úreference_example_idÚparent_run_idr_   r¿   z-Union[Attachments, dict[str, AttachmentInfo]]r\   c                ó`   — | j                   €i | _         | j                   j                  di «      S ©zRetrieve the metadata (if any).rF   )rÉ   Ú
setdefaultr8   s    r+   rF   zRunBase.metadatau  s,   € ð �:‰:ÐØˆDŒJØ�z‰z×$Ñ$ Z°Ó4Ð4r*   c                ó8   — | j                   j                  d«      S )z"Retrieve the revision ID (if any).Úrevision_id)rF   Úgetr8   s    r+   rÔ   zRunBase.revision_id|  s   € ð �}‰}× Ñ  Ó/Ð/r*   c                ój   — | j                   €y| j                   | j                  z
  j                  «       S )zLatency in seconds.N)rÇ   rÅ   Útotal_secondsr8   s    r+   ÚlatencyzRunBase.latency�  s-   € ð �=‰=Ð ØØ—‘ §¡Ñ/×>Ñ>Ó@Ð@r*   c                ón   — | j                   › d| j                  › d| j                  › d| j                  › d�S )r†   r‡   z, name='z', run_type='rˆ   )rh   rO   r£   rÆ   r8   s    r+   r‰   zRunBase.__repr__ˆ  s3   € à—.‘.Ð!  d§g¡g Y¨h°t·y±y°kÀÈtÏ}É}ÈoÐ]_Ð`Ð`r*   T)rH   ©r<   údict[str, Any])r<   rN   )r<   úOptional[float])r$   r%   r&   r'   r(   rÇ   r   rÂ   rÉ   rÊ   rË   rÍ   r•   rD   rE   rÎ   rÏ   r¿   r\   rŒ   rF   rÔ   rØ   r‰   r   rI   r)   r*   r+   rÄ   rÄ   8  s-  … ñð 	ƒHØ(à
ƒIØ*àÓØ àƒMð"ð $(€HÐ Ó'Ø-á!°.ÔA€Eˆ>ÓAØ=à€Eˆ=ÓØ;à!%€J�Ó%ØFà#'€FÐ Ó'ðñ ¨Ô.€FˆDÓ.Ø"à"€Gˆ^Ó"Ø/à+/Ð˜.Ó/Ø@à$(€M�>Ó(Ø@à $€DÐ
Ó$Ø6áAFØôB€KÐ>ó ðð
 ò5ó ð5ð ò0ó ð0ð òAó ðAòañ °dÔ;�Lr*   rÄ   c                  óP  ‡ — e Zd ZU dZdZded<   	 dZded<   	 dZded<   	 dZd	ed
<   	 dZ	ded<   	 dZ
ded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 d ed!<   	  ed"¬#«      Zd$ed%<   	 dZd&ed'<   	  ed¬#«      Zded(<   d3d4ˆ fd)„Zed5d*„«       Zed6d+„«       Z ed6d,„«       Z!ed7d-„«       Z"ed7d.„«       Z#ed8d/„«       Z$ed8d0„«       Z%ed9d1„«       Z&ed9d2„«       Z'ˆ xZ(S ):ÚRunz$Run schema when loading from the DB.NrN   Ú
session_idúOptional[list[UUID]]Úchild_run_idszOptional[list[Run]]Ú
child_runsrC   Úfeedback_statsrr   Úapp_pathÚmanifest_idÚstatusr°   Úprompt_tokensÚcompletion_tokensÚtotal_tokenszOptional[dict[str, int]]Úprompt_token_detailsÚcompletion_token_detailsrx   Úfirst_token_timeúOptional[Decimal]Ú
total_costÚprompt_costÚcompletion_costzOptional[dict[str, Decimal]]Úprompt_cost_detailsÚcompletion_cost_detailsÚparent_run_idsr   Útrace_idÚ rA   r   Údotted_orderúOptional[bool]Ú
in_datasetrz   c                ó\  •— |j                  d«      sd|j                  d«      i|¥}|j                  dd«      xs i }t        ‰| �  di |¤d|i¤Ž || _        | j
                  j                  «       s;| j                  s.| j                  j                  «       › | j                  › �| _        yyy)úInitialize a Run object.rô   rO   rD   Nr)   )rÕ   r»   re   rf   rz   rö   ÚstriprÏ   rÅ   Ú	isoformatrO   )r/   rz   r~   rD   rh   s       €r+   rf   zRun.__init__×  sž   ø€ à�z‰z˜*Ô%Ø  &§*¡*¨TÓ"2Ð=°fÐ=ˆFØ—‘˜H dÓ+Ò1¨rˆÜ‰ÑÑ1˜6Ñ1¨&Ó1Ø"ˆŒØ× Ñ ×&Ñ&Ô(°×1CÒ1CØ#'§?¡?×#<Ñ#<Ó#>Ð"?ÀÇÁ¸yÐ IˆDÕð 2DÐ(r*   c                óh   — | j                   r&| j                  r| j                   › | j                  › �S y)r€   N)rz   rä   r8   s    r+   r„   zRun.urlá  s,   € ð �>Š>˜dŸmšmØ—n‘nÐ% d§m¡m _Ð5Ð5Ør*   c                ó   — | j                   S )zAlias for prompt_tokens.)rç   r8   s    r+   Úinput_tokenszRun.input_tokensè  s   € ð ×!Ñ!Ð!r*   c                ó   — | j                   S )zAlias for completion_tokens.)rè   r8   s    r+   Úoutput_tokenszRun.output_tokensí  s   € ð ×%Ñ%Ð%r*   c                ó   — | j                   S )zAlias for prompt_cost.)rï   r8   s    r+   Ú
input_costzRun.input_costò  s   € ð ×ÑÐr*   c                ó   — | j                   S )zAlias for completion_cost.)rð   r8   s    r+   Úoutput_costzRun.output_cost÷  s   € ð ×#Ñ#Ð#r*   c                ó   — | j                   S )zAlias for prompt_token_details.)rê   r8   s    r+   Úinput_token_detailszRun.input_token_detailsü  s   € ð ×(Ñ(Ð(r*   c                ó   — | j                   S )zAlias for output_token_details.)rë   r8   s    r+   Úoutput_token_detailszRun.output_token_details  s   € ð ×,Ñ,Ð,r*   c                ó   — | j                   S )zAlias for prompt_cost_details.)rñ   r8   s    r+   Úinput_cost_detailszRun.input_cost_details  s   € ð ×'Ñ'Ð'r*   c                ó   — | j                   S )z"Alias for completion_cost_details.)rò   r8   s    r+   Úoutput_cost_detailszRun.output_cost_details  s   € ð ×+Ñ+Ð+r*   rQ   ©rz   rr   r~   r   r<   rŠ   r‹   )r<   z
int | None)r<   zDecimal | None)r<   zdict[str, int] | None)r<   zdict[str, Decimal] | None))r$   r%   r&   r'   rß   r(   rá   râ   rã   rä   rå   ræ   rç   rè   ré   rê   rë   rì   rî   rï   rð   rñ   rò   ró   r   rö   rø   r   rz   rf   rŒ   r„   rÿ   r  r  r  r  r	  r  r  rj   rk   s   @r+   rÞ   rÞ   �  s  ø… Ù.à!%€J�Ó%Ø-Ø*.€MÐ'Ó.Ø4Ø&*€JÐ#Ó*ðMà/3€NÐ,Ó3Ø&Ø"€HˆmÓ"Ø7Ø"&€K�Ó&Ø:Ø €FˆMÓ Ø.Ø#'€M�=Ó'Ø/Ø'+Ð�}Ó+Ø/Ø"&€L�-Ó&Ø1Ø59ÐÐ2Ó9ðð :>ÐÐ6Ó=ðð ,0ÐÐ(Ó/Ø-Ø$(€JÐ!Ó(ØMØ%)€KÐ"Ó)ØGØ)-€OÐ&Ó-ØCØ8<ÐÐ5Ó<ðð =AÐÐ9Ó@ðð ,0€NÐ(Ó/Ø!ØƒNØCÙ bÔ)€L�#Ó)ð
ð "&€J�Ó%Ø+Ù*°4Ô8€Iˆ}Ó8öJð òó ðð ò"ó ð"ð ò&ó ð&ð ò ó ð ð ò$ó ð$ð ò)ó ð)ð ò-ó ð-ð ò(ó ð(ð ò,ó ô,r*   rÞ   c                  ó,   — e Zd ZdZdZdZdZdZdZdZ	dZ
y	)
ÚRunTypeEnumz5(Deprecated) Enum for run types. Use string directly.ÚtoolÚchainrŸ   Ú	retrieverÚ	embeddingÚpromptÚparserN)r$   r%   r&   r'   r  r  rŸ   r  r  r  r  r)   r*   r+   r  r    s(   „ Ù?à€DØ€EØ
€CØ€IØ€IØ€FØ�Fr*   r  c                  ó  — e Zd ZU dZded<   ded<   ded<   ded	<   ded
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   d ed!<   ded"<   d#ed$<   y%)&ÚRunLikeDictz&Run-like dictionary, for type-hinting.r   r£   r  rÆ   r   rÅ   rÈ   rD   rE   rx   rÇ   rÉ   rr   rÊ   rË   rN   rÏ   rå   rÌ   rÍ   r_   r¿   Úinputs_s3_urlsÚoutputs_s3_urlsrO   rß   Úsession_namerÎ   Úinput_attachmentsÚoutput_attachmentsr   rô   rö   ÚAttachmentsr\   Nr#   r)   r*   r+   r  r    s“   … Ù0à
ƒIØÓØÓØÓØÓØ Ó ØÓØÓØÓØ!Ó!ØÓØ Ó Ø
ÓØ"Ó"Ø#Ó#ØÓØÓØÓØ(Ó(Ø%Ó%Ø&Ó&ØƒNØÓØÔr*   r  c                  ó0   — e Zd ZU dZdZded<   	 dZded<   y)ÚRunWithAnnotationQueueInfoz&Run schema with annotation queue info.Nrx   Úlast_reviewed_timeÚadded_at)r$   r%   r&   r'   r!  r(   r"  r)   r*   r+   r   r   :  s"   … Ù0à-1ÐÐ*Ó1Ø.Ø#'€HÐ Ó'Ø3r*   r   c                  óZ   — e Zd ZU dZded<   	  ee¬«      Zded<   	 dZded	<   	 dZ	d
ed<   y)ÚFeedbackSourceBasez‰Base class for feedback sources.

    This represents whether feedback is submitted from the API, model, human labeler,
        etc.
    r   ÚtyperW   rC   rF   NzOptional[Union[UUID, str]]Úuser_idrr   Ú	user_name)
r$   r%   r&   r'   r(   r   r•   rF   r&  r'  r)   r*   r+   r$  r$  C  s?   … ñð ƒIØ*Ù).¸tÔ)D€HÐ&ÓDØ6Ø*.€GÐ'Ó.Ø:Ø#€Iˆ}Ó#Ø<r*   r$  c                  ó    — e Zd ZU dZdZded<   y)ÚAPIFeedbackSourcezAPI feedback source.ÚapizLiteral['api']r%  N©r$   r%   r&   r'   r%  r(   r)   r*   r+   r)  r)  T  s   … Ùà €Dˆ.Ô r*   r)  c                  ó    — e Zd ZU dZdZded<   y)ÚModelFeedbackSourcezModel feedback source.ÚmodelzLiteral['model']r%  Nr+  r)   r*   r+   r-  r-  Z  s   … Ù à$€DÐ
Ô$r*   r-  c                  ó   — e Zd ZdZdZ	 dZy)ÚFeedbackSourceTypezFeedback source type.r*  r.  N)r$   r%   r&   r'   ÚAPIÚMODELr)   r*   r+   r0  r0  `  s   „ Ùà
€CØ2Ø€EØ"r*   r0  c                  ó  — e Zd ZU dZded<   	 dZded<   	 dZded<   	 ded	<   	 ded
<   	 ded<   	 dZded<   	 dZded<   	 dZ	ded<   	 dZ
ded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	  ed¬«      Zy)ÚFeedbackBasezFeedback schema.r   rO   Nrx   rY   ry   rN   Úrun_idrô   r   ÚkeyÚ
SCORE_TYPEÚscoreÚ
VALUE_TYPEÚvaluerr   ÚcommentzUnion[str, dict, None]Ú
correctionúOptional[FeedbackSourceBase]Úfeedback_sourcerß   rÅ   Úcomparative_experiment_idÚfeedback_group_idrÈ   rÉ   Trš   )r$   r%   r&   r'   r(   rY   ry   r8  r:  r;  r<  r>  rß   rÅ   r?  r@  rÉ   r   rI   r)   r*   r+   r4  r4  i  sØ   … ÙàƒHØ(Ø%)€JÐ"Ó)Ø,Ø&*€KÐ#Ó*Ø2ØÓØ<ØÓØ>Ø	ƒHØAØ€Eˆ:ÓØ+Ø€Eˆ:ÓØQØ!€Gˆ]Ó!Ø2Ø)-€JÐ&Ó-Ø!Ø48€OÐ1Ó8Ø%Ø!%€J�Ó%ØTØ%)€JÐ"Ó)ØEØ04Ð˜~Ó4ØXØ(,Ð�~Ó,ð1ð !€Eˆ>Ó Ø'á TÔ*�Lr*   r4  c                  ó(   — e Zd ZU dZded<   	 ded<   y)ÚFeedbackCategoryz+Specific value and label pair for feedback.Úfloatr:  rr   ÚlabelNr#   r)   r*   r+   rB  rB  ’  s   … Ù5àƒLØCØÓØNr*   rB  c                  ó@   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   y	)
ÚFeedbackConfigz:Represents _how_ a feedback value ought to be interpreted.z0Literal['continuous', 'categorical', 'freeform']r%  rÜ   ÚminÚmaxz Optional[list[FeedbackCategory]]Ú
categoriesNr#   r)   r*   r+   rF  rF  ›  s,   … ÙDà
:Ó:ØØ	ÓØ4Ø	ÓØ4Ø0Ó0ð@r*   rF  c                  ó<   — e Zd ZU dZded<   	 dZded<   	 dZded<   y)	ÚFeedbackCreatez"Schema used for creating feedback.r$  r>  NzOptional[FeedbackConfig]Úfeedback_configr÷   rÊ   )r$   r%   r&   r'   r(   rL  rÊ   r)   r*   r+   rK  rK  ©  s&   … Ù,à'Ó'Ø%Ø04€OÐ-Ó4Ø%Ø €Eˆ>Ô r*   rK  c                  óB   — e Zd ZU dZded<   ded<   	 ded<   	 dZded	<   y)
ÚFeedbackzSchema for getting feedback.r   rO   r   rY   ry   Nr=  r>  )r$   r%   r&   r'   r(   r>  r)   r*   r+   rN  rN  ³  s*   … Ù&àƒHØÓØ,ØÓØ2Ø48€OÐ1Ó8Ø2r*   rN  c                  óþ   ‡ — e Zd ZU dZded<   	  ed„ ¬«      Zded<   	 dZd	ed
<   	 dZded<   	 dZ	ded<   	 dZ
ded<   	 ded<   	 ded<   	  ed¬«      Zded<   ddˆ fd„Zedd„«       Zedd„«       Zedd„«       Zˆ xZS )ÚTracerSessionzbTracerSession schema for the API.

    Sessions are also referred to as "Projects" in the UI.
    r   rO   c                 óH   — t        j                  t        j                  «      S rQ   rR   r)   r*   r+   rU   zTracerSession.<lambda>Ç  rV   r*   rW   r   rÅ   Nrx   rÇ   rr   r‘   r£   rC   rÉ   Ú	tenant_idrN   Úreference_dataset_idrA   rz   c                ó¾   •— t        ‰| �  di |¤Ž || _        | j                  j                  €0| j                  j                  t        j                  ¬«      | _        yy)rú   N)Útzinfor)   )re   rf   rz   rÅ   rU  Úreplacer   rT   )r/   rz   r~   rh   s      €r+   rf   zTracerSession.__init__Ø  sL   ø€ ä‰ÑÑ"˜6Ò"Ø"ˆŒØ�?‰?×!Ñ!Ð)Ø"Ÿo™o×5Ñ5¼X¿\¹\Ð5ÓJˆD�Oð *r*   c                ól   — | j                   r(| j                   › d| j                  › d| j                  › �S y)r€   r‚   ú/projects/p/N)rz   rR  rO   r8   s    r+   r„   zTracerSession.urlß  s3   € ð �>Š>Ø—n‘nÐ% S¨¯©Ð(8¸ÀTÇWÁWÀIÐNÐNØr*   c                óX   — | j                   �d| j                   vri S | j                   d   S rÑ   ©rÉ   r8   s    r+   rF   zTracerSession.metadataæ  ó-   € ð �:‰:Ð °4·:±:Ñ!=ØˆIØ�z‰z˜*Ñ%Ð%r*   c                óX   — | j                   �d| j                   vrg S | j                   d   S )zRetrieve the tags (if any).r¿   rZ  r8   s    r+   r¿   zTracerSession.tagsí  s-   € ð �:‰:Ð ¨t¯z©zÑ!9ØˆIØ�z‰z˜&Ñ!Ð!r*   rQ   r  r‹   rÚ   )r<   r“   )r$   r%   r&   r'   r(   r   rÅ   rÇ   r‘   r£   rÉ   r   rz   rf   rŒ   r„   rF   r¿   rj   rk   s   @r+   rP  rP  ¿  s½   ø… ñð
 	ƒHØ Ù Ñ1SÔT€J�ÓTØ+Ø#'€HÐ Ó'Ø)Ø!%€K�Ó%Ø)Ø€Dˆ-ÓØ"Ø&*€EÐ#Ó*Ø)ØƒOØ0Ø(Ó(ØJá*°4Ô8€Iˆ}Ó8öKð òó ðð ò&ó ð&ð ò"ó ô"r*   rP  c                  ó  — e Zd ZU dZdZded<   	 dZded<   	 dZded<   	 dZded<   	 dZ	ded	<   	 dZ
ded
<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   	 dZded<   y)ÚTracerSessionResultzqA project, hydrated with additional information.

    Sessions are also referred to as "Projects" in the UI.
    Nr°   Ú	run_countúOptional[timedelta]Úlatency_p50Úlatency_p99ré   rç   rè   rx   Úlast_run_start_timerC   rã   Úsession_feedback_statsúOptional[list[dict[str, Any]]]Ú
run_facetsrí   rî   rï   rð   Úfirst_token_p50Úfirst_token_p99rÜ   Ú
error_rate)r$   r%   r&   r'   r_  r(   ra  rb  ré   rç   rè   rc  rã   rd  rf  rî   rï   rð   rg  rh  ri  r)   r*   r+   r^  r^  õ  sç   … ñð
  $€Iˆ}Ó#Ø,Ø'+€KÐ$Ó+Ø?Ø'+€KÐ$Ó+Ø6Ø"&€L�-Ó&Ø=Ø#'€M�=Ó'ØDØ'+Ð�}Ó+ØHØ.2ÐÐ+Ó2Ø8Ø/3€NÐ,Ó3Ø)Ø7;ÐÐ4Ó;Ø1Ø15€JÐ.Ó5Ø-Ø$(€JÐ!Ó(ØMØ%)€KÐ"Ó)ØGØ)-€OÐ&Ó-ØCØ+/€OÐ(Ó/ØGØ+/€OÐ(Ó/Ø>Ø"&€J�Ó&Ø)r*   r^  c                  ó<   — e Zd ZU dZded<   	 ded<   	 edd„«       Zy)	ÚBaseMessageLikez7A protocol representing objects similar to BaseMessage.r   Úcontentzdict[Any, Any]Úadditional_kwargsc                 ó   — y)z,Type of the Message, used for serialization.Nr)   r8   s    r+   r%  zBaseMessageLike.type&  s   � r*   N©r<   r   )r$   r%   r&   r'   r(   rŒ   r%  r)   r*   r+   rk  rk    s(   … áAàƒLØ%Ø%Ó%ØCàò;ó ñ;r*   rk  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)ÚDatasetShareSchemaz*Represents the schema for a dataset share.r   r@   Úshare_tokenr   r„   Nr#   r)   r*   r+   rq  rq  +  s   … Ù4àÓØ ØÓØ,Ø	ƒHØ(r*   rq  c                  óL   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 d	ed
<   y)ÚAnnotationQueueRubricItemz�Represents a rubric item assigned to an annotation queue.

    Links a feedback config to a queue with optional per-queue customization.
    r   Úfeedback_keyrr   r‘   zOptional[dict[str, str]]Úvalue_descriptionsÚscore_descriptionsr÷   Úis_requiredNr#   r)   r*   r+   rt  rt  6  s6   … ñð
 ÓØ=ØÓØCØ0Ó0Ø7Ø0Ó0Ø(ØÓØNr*   rt  c                  ó„   — e Zd ZU dZded<   	 ded<   	 dZded<   	  ed	„ ¬
«      Zded<   	  ed„ ¬
«      Zded<   	 ded<   y)ÚAnnotationQueuezRepresents an annotation queue.r   rO   r   r£   Nrr   r‘   c                 óH   — t        j                  t        j                  «      S rQ   rR   r)   r*   r+   rU   zAnnotationQueue.<lambda>Q  rV   r*   rW   r   rY   c                 óH   — t        j                  t        j                  «      S rQ   rR   r)   r*   r+   rU   zAnnotationQueue.<lambda>S  rV   r*   Ú
updated_atrR  )	r$   r%   r&   r'   r(   r‘   r   rY   r}  r)   r*   r+   rz  rz  H  sP   … Ù)àƒHØ8Ø
ƒIØ+Ø!%€K�Ó%Ø:Ù Ñ1SÔT€J�ÓTØ>Ù Ñ1SÔT€J�ÓTØCØƒOØDr*   rz  c                  ó    — e Zd ZU dZdZded<   y)ÚAnnotationQueueWithDetailsz,Represents an annotation queue with details.Nrr   Úrubric_instructions)r$   r%   r&   r'   r€  r(   r)   r*   r+   r  r  Y  s   … Ù6à)-Ð˜Ó-Ø;r*   r  c                  óX   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 ded<   	 d	ed
<   y)ÚBatchIngestConfigz"Configuration for batch ingestion.r]   Úuse_multipart_endpointr;   Úscale_up_qsize_triggerÚscale_up_nthreads_limitÚscale_down_nempty_triggerÚ
size_limitr°   Úsize_limit_bytesNr#   r)   r*   r+   r‚  r‚  `  s:   … Ù,à Ó ØDØÓØ<Ø Ó Ø7Ø"Ó"ØAØƒOØ/Ø#Ó#Ø8r*   r‚  c                  óP   — e Zd ZU dZdZded<   	 dZded<   	 dZded	<   	 dZd
ed<   y)ÚLangSmithInfoz'Information about the LangSmith server.rõ   r   ÚversionNrx   Úlicense_expiration_timezOptional[BatchIngestConfig]Úbatch_ingest_configrC   Úinstance_flags)	r$   r%   r&   r'   r‹  r(   rŒ  r�  rŽ  r)   r*   r+   rŠ  rŠ  q  s;   … Ù1à€GˆSÓØ.Ø26ÐÐ/Ó6Ø+Ø7;ÐÐ4Ó;ØØ/3€NÐ,Ô3r*   rŠ  c                  óD   — e Zd ZU dZded<   	 ded<   	 ded<   	 dZded	<   y)
ÚLangSmithSettingsz"Settings for the LangSmith tenant.r   rO   Údisplay_namer   rY   Nrr   Útenant_handle)r$   r%   r&   r'   r(   r’  r)   r*   r+   r�  r�  €  s)   … Ù,àƒGØØÓØ)ØÓØ*Ø#'€M�=Ô'r*   r�  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)	ÚFeedbackIngestTokenz2Represents the schema for a feedback ingest token.r   rO   r   r„   r   Ú
expires_atNr#   r)   r*   r+   r”  r”  Œ  s   … Ù<àƒHØ.Ø	ƒHØ3ØÓØ+r*   r”  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)	ÚRunEventzRun event schema.r   r£   zUnion[datetime, str]ÚtimerC   r~   Nr#   r)   r*   r+   r—  r—  —  s   … Ùà
ƒIØØ
ÓØØ$Ó$Ø,r*   r—  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)ÚTimeDeltaInputzTimedelta input schema.r;   ÚdaysÚhoursÚminutesNr#   r)   r*   r+   rš  rš  ¢  s   … Ù!à
ƒIØØƒJØØƒLØr*   rš  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)ÚDatasetDiffInfoz;Represents the difference information between two datasets.z
list[UUID]Úexamples_modifiedÚexamples_addedÚexamples_removedNr#   r)   r*   r+   rŸ  rŸ  ­  s    … ÙEà!Ó!Ø=ØÓØ:Ø Ó Ø<r*   rŸ  c                  ó°   — e Zd ZU dZded<   	 dZded<   	 dZded<   	 ded<   	 d	ed
<   	 d	ed<   	 ded<   	 dZded<   	 dZded<   	 dZ	ded<   	 e
dd„«       Zy)ÚComparativeExperimentz’Represents a comparative experiment.

    This information summarizes evaluation results comparing
    two or more models on a given dataset.
    r   rO   Nrr   r£   r‘   rR  r   rY   ry   rS  rC   rÉ   rÌ   Úexperiments_inforã   c                óX   — | j                   �d| j                   vri S | j                   d   S rÑ   rZ  r8   s    r+   rF   zComparativeExperiment.metadataÔ  r[  r*   rÚ   )r$   r%   r&   r'   r(   r£   r‘   rÉ   r¥  rã   rŒ   rF   r)   r*   r+   r¤  r¤  ¸  s‹   … ñð 	ƒHØ?Ø€Dˆ-ÓØ:Ø!%€K�Ó%Ø@ØƒOØGØÓØDØÓØJØÓØJØ&*€EÐ#Ó*Ø?Ø-1ÐÐ*Ó1Ø\Ø/3€NÐ,Ó3ØPàò&ó ñ&r*   r¤  c                  óL   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 ded	<   y
)ÚPromptCommitz$Represents a Prompt with a manifest.r   ÚownerÚrepoÚcommit_hashrÛ   Úmanifestz
list[dict]ÚexamplesNr#   r)   r*   r+   r¨  r¨  Ü  s0   … Ù.àƒJØ0Ø
ƒIØ!ØÓØ(ØÓØ%ØÓØr*   r¨  c                  óâ   — e Zd ZU dZded<   	 ded<   	 ded<   	 dZded	<   	 dZded
<   	 dZded<   	 dZded<   	 dZ	ded<   	 dZ
ded<   	  ee¬«      Zded<   	 dZded<   	 dZded<   	 dZded<   y)ÚListedPromptCommitz;Represents a listed prompt commit with associated metadata.r   rO   r   r©  rª  NrN   rå   Úrepo_idÚ	parent_idrr   r«  rx   rY   r}  rW   rà   Úexample_run_idsr   r°   Únum_downloadsÚ	num_viewsÚparent_commit_hash)r$   r%   r&   r'   r(   rå   r°  r±  r«  rY   r}  r   r–   r²  r³  r´  rµ  r)   r*   r+   r¯  r¯  ë  s¨   … ÙEàƒHØ6àƒJØ)à
ƒIØ3à"&€K�Ó&ØOà"€Gˆ^Ó"Ø5à $€Iˆ~Ó$Ø8à!%€K�Ó%Ø*à%)€JÐ"Ó)Ø=à%)€JÐ"Ó)ØBá,1À$Ô,G€OÐ)ÓGØHà#$€M�=Ó$Ø>à €Iˆ}Ó Ø:à(,Ð˜Ó,Ø1r*   r¯  c                  ó8  — e Zd ZU dZded<   	 dZded<   	 dZded<   	 ded<   	 ded	<   	 d
ed<   	 d
ed<   	 ded<   	 ded<   	 ded<   	 dZded<   	 dZded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 dZ	ded<   	 dZ
ded<   	 ded<   	 dZded<   	 dZded<   y) ÚPromptz"Represents a Prompt with metadata.r   Úrepo_handleNrr   r‘   ÚreadmerO   rR  r   rY   r}  r]   Ú	is_publicÚis_archivedr“   r¿   Úoriginal_repo_idÚupstream_repo_idr©  Ú	full_namer;   Ú	num_likesr³  r´  r÷   Úliked_by_auth_userÚlast_commit_hashÚnum_commitsÚoriginal_repo_full_nameÚupstream_repo_full_name)r$   r%   r&   r'   r(   r‘   r¹  r¼  r½  rÀ  rÁ  rÃ  rÄ  r)   r*   r+   r·  r·    sê   … Ù,àÓØ!Ø!%€K�Ó%Ø(Ø €FˆMÓ Ø#ØƒGØØƒNØ,ØÓØ*ØÓØ-ØƒOØ'ØÓØ)Ø
ƒOØ.Ø&*Ð�mÓ*Ø3Ø&*Ð�mÓ*Ø3ØÓØ0ØƒNØ<ØƒNØØÓØ"ØƒNØØ)-Ð˜Ó-Ø@Ø&*Ð�mÓ*Ø&ØÓØ Ø-1Ð˜]Ó1Ø:Ø-1Ð˜]Ó1Ø:r*   r·  c                  ó(   — e Zd ZU dZded<   	 ded<   y)ÚListPromptsResponsez A list of prompts with metadata.zlist[Prompt]Úreposr;   r­   Nr#   r)   r*   r+   rÆ  rÆ  G  s   … Ù*àÓØØƒJØ&r*   rÆ  c                  ó&   — e Zd ZdZdZ	 dZ	 dZ	 dZy)ÚPromptSortFieldz$Enum for sorting fields for prompts.r³  r´  r}  r¿  N)r$   r%   r&   r'   r³  r´  r}  r¿  r)   r*   r+   rÉ  rÉ  P  s%   „ Ù.à#€MØØ€IØØ€JØØ€IØr*   rÉ  c                  ó@   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   y)ÚInputTokenDetailsz~Breakdown of input token counts.

    Does *not* need to sum to full input token count. Does *not* need to have all keys.
    r;   ÚaudioÚcache_creationÚ
cache_readÚcache_read_over_200kNr#   r)   r*   r+   rË  rË  ]  s5   … ñð
 ƒJØØÓðð ƒOðð Óðr*   rË  c                  ó(   — e Zd ZU dZded<   	 ded<   y)ÚOutputTokenDetailsz€Breakdown of output token counts.

    Does *not* need to sum to full output token count. Does *not* need to have all keys.
    r;   rÌ  Ú	reasoningNr#   r)   r*   r+   rÑ  rÑ  t  s   … ñð
 ƒJØØƒNðr*   rÑ  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)ÚInputCostDetailszvBreakdown of input token costs.

    Does *not* need to sum to full input cost. Does *not* need to have all keys.
    rC  rÌ  rÍ  rÎ  Nr#   r)   r*   r+   rÔ  rÔ  „  s)   … ñð
 ƒLØ%ØÓðð Óðr*   rÔ  c                  ó(   — e Zd ZU dZded<   	 ded<   y)ÚOutputCostDetailszxBreakdown of output token costs.

    Does *not* need to sum to full output cost. Does *not* need to have all keys.
    rC  rÌ  rÒ  Nr#   r)   r*   r+   rÖ  rÖ  ™  s   … ñð
 ƒLØ&ØÓðr*   rÖ  c                  óˆ   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 ded	<   	 d
ed<   	 d
ed<   	 d
ed<   	 ded<   	 ded<   y)ÚUsageMetadataz�Usage metadata for a message, such as token counts.

    This is a standard representation of token usage that is consistent across models.
    r;   rÿ   r  ré   zNotRequired[InputTokenDetails]r  zNotRequired[OutputTokenDetails]r	  zNotRequired[float]r  r  rî   zNotRequired[InputCostDetails]r  zNotRequired[OutputCostDetails]r  Nr#   r)   r*   r+   rØ  rØ  ©  sk   … ñð
 ÓØJØÓØPØÓØAØ7Ó7ðð :Ó9ðð #Ó"Ø'Ø#Ó#Ø(Ø"Ó"Ø'Ø5Ó5Ø/Ø7Ó7Ø0r*   rØ  c                  óˆ   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 ded	<   	 d
ed<   	 d
ed<   	 d
ed<   	 ded<   	 ded<   y)ÚExtractedUsageMetadataz�Usage metadata dictionary extracted from a run.

    Should be the same as UsageMetadata, but does not require all
    keys to be present.
    r;   rÿ   r  ré   rË  r  rÑ  r	  rC  r  r  rî   rÔ  r  rÖ  r  Nr#   r)   r*   r+   rÚ  rÚ  Ë  sc   … ñð ÓØ3ØÓØ3ØÓØ*Ø*Ó*Ø*Ø,Ó,Ø+ØÓØ'ØÓØ(ØÓØ'Ø(Ó(Ø/Ø*Ó*Ø0r*   rÚ  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)	ÚUpsertExamplesResponsezCResponse object returned from the upsert_examples_multipart method.r;   Úcountr“   Úexample_idszNotRequired[str | None]rÀ   Nr#   r)   r*   r+   rÜ  rÜ  è  s   … ÙMàƒJØ4ØÓØ5Ø"Ó"Øcr*   rÜ  c                  ó.   — e Zd ZU dZ ee¬«      Zded<   y)ÚExampleWithRunszExample with runs.rW   z	list[Run]ÚrunsN)r$   r%   r&   r'   r   r–   rá  r(   r)   r*   r+   rà  rà  ó  s   … Ùá¨DÔ1€Dˆ)Ó1à"r*   rà  c                  ó¸   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded	<   	 d
ed<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   y)ÚExperimentRunStatsz!Run statistics for an experiment.r°   r_  r`  ra  rb  ré   rç   rè   rx   rc  re  rf  rí   rî   rï   rð   rg  rh  rÜ   ri  Nr#   r)   r*   r+   rã  rã  û  sƒ   … Ù+àÓØ,Ø$Ó$Ø?Ø$Ó$Ø6ØÓØ=Ø Ó ØDØ$Ó$ØHØ+Ó+Ø8Ø.Ó.Ø-Ø!Ó!ØMØ"Ó"ØGØ&Ó&ØCØ(Ó(ØGØ(Ó(Ø>ØÓØ)r*   rã  c                  ó4   — e Zd ZU dZded<   	 ded<   	 ded<   y)	ÚExperimentResultsz´Results container for experiment data with stats and examples.

    Breaking change in v0.4.32:
        The 'stats' field has been split into 'feedback_stats' and 'run_stats'.
    r•   rã   rã  Ú	run_statszIterator[ExampleWithRuns]Úexamples_with_runsNr#   r)   r*   r+   rå  rå    s!   … ñð ÓØ1Ø!Ó!Ø6Ø1Ô1r*   rå  c                  óv   — e Zd ZU dZded<   ded<   ded<   dZded	<   ded
<   ded<   ded<   edd„«       Zdd„Zy)ÚInsightsReportzHAn Insights Report created by the Insights Agent over a tracing project.z
UUID | strrO   r   r£   ræ   Nz
str | NonerÊ   Ú
project_idÚhost_urlrR  c           	     ó¢   — | j                   › dt        | j                  «      › dt        | j                  «      › dt        | j                  «      › �S )z1URL to view this Insights Report in LangSmith UI.r‚   rX  z?tab=4&clusterJobId=)rë  r   rR  rê  rO   r8   s    r+   ÚlinkzInsightsReport.link5  sH   € ð —-‘-� ¤C¨¯©Ó$7Ð#8¸ÄSÈÏÉÓEYÐDZÐZnÔorÐsw×szÑszÓo{Ðn|Ð}Ð}r*   c                ó<   — d| j                   › d| j                  › d�S )Nz	<a href="z2", target="_blank" rel="noopener">InsightsReport('z')</a>)rí  r£   r8   s    r+   Ú_repr_html_zInsightsReport._repr_html_:  s%   € Ø˜4Ÿ9™9˜+Ð%XÐY]×YbÑYbÐXcÐcjÐkÐkr*   ro  )	r$   r%   r&   r'   r(   rÊ   rŒ   rí  rï  r)   r*   r+   ré  ré  *  sI   … ÙRàƒNØ
ƒIØƒKØ€Eˆ:ÓØÓØƒMØÓàò~ó ð~ôlr*   ré  c                  ó0   — e Zd ZU dZded<   ded<   ded<   y)	ÚFeedbackFormulaWeightedVariablezBA feedback key and weight used when calculating feedback formulas.zLiteral['weighted_key']Ú	part_typerC  Úweightz#Annotated[str, Field(min_length=1)]r6  Nr#   r)   r*   r+   rñ  rñ  >  s   … ÙLà&Ó&ØƒMØ	,Ô,r*   rñ  c                  ób   — e Zd ZU dZdZded<   dZded<   ded<   ded	<    ed
dd¬«      Zded<   y)ÚFeedbackFormulaCreatez,Schema used for creating a feedback formula.NrN   r@   rß   r   ru  úLiteral['sum', 'avg']Úaggregation_type.é   é2   ©Ú
min_lengthÚ
max_lengthú%list[FeedbackFormulaWeightedVariable]Úformula_parts)	r$   r%   r&   r'   r@   r(   rß   r   rþ  r)   r*   r+   rõ  rõ  F  s>   … Ù6à!%€J�Ó%Ø!%€J�Ó%ØÓØ+Ó+Ù;@Ø˜ bô<€MÐ8ô r*   rõ  c                  óF   — e Zd ZU dZded<   ded<    eddd¬	«      Zd
ed<   y)ÚFeedbackFormulaUpdatez,Schema used for updating a feedback formula.r   ru  rö  r÷  .rø  rù  rú  rý  rþ  N)r$   r%   r&   r'   r(   r   rþ  r)   r*   r+   r   r   R  s*   … Ù6àÓØ+Ó+Ù;@Ø˜ bô<€MÐ8ô r*   r   c                  ó0   — e Zd ZU dZded<   ded<   ded<   y)ÚFeedbackFormulaz%Schema for getting feedback formulas.r   rO   r   rY   ry   Nr#   r)   r*   r+   r  r  \  s   … Ù/àƒHØÓØÔr*   r  c                  óP   — e Zd ZU dZded<   	 ded<   	 ded<   	 ded	<   	 d
Zded<   y
)ÚFeedbackConfigSchemaa  Represents a feedback configuration for a tenant's feedback key.

    Feedback configurations define how feedback with a given key should be
    interpreted, including its type (continuous, categorical, or freeform),
    scoring bounds, and valid categories.
    r   ru  rF  rL  r   rR  r   ry   Nr÷   Úis_lower_score_better)r$   r%   r&   r'   r(   r  r)   r*   r+   r  r  d  s:   … ñð ÓØAØ#Ó#ØHØƒOØEØÓØ=Ø,0Ð˜>Ó0ØKr*   r  )sr'   Ú
__future__r   Úcollections.abcr   r   r   r   Údecimalr   Úenumr	   Úpathlibr
   Útypingr   r   r   r   r   r   r   Úuuidr   Úpydanticr   r   r   r   r   r   r   Útyping_extensionsr   r   r   r7  r•   r   r9  r   Útupler=   r  r-   r?   rK   Ú_AttachmentLikerM   ÚExampleUploadWithAttachmentsrm   ro   rt   rŽ   r�   r˜   ÚExampleUpdateWithAttachmentsr�   r¢   ÚDatasetTransformationTyper«   r¯   r¾   rÂ   rÄ   rÞ   r  r  r   r$  r)  r-  r0  r4  rB  rF  rK  rN  rP  r^  rk  rq  rt  rz  r  r‚  rŠ  Úmodel_rebuildr�  r”  r—  rš  rŸ  r¤  r¨  r¯  r·  rÆ  rÉ  rË  rÑ  rÔ  rÖ  rØ  rÚ  rÜ  rà  rã  rå  ré  rñ  rõ  r   r  r  r)   r*   r+   ú<module>r     s‚  ðÙ $å "å $ß 2Ñ 2Ý Ý Ý ÷÷ ñ õ ÷÷ ñ ÷ >Ñ =à�:˜y¨+°tÐ;Ñ<€
Ø�4˜˜j¨)°[À$ÐFÑG€
ô�ô ð* �3˜˜e C¨ JÑ/°¸UÀ3ÈÀ9Ñ=MÐMÑNÐNÑO€ðð ô�8ó ó ðô I�)ô Iô�iô ð
 Ø�  s¨E zÑ!2°E¸#¸t¸)Ñ4DÐDñ€ô
!�Iô !ð&  -Ð ô =ô ô�Yô ô'bˆkô 'bôT�Kô ô˜Iô ô!�Iô !ð&  -Ð ôˆs�Dô ô+�)ô +ð $ðñÐ ô?˜I¨Uõ ?ô-ˆkô -ô`�Yô òôT<ˆiô T<ôn,ˆ'ô ,ôD	�#�tô 	ô�) 5õ ô:4 ô 4ô=˜ô =ô"!Ð*ô !ô%Ð,ô %ô#˜ô #ô&+�9ô &+ôRO�y¨õ Oô@�Y eõ @ô!�\ô !ô	3ˆ|ô 	3ô3"�Iô 3"ôl%*˜-ô %*ðP ô
;�hó 
;ó ð
;ô)˜¨%õ )ôO 	°õ Oô$E�iô Eô"< ô <ô9˜	¨õ 9ô"	4�Iô 	4ð × Ñ Ô ô	(˜	ô 	(ô,˜)ô ,ô-ˆy õ -ô�Y eõ ô=�iô =ô!&˜Iô !&ôH �9ô  ô(2˜ô (2ôV.;ˆYô .;ôb'˜)ô 'ô
�c˜4ô 
ô˜	¨õ ô.˜¨%õ ô �y¨õ ô*˜	¨õ ô 1�Iô 1ôD1˜Y¨eõ 1ô:d˜Yô dô#�gô #ô*˜ô *ôB2˜	ô 2ôl�Yô lô(- iô -ô	˜Iô 	ô˜Iô ôÐ+ô ôL˜9õ Lr*   