
    g                         d dl mZmZmZmZmZmZ ddlmZ  edde	fg      Z
de
_         G d de      Z G d	 d
e      Zy)    )AnyDictIteratorList
NamedTupleOptional   )CohereObjectDocumenttextz_
Returned by co.rerank,
dict which always contains text but can also contain aribitrary fields
c            	       N     e Zd Z	 	 	 ddeeef   dededdf fdZdefdZ	 xZ
S )	RerankResultNdocumentindexrelevance_scorereturnc                 N    t        |   |i | || _        || _        || _        y N)super__init__r   r   r   )selfr   r   r   argskwargs	__class__s         a/var/www/openai/venv/lib/python3.12/site-packages/cohere/manually_maintained/cohere_aws/rerank.pyr   zRerankResult.__init__   s-    
 	$)&) 
.    c                     | j                   }| j                  }| j                  	d| d| dS d| j                  v r| j                  d   }d| d| d| dS d| j                   d| d| dS )NzRerankResult<index: z, relevance_score: >r   zRerankResult<text: z	, index: zRerankResult<document: )r   r   r   )r   scorer   r   s       r   __repr__zRerankResult.__repr__   s    $$

== )%0CE7!LLt}}$==(D(iw>QRWQXXYZZ,T]]O9UGK^_d^eefggr   )NNN)__name__
__module____qualname__r   strr   intfloatr   r    __classcell__r   s   @r   r   r      sM     -1"*./S>// #(/ &*	/	h# 	hr   r   c                        e Zd Z	 d
deeeef      ddf fdZdeeef   dee	   fdZ
defdZdefdZdefdZde	fd	Z xZS )	RerankingNresponser   c                 X    t        |   di | |J | j                  |      | _        y )N )r   r   _resultsresults)r   r+   r   r   s      r   r   zReranking.__init__&   s1     	"6"###}}X.r   c           	          g }|d   D ]\  }d|j                         v r&|j                  t        |d   |d   |d                ;|j                  t        |d   |d                ^ |S )Nr/   r   r   r   )r   r   )keysappendr   )r   r+   r/   ress       r   r.   zReranking._results-   su    I&CSXXZ' Z#g,DU@VWY  s7|SIZE[\^ ' r   c                 ,    t        | j                        S r   )r$   r/   r   s    r   __str__zReranking.__str__8   s    4<<  r   c                 6    | j                   j                         S r   )r/   r    r5   s    r   r    zReranking.__repr__;   s    ||$$&&r   c                 ,    t        | j                        S r   )iterr/   r5   s    r   __iter__zReranking.__iter__>   s    DLL!!r   c                      | j                   |   S r   )r/   )r   r   s     r   __getitem__zReranking.__getitem__A   s    ||E""r   r   )r!   r"   r#   r   r   r$   r   r   r   r   r.   r6   r    r   r:   r<   r'   r(   s   @r   r*   r*   $   sz     7;/#DcN3/"/	c3h 	D4F 	! !'# '"( "#L #r   r*   N)typingr   r   r   r   r   r   r+   r
   r$   RerankDocument__doc__r   r*   r-   r   r   <module>r@      sD    B B "J&#8 h< h0# #r   