
    i~}                        S SK r S SKrS SKJr  SSKJr  SSKJrJ	r	  SSK
Jr  SSKJr  SSKJr  SS	KJr  SS
KJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr   S SKr\R>                  RA                  S5      (       a  \!eS SK"J#r  \ RH                  " \ RJ                  S5      r& " S S5      r' " S S5      r(g! \! a    S SKr N>f = f)    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)jsonable_encoder)remove_none_from_dict)UnprocessableEntityError)CompositeRetrievalMode)CompositeRetrievalResult)HttpValidationError)ReRankConfig)	Retriever)RetrieverCreate)RetrieverPipelinez1..c                      \ rS rSrS\4S jrSSSS.S\R                  \   S\R                  \   S\R                  \   S	\R                  \
   4S
 jjrSSS.S\R                  \   S\R                  \   S\S	\
4S jjrSSS.S\R                  \   S\R                  \   S\S	\
4S jjrSSS.S\S\R                  \   S\R                  \   S	\
4S jjr\\S.S\S\R                  \   S\R                  \R                  \      S	\
4S jjrS\S	S4S jrSS\\\S.S\S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\S	\4S jjrSS\\\\S.S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\S\R                  \R                  \      S	\4S jjrSrg)RetrieversClient    client_wrapperc                    Xl         g N_client_wrapperselfr   s     a/home/james-whalen/.local/lib/python3.13/site-packages/llama_cloud/resources/retrievers/client.py__init__RetrieversClient.__init__!       -    Nname
project_idorganization_idr"   r#   r$   returnc          
         U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XUS.5      U R                   R                  5       SS9nSUR                  s=::  a  S:  a=  O  O:[        R                  " [        R                  [           UR                  5       5      $ UR                  S	:X  a2  [!        [        R                  " ["        UR                  5       5      5      e UR                  5       n['        UR                  US
9e! [$         a    ['        UR                  UR(                  S
9ef = f)a(  
List Retrievers for a project.

Parameters:
    - name: typing.Optional[str].

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].
---
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.list_retrievers()
GET/api/v1/retrieversr!   <   paramsheaderstimeout   ,    status_codebodyr   httpx_clientrequesturllibparseurljoinget_base_urlr	   get_headersr3   pydanticparse_obj_astypingListr   jsonr
   r   r   r   textr   r"   r#   r$   	_response_response_jsons         r   list_retrievers RetrieversClient.list_retrievers$   s1   0 ((55==LL  D$8$8$E$E$G#H!JL_`($et)uv((446 > 
	 )''-#-((Y)?AQRR  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   E   )E)r#   r$   r7   c          	         U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XS.5      [        U5      U R                   R                  5       SS9nSUR                  s=::  a  S:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S	:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US
9e! ["         a    [%        UR                  UR&                  S
9ef = f)a  
Create a new Retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - request: RetrieverCreate.
---
from llama_cloud import RetrieverCreate
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.create_retriever(
    request=RetrieverCreate(
        name="string",
    ),
)
POSTr(   r)   rH   r*   r,   rA   r-   r.   r/   r0   r1   r2   r   r6   r7   r8   r9   r:   r;   r	   r   r<   r3   r=   r>   r   rA   r
   r   r   r   rB   r   r#   r$   r7   rD   rE   s         r   create_retriever!RetrieversClient.create_retrieverM   s-   : ((55==LL  D$8$8$E$E$G#H!JL_`(
)gh!'*((446 > 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	S   D8 8)E!c          	         U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XS.5      [        U5      U R                   R                  5       SS9nSUR                  s=::  a  S:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S	:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US
9e! ["         a    [%        UR                  UR&                  S
9ef = f)a  
Upsert a new Retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - request: RetrieverCreate.
---
from llama_cloud import RetrieverCreate
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.upsert_retriever(
    request=RetrieverCreate(
        name="string",
    ),
)
PUTr(   r)   rH   r*   rK   r/   r0   r1   r2   rL   rM   s         r   upsert_retriever!RetrieversClient.upsert_retriever|   s-   : ((55==LL  D$8$8$E$E$G#H!JL_`(
)gh!'*((446 > 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   retriever_idc          	         U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3SU 35      [        X#S.5      U R                   R                  5       SS9nSUR                  s=::  a  S:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S	:X  a2  [        [        R                  " [        UR                  5       5      5      e UR                  5       n[#        UR                  US
9e! [          a    [#        UR                  UR$                  S
9ef = f)a1  
Get a Retriever by ID.

Parameters:
    - retriever_id: str.

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].
---
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.get_retriever(
    retriever_id="string",
)
r'   r(   api/v1/retrievers/rH   r*   r+   r/   r0   r1   r2   r   r6   r7   r8   r9   r:   r;   r	   r<   r3   r=   r>   r   rA   r
   r   r   r   rB   r   rU   r#   r$   rD   rE   s         r   get_retrieverRetrieversClient.get_retriever   s.   4 ((55==LL  D$8$8$E$E$G#H!JN`am`nLop(
)gh((446 > 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   D1 1)Er"   	pipelinesr]   c                   0 nU[         La  X$S'   U[         La  X4S'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3SU 35      [        U5      U R                  R                  5       SS9nSUR                  s=::  a  S	:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S
:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US9e! ["         a    [%        UR                  UR&                  S9ef = f)aJ  
Update an existing Retriever.

Parameters:
    - retriever_id: str.

    - name: typing.Optional[str].

    - pipelines: typing.Optional[typing.List[RetrieverPipeline]].
---
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.update_retriever(
    retriever_id="string",
)
r"   r]   rR   r(   rW   r*   rA   r-   r.   r/   r0   r1   r2   OMITr   r6   r7   r8   r9   r:   r;   r   r<   r3   r=   r>   r   rA   r
   r   r   r   rB   r   rU   r"   r]   _requestrD   rE   s          r   update_retriever!RetrieversClient.update_retriever   sP   4 24t#VD $-[!((55==LL  D$8$8$E$E$G#H!JN`am`nLop!(+((446 > 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   'E )E4c                 P   U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3SU 35      U R                   R                  5       SS9nSUR                  s=::  a  S:  a   g  UR                  S	:X  a2  [        [        R                  " [        UR                  5       5      5      e UR                  5       n[        UR                  US
9e! [         a    [        UR                  UR                   S
9ef = f)z
Delete a Retriever by ID.

Parameters:
    - retriever_id: str.
---
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.delete_retriever(
    retriever_id="string",
)
DELETEr(   rW   r*   r-   r.   r/   r0   Nr1   r2   r   r6   r7   r8   r9   r:   r;   r<   r3   r
   r=   r>   r   rA   r   r   rB   r   rU   rD   rE   s       r   delete_retriever!RetrieversClient.delete_retriever  s     ((55==LL  D$8$8$E$E$G#H!JN`am`nLop((446	 > 
	 )''-#- .  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   C< <)D%r#   r$   modererank_top_nrerank_configrn   ro   rp   queryc          	      &   SU0nU[         La  XHS'   U[         La  XXS'   U[         La  XhS'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3SU S35      [        X#S	.5      [        U5      U R                  R                  5       S
S9n	SU	R                  s=::  a  S:  a,  O  O)[        R                  " [        U	R                  5       5      $ U	R                  S:X  a2  [!        [        R                  " ["        U	R                  5       5      5      e U	R                  5       n
['        U	R                  U
S9e! [$         a    ['        U	R                  U	R(                  S9ef = f)a*  
Retrieve data using a Retriever.

Parameters:
    - retriever_id: str.

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - mode: typing.Optional[CompositeRetrievalMode]. The mode of composite retrieval.

    - rerank_top_n: typing.Optional[int].

    - rerank_config: typing.Optional[ReRankConfig]. The rerank configuration for composite retrieval.

    - query: str. The query to retrieve against.
---
from llama_cloud import CompositeRetrievalMode, ReRankConfig, ReRankerType
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.retrieve(
    retriever_id="string",
    mode=CompositeRetrievalMode.ROUTING,
    rerank_config=ReRankConfig(
        type=ReRankerType.SYSTEM_DEFAULT,
    ),
    query="string",
)
rq   rn   ro   rp   rJ   r(   rW   	/retrieverH   r*   rK   r/   r0   r1   r2   ra   r   r6   r7   r8   r9   r:   r;   r	   r   r<   r3   r=   r>   r   rA   r
   r   r   r   rB   r   rU   r#   r$   rn   ro   rp   rq   rc   rD   rE   s              r   retrieveRetrieversClient.retrieve&  sy   X 3:51At#Vt#'3^$$(5_%((55==LL  ''4467q9=OP\~]f;g )
)gh!(+((446 > 	
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   E' ')Fr#   r$   rn   ro   rp   r]   c          	      8   SU0nU[         La  X8S'   U[         La  XHS'   U[         La  XXS'   U[         La  XxS'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3S5      [        XS	.5      [        U5      U R                  R                  5       S
S9n	SU	R                  s=::  a  S:  a,  O  O)[        R                  " [        U	R                  5       5      $ U	R                  S:X  a2  [!        [        R                  " ["        U	R                  5       5      5      e U	R                  5       n
['        U	R                  U
S9e! [$         a    ['        U	R                  U	R(                  S9ef = f)a  
Retrieve data using specified pipelines without creating a persistent retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - mode: typing.Optional[CompositeRetrievalMode]. The mode of composite retrieval.

    - rerank_top_n: typing.Optional[int].

    - rerank_config: typing.Optional[ReRankConfig]. The rerank configuration for composite retrieval.

    - query: str. The query to retrieve against.

    - pipelines: typing.Optional[typing.List[RetrieverPipeline]]. The pipelines to use for retrieval.
---
from llama_cloud import CompositeRetrievalMode, ReRankConfig, ReRankerType
from llama_cloud.client import LlamaCloud

client = LlamaCloud(
    token="YOUR_TOKEN",
)
client.retrievers.direct_retrieve(
    mode=CompositeRetrievalMode.ROUTING,
    rerank_config=ReRankConfig(
        type=ReRankerType.SYSTEM_DEFAULT,
    ),
    query="string",
)
rq   rn   ro   rp   r]   rJ   r(   api/v1/retrievers/retrieverH   r*   rK   r/   r0   r1   r2   rt   r   r#   r$   rn   ro   rp   rq   r]   rc   rD   rE   s              r   direct_retrieve RetrieversClient.direct_retrievem  sy   V 3:51At#Vt#'3^$$(5_%D $-[!((55==LL  D$8$8$E$E$G#H!JLhi(
)gh!(+((446 > 
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   E0 0)Fr   )__name__
__module____qualname____firstlineno__r   r   r?   Optionalstrr@   r   rF   r   rN   rS   rZ   ra   r   rd   rk   r   intr   r   rv   r|   __static_attributes__ r    r   r   r       s*   .*; . &*+/04'O ooc"'O OOC(	'O
  -'O 
Y	'OX ,004	-O OOC(-O  -	-O
 !-O 
-Od ,004	-O OOC(-O  -	-O
 !-O 
-Of ,004)O)O OOC(	)O
  -)O 
)O^ &*EI.O.O ooc"	.O
 ??6;;/@#AB.O 
.O`OS OT OH ,0048<-17;EOEO OOC(	EO
  -EO oo45EO ooc*EO |4EO EO 
"EOT ,0048<-17;EIDO OOC(DO  -	DO
 oo45DO ooc*DO |4DO DO ??6;;/@#ABDO 
"DO DOr    r   c                      \ rS rSrS\4S jrSSSS.S\R                  \   S\R                  \   S\R                  \   S	\R                  \
   4S
 jjrSSS.S\R                  \   S\R                  \   S\S	\
4S jjrSSS.S\R                  \   S\R                  \   S\S	\
4S jjrSSS.S\S\R                  \   S\R                  \   S	\
4S jjr\\S.S\S\R                  \   S\R                  \R                  \      S	\
4S jjrS\S	S4S jrSS\\\S.S\S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\S	\4S jjrSS\\\\S.S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\R                  \   S\S\R                  \R                  \      S	\4S jjrSrg)AsyncRetrieversClienti  r   c                    Xl         g r   r   r   s     r   r   AsyncRetrieversClient.__init__  r   r    Nr!   r"   r#   r$   r%   c          
        #    U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XUS.5      U R                   R                  5       SS9I Sh  vN nSUR                  s=::  a  S	:  a=  O  O:[        R                  " [        R                  [           UR                  5       5      $ UR                  S
:X  a2  [!        [        R                  " ["        UR                  5       5      5      e UR                  5       n['        UR                  US9e N! [$         a    ['        UR                  UR(                  S9ef = f7f)a8  
List Retrievers for a project.

Parameters:
    - name: typing.Optional[str].

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].
---
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.list_retrievers()
r'   r(   r)   r!   r*   r+   Nr/   r0   r1   r2   r5   rC   s         r   rF   %AsyncRetrieversClient.list_retrievers  s>    0 ..;;CCLL  D$8$8$E$E$G#H!JL_`($et)uv((446 D 
 
	 )''-#-((Y)?AQRR  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   BE8
E
BE8&E 6E8)E55E8rH   r7   c          	        #    U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XS.5      [        U5      U R                   R                  5       SS9I Sh  vN nSUR                  s=::  a  S	:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S
:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US9e N! ["         a    [%        UR                  UR&                  S9ef = f7f)a  
Create a new Retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - request: RetrieverCreate.
---
from llama_cloud import RetrieverCreate
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.create_retriever(
    request=RetrieverCreate(
        name="string",
    ),
)
rJ   r(   r)   rH   r*   rK   Nr/   r0   r1   r2   rL   rM   s         r   rN   &AsyncRetrieversClient.create_retriever  s:    : ..;;CCLL  D$8$8$E$E$G#H!JL_`(
)gh!'*((446 D 
 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	S+   BE0EB	E0E .E0)E--E0c          	        #    U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3S5      [        XS.5      [        U5      U R                   R                  5       SS9I Sh  vN nSUR                  s=::  a  S	:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S
:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US9e N! ["         a    [%        UR                  UR&                  S9ef = f7f)a  
Upsert a new Retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - request: RetrieverCreate.
---
from llama_cloud import RetrieverCreate
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.upsert_retriever(
    request=RetrieverCreate(
        name="string",
    ),
)
rR   r(   r)   rH   r*   rK   Nr/   r0   r1   r2   rL   rM   s         r   rS   &AsyncRetrieversClient.upsert_retriever  s:    : ..;;CCLL  D$8$8$E$E$G#H!JL_`(
)gh!'*((446 D 
 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Sr   rU   c          	        #    U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3SU 35      [        X#S.5      U R                   R                  5       SS9I Sh  vN nSUR                  s=::  a  S	:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S
:X  a2  [        [        R                  " [        UR                  5       5      5      e UR                  5       n[#        UR                  US9e N! [          a    [#        UR                  UR$                  S9ef = f7f)aA  
Get a Retriever by ID.

Parameters:
    - retriever_id: str.

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].
---
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.get_retriever(
    retriever_id="string",
)
r'   r(   rW   rH   r*   r+   Nr/   r0   r1   r2   rX   rY   s         r   rZ   #AsyncRetrieversClient.get_retriever?  s;    4 ..;;CCLL  D$8$8$E$E$G#H!JN`am`nLop(
)gh((446 D 
 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   B
E)D;B	E)D= 'E)=)E&&E)r\   r]   c                
  #    0 nU[         La  X$S'   U[         La  X4S'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3SU 35      [        U5      U R                  R                  5       SS9I Sh  vN nS	UR                  s=::  a  S
:  a,  O  O)[        R                  " [        UR                  5       5      $ UR                  S:X  a2  [        [        R                  " [         UR                  5       5      5      e UR                  5       n[%        UR                  US9e N! ["         a    [%        UR                  UR&                  S9ef = f7f)aZ  
Update an existing Retriever.

Parameters:
    - retriever_id: str.

    - name: typing.Optional[str].

    - pipelines: typing.Optional[typing.List[RetrieverPipeline]].
---
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.update_retriever(
    retriever_id="string",
)
r"   r]   rR   r(   rW   r*   r_   Nr/   r0   r1   r2   r`   rb   s          r   rd   &AsyncRetrieversClient.update_retrieverj  s]    4 24t#VD $-[!..;;CCLL  D$8$8$E$E$G#H!JN`am`nLop!(+((446 D 
 
	 )''-#-((INN4DEE  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   B$F&E'B	F1E F)F  Fc                 l  #    U R                   R                  R                  S[        R                  R                  U R                   R                  5        S3SU 35      U R                   R                  5       SS9I Sh  vN nSUR                  s=::  a  S:  a   g  UR                  S	:X  a2  [        [        R                  " [        UR                  5       5      5      e UR                  5       n[        UR                  US
9e N! [         a    [        UR                  UR                   S
9ef = f7f)z
Delete a Retriever by ID.

Parameters:
    - retriever_id: str.
---
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.delete_retriever(
    retriever_id="string",
)
rg   r(   rW   r*   rh   Nr/   r0   r1   r2   ri   rj   s       r   rk   &AsyncRetrieversClient.delete_retriever  s      ..;;CCLL  D$8$8$E$E$G#H!JN`am`nLop((446	 D 
 
	 )''-#- .  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   A>D4 DA D4"D 2D4)D11D4rm   rn   ro   rp   rq   c          	      B  #    SU0nU[         La  XHS'   U[         La  XXS'   U[         La  XhS'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3SU S35      [        X#S	.5      [        U5      U R                  R                  5       S
S9I Sh  vN n	SU	R                  s=::  a  S:  a,  O  O)[        R                  " [        U	R                  5       5      $ U	R                  S:X  a2  [!        [        R                  " ["        U	R                  5       5      5      e U	R                  5       n
['        U	R                  U
S9e N! [$         a    ['        U	R                  U	R(                  S9ef = f7f)a:  
Retrieve data using a Retriever.

Parameters:
    - retriever_id: str.

    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - mode: typing.Optional[CompositeRetrievalMode]. The mode of composite retrieval.

    - rerank_top_n: typing.Optional[int].

    - rerank_config: typing.Optional[ReRankConfig]. The rerank configuration for composite retrieval.

    - query: str. The query to retrieve against.
---
from llama_cloud import CompositeRetrievalMode, ReRankConfig, ReRankerType
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.retrieve(
    retriever_id="string",
    mode=CompositeRetrievalMode.ROUTING,
    rerank_config=ReRankConfig(
        type=ReRankerType.SYSTEM_DEFAULT,
    ),
    query="string",
)
rq   rn   ro   rp   rJ   r(   rW   rs   rH   r*   rK   Nr/   r0   r1   r2   rt   ru   s              r   rv   AsyncRetrieversClient.retrieve  s    X 3:51At#Vt#'3^$$(5_%..;;CCLL  ''4467q9=OP\~]f;g )
)gh!(+((446 D 	
 	
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN%	
   	Sy'<'<9>>RR	Ss+   C FE1B	FE3 F3)FFrx   c          	      T  #    SU0nU[         La  X8S'   U[         La  XHS'   U[         La  XXS'   U[         La  XxS'   U R                  R                  R                  S[        R
                  R                  U R                  R                  5        S3S5      [        XS	.5      [        U5      U R                  R                  5       S
S9I Sh  vN n	SU	R                  s=::  a  S:  a,  O  O)[        R                  " [        U	R                  5       5      $ U	R                  S:X  a2  [!        [        R                  " ["        U	R                  5       5      5      e U	R                  5       n
['        U	R                  U
S9e N! [$         a    ['        U	R                  U	R(                  S9ef = f7f)a  
Retrieve data using specified pipelines without creating a persistent retriever.

Parameters:
    - project_id: typing.Optional[str].

    - organization_id: typing.Optional[str].

    - mode: typing.Optional[CompositeRetrievalMode]. The mode of composite retrieval.

    - rerank_top_n: typing.Optional[int].

    - rerank_config: typing.Optional[ReRankConfig]. The rerank configuration for composite retrieval.

    - query: str. The query to retrieve against.

    - pipelines: typing.Optional[typing.List[RetrieverPipeline]]. The pipelines to use for retrieval.
---
from llama_cloud import CompositeRetrievalMode, ReRankConfig, ReRankerType
from llama_cloud.client import AsyncLlamaCloud

client = AsyncLlamaCloud(
    token="YOUR_TOKEN",
)
await client.retrievers.direct_retrieve(
    mode=CompositeRetrievalMode.ROUTING,
    rerank_config=ReRankConfig(
        type=ReRankerType.SYSTEM_DEFAULT,
    ),
    query="string",
)
rq   rn   ro   rp   r]   rJ   r(   rz   rH   r*   rK   Nr/   r0   r1   r2   rt   r{   s              r   r|   %AsyncRetrieversClient.direct_retrieve  s    V 3:51At#Vt#'3^$$(5_%D $-[!..;;CCLL  D$8$8$E$E$G#H!JLhi(
)gh!(+((446 D 
 
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Ss+   C	F(E:B	F(E< &F(<)F%%F(r   )r~   r   r   r   r   r   r?   r   r   r@   r   rF   r   rN   rS   rZ   ra   r   rd   rk   r   r   r   r   rv   r|   r   r   r    r   r   r     s*   .*< . &*+/04'O ooc"'O OOC(	'O
  -'O 
Y	'OX ,004	-O OOC(-O  -	-O
 !-O 
-Od ,004	-O OOC(-O  -	-O
 !-O 
-Of ,004)O)O OOC(	)O
  -)O 
)O^ &*EI.O.O ooc"	.O
 ??6;;/@#AB.O 
.O`O3 O4 OH ,0048<-17;EOEO OOC(	EO
  -EO oo45EO ooc*EO |4EO EO 
"EOT ,0048<-17;EIDO OOC(DO  -	DO
 oo45DO ooc*DO |4DO DO ??6;;/@#ABDO 
"DO DOr    r   ))r?   urllib.parser8   json.decoderr   core.api_errorr   core.client_wrapperr   r   core.jsonable_encoderr   core.remove_none_from_dictr	   !errors.unprocessable_entity_errorr
   types.composite_retrieval_moder    types.composite_retrieval_resultr   types.http_validation_errorr   types.re_rank_configr   types.retrieverr   types.retriever_creater   types.retriever_pipeliner   r=   __version__
startswithImportErrorpydantic.v1v1castAnyra   r   r   r   r    r   <module>r      s      ( & H 5 ? I D H > 0 ( 5 9&&t,,"
 {{6::s#QO QOhQO QOw  s   ,B8 8
CC