
    ~iI                       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 d dlZddlmZ ddlmZmZmZmZmZ dd	lmZmZmZmZ dd
lmZ ddlmZm Z  ddl!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/m0Z1 ddl2m3Z3m4Z4 ddl5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z> ddl?m@Z@ ddlAmBZB ddlCmDZD ddgZE G d de          ZF G d de           ZG G d d          ZH G d  d!          ZI G d" d#          ZJ G d$ d%          ZKdS )&    )annotations)DictListTypeUnionIterableOptionalcast)partial)LiteralN   )_legacy_response)	NOT_GIVENBodyQueryHeadersNotGiven)maybe_transformasync_maybe_transformwith_sts_tokenasync_with_sts_token)cached_property)SyncAPIResourceAsyncAPIResource)to_streamed_response_wrapper"async_to_streamed_response_wrapper)Stream)completion_create_params)make_request_options)ResponseFormatTvalidate_input_toolsparse_chat_completiontype_to_response_format_param)ChatCompletionStreamManager AsyncChatCompletionStreamManager)ChatCompletion)ChatCompletionChunk)ParsedChatCompletion)ChatCompletionToolParam)ChatCompletionMessageParam) ChatCompletionStreamOptionsParam)#ChatCompletionToolChoiceOptionParam)ReasoningEffortCompletionsAsyncCompletionsc                      e Zd Zed8d            Zed9d            Zeeeeeeeeeeeeeeeeeeedddedd:d4            Zeeeeeeeeeeeeeeeeeedddedd;d7Z	dS )<r.   returnCompletionsWithRawResponsec                     t          |           S z
        This property can be used as a prefix for any HTTP method call to return the
        the raw response object instead of the parsed content.
        )r2   selfs    /root/.openclaw/workspace/.venvs/ark-sdk/lib/python3.11/site-packages/volcenginesdkarkruntime/resources/beta/chat/completions.pywith_raw_responsezCompletions.with_raw_responseA   s     *$///     CompletionsWithStreamingResponsec                     t          |           S ze
        An alternative to `.with_raw_response` that doesn't eagerly read the response body.
        )r:   r5   s    r7   with_streaming_responsez#Completions.with_streaming_responseI   s    
 0555r9   Nresponse_formatfrequency_penalty
logit_biaslogprobs
max_tokensnparallel_tool_callspresence_penaltyservice_tierstopstream_optionstemperaturetool_choicetoolstop_logprobstop_puserreasoning_effortextra_headersextra_query
extra_bodytimeoutmessages$Iterable[ChatCompletionMessageParam]modelstrr?    type[ResponseFormatT] | NotGivenr@   Optional[float] | NotGivenrA   #Optional[Dict[str, int]] | NotGivenrB   Optional[bool] | NotGivenrC   Optional[int] | NotGivenrD   rE   bool | NotGivenrF   rG   /Optional[Literal['auto', 'default']] | NotGivenrH   0Union[Optional[str], List[str], None] | NotGivenrI   5Optional[ChatCompletionStreamOptionsParam] | NotGivenrJ   rK   .ChatCompletionToolChoiceOptionParam | NotGivenrL   ,Iterable[ChatCompletionToolParam] | NotGivenrM   rN   rO   str | NotGivenrP   $Optional[ReasoningEffort] | NotGivenrQ   Headers | NonerR   Query | NonerS   Body | NonerT   'float | httpx.Timeout | None | NotGiven%ParsedChatCompletion[ResponseFormatT]c                  t                     ddi|pi }dfd}|                     dt          i d	|d
|d|d|d|d|d|d|	d|
dt                    d|d|ddd|d|d|d||||dt          j                  t          |||||          t          t          t          t                            t                    d          S )NX-Stainless-Helper-Methodbeta.chat.completions.parseraw_completionr&   r1   rj   c                (    t          |           S N)r?   chat_completioninput_tools_parse_chat_completionrn   r?   rL   s    r7   parserz!Completions.parse.<locals>.parserw   %     * / .!   r9   /chat/completionsrU   rW   r@   rA   rB   rC   rD   rE   rF   r?   rG   rH   streamFrI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   post_parserbodyoptionscast_tory   rn   r&   r1   rj   )_validate_input_tools_postr   _type_to_response_formatr   CompletionCreateParamsr   r
   r   r(   r    r&   r6   rU   rW   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rv   s      `            `         r7   parsezCompletions.parseP   s   @ 	e$$$ ()F
"

	 	 	 	 	 	 	 zz U (): !*	
  !*  *+> '(8 &'?'P'P #L D e %n ";  ";!" U#$ %1" (8+  . )?1 4 )+'%"   2?CDnUUM  '
 '
 '	
r9   Jcompletion_create_params.ResponseFormat | type[ResponseFormatT] | NotGiven,ChatCompletionStreamManager[ResponseFormatT]c               $   ddi|pi }t          | j        j        j        j        fi d|d|d|dddt          |          d	|d
|d|d|d|d|	d|
d|d|d|d|d|d|d|d|d|d|d|d|d|}t          |||          S )Nrl   beta.chat.completions.streamrP   rU   rW   ry   Tr?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rQ   rR   rS   rT   r?   rr   )r   _clientchatcompletionscreater   r$   r6   rU   rW   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   api_requests                             r7   ry   zCompletions.stream   s   D ()G
"

 =DL)0=
 =
 =
--=
 X=
 %	=

 4=
 5_EEE=
 0/=
 "z=
 X=
 "z=
 a=
 !4 3=
 .-=
 &=
 =
  *>!=
" $#=
$ $%=
& %'=
( &)=
* %+=
, -=
. (-/=
0 $1=
2 "z3=
4 G5=
8 ++
 
 
 	
r9   )r1   r2   )r1   r:   2rU   rV   rW   rX   r?   rY   r@   rZ   rA   r[   rB   r\   rC   r]   rD   r]   rE   r^   rF   rZ   rG   r_   rH   r`   rI   ra   rJ   rZ   rK   rb   rL   rc   rM   r]   rN   rZ   rO   rd   rP   re   rQ   rf   rR   rg   rS   rh   rT   ri   r1   rj   )2rU   rV   rW   rX   r?   r   r@   rZ   rA   r[   rB   r\   rC   r]   rD   r]   rE   r^   rF   rZ   rG   r_   rH   r`   rI   ra   rJ   rZ   rK   rb   rL   rc   rM   r]   rN   rZ   rO   rd   rP   re   rQ   rf   rR   rg   rS   rh   rT   ri   r1   r   )
__name__
__module____qualname__r   r8   r=   r   r   r   ry    r9   r7   r.   r.   @   s6       0 0 0 _0 6 6 6 _6  =F8A:C.7/8&//87@HQAJ2;FO>G1:,5(AJ )-$("&;D;V
 V
 V
 V
 V
 ^V
~ 8A:C.7/8&//87@HQAJ2;FO>G1:,5(AJ )-$("&;D?F
 F
 F
 F
 F
 F
 F
 F
r9   c                      e Zd Zed8d            Zed9d            Zeeeeeeeeeeeeeeeeeeedddedd:d4            Zeeeeeeeeeeeeeeeeeedddedd;d7Z	dS )<r/   r1   AsyncCompletionsWithRawResponsec                     t          |           S r4   )r   r5   s    r7   r8   z"AsyncCompletions.with_raw_response   s     /t444r9   %AsyncCompletionsWithStreamingResponsec                     t          |           S r<   )r   r5   s    r7   r=   z(AsyncCompletions.with_streaming_response   s    
 5T:::r9   Nr>   rU   rV   rW   rX   r?   rY   r@   rZ   rA   r[   rB   r\   rC   r]   rD   rE   r^   rF   rG   r_   rH   r`   rI   ra   rJ   rK   rb   rL   rc   rM   rN   rO   rd   rP   re   rQ   rf   rR   rg   rS   rh   rT   ri   rj   c                 K   t                     ddi|pi }dfd}|                     dt          i d	|d
|d|d|d|d|d|d|	d|
dt                    d|d|ddd|d|d|d||||dt          j                   d {V t          |||||          t          t          t          t                            t                    d           d {V S )Nrl   rm   rn   r&   r1   rj   c                (    t          |           S rp   rs   ru   s    r7   rv   z&AsyncCompletions.parse.<locals>.parser)  rw   r9   rx   rU   rW   r@   rA   rB   rC   rD   rE   rF   r?   rG   rH   ry   FrI   rJ   rK   rL   rz   r{   r}   r   )r   r   r   r   r   r   r   r
   r   r(   r    r&   r   s      `            `         r7   r   zAsyncCompletions.parse  s      @ 	e$$$ ()F
"

	 	 	 	 	 	 	 ZZ,U (): !*	
  !*  *+> '(8 &'?'P'P #L D e %n ";  ";!" U#$ %1" (8+  . )?1       4 )+'%"   2?CDnUUM   '
 '
 '
 '
 '
 '
 '
 '
 '	
r9   r   1AsyncChatCompletionStreamManager[ResponseFormatT]c                   t          |           ddi|pi }| j        j        j                            ||dt          |          ||||||	|
||||||||||||||          }t          |||          S )Nrl   r   T)rU   rW   ry   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r   )r   r   r   r   r   r   r%   r   s                             r7   ry   zAsyncCompletions.stream[  s    B 	e$$$ ()G
"

 l'3::4_EE/!! 3-%)##%-'#!3 ; 
 
6 0+
 
 
 	
r9   )r1   r   )r1   r   r   )2rU   rV   rW   rX   r?   r   r@   rZ   rA   r[   rB   r\   rC   r]   rD   r]   rE   r^   rF   rZ   rG   r_   rH   r`   rI   ra   rJ   rZ   rK   rb   rL   rc   rM   r]   rN   rZ   rO   rd   rP   re   rQ   rf   rR   rg   rS   rh   rT   ri   r1   r   )
r   r   r   r   r8   r=   r   r   r   ry   r   r9   r7   r/   r/      s7       5 5 5 _5 ; ; ; _;  =F8A:C.7/8&//87@HQAJ2;FO>G1:,5(AJ )-$("&;D;V
 V
 V
 V
 V
 V
~ 8A:C.7/8&//87@HQAJ2;FO>G1:,5(AJ )-$("&;D?G
 G
 G
 G
 G
 G
 G
 G
r9   c                      e Zd ZddZdS )r2   r   r.   r1   Nonec                P    || _         t          j        |j                  | _        d S N)_completionsr   to_raw_response_wrapperr   r6   r   s     r7   __init__z#CompletionsWithRawResponse.__init__  s(    '%=
 



r9   Nr   r.   r1   r   r   r   r   r   r   r9   r7   r2   r2     (        
 
 
 
 
 
r9   r2   c                      e Zd ZddZdS )r   r   r/   r1   r   c                P    || _         t          j        |j                  | _        d S r   )r   r   async_to_raw_response_wrapperr   r   s     r7   r   z(AsyncCompletionsWithRawResponse.__init__  s(    '%C
 



r9   Nr   r/   r1   r   r   r   r9   r7   r   r     r   r9   r   c                      e Zd ZddZdS )r:   r   r.   r1   r   c                F    || _         t          |j                  | _        d S r   )r   r   r   r   s     r7   r   z)CompletionsWithStreamingResponse.__init__  s%    '1
 



r9   Nr   r   r   r9   r7   r:   r:     r   r9   r:   c                      e Zd ZddZdS )r   r   r/   r1   r   c                F    || _         t          |j                  | _        d S r   )r   r   r   r   s     r7   r   z.AsyncCompletionsWithStreamingResponse.__init__  s%    '7
 



r9   Nr   r   r   r9   r7   r   r     r   r9   r   )L
__future__r   typingr   r   r   r   r   r	   r
   	functoolsr   typing_extensionsr   httpx r   _typesr   r   r   r   r   _utilsr   r   r   r   _compatr   	_resourcer   r   	_responser   r   
_streamingr   
types.chatr   _base_clientr   common._parsingr    r!   r   r"   rt   r#   r   common.streaming.chatr$   r%   types.chat.chat_completionr&    types.chat.chat_completion_chunkr'   !types.chat.parsed_chat_completionr(   %types.chat.chat_completion_tool_paramr)   (types.chat.chat_completion_message_paramr*   /types.chat.chat_completion_stream_options_paramr+   3types.chat.chat_completion_tool_choice_option_paramr,   types.shared.reasoning_effortr-   __all__r.   r/   r2   r   r:   r   r   r9   r7   <module>r      s   # " " " " " D D D D D D D D D D D D D D D D D D       % % % % % %  ! ! ! ! ! ! @ @ @ @ @ @ @ @ @ @ @ @ @ @            ( ' ' ' ' ' ; ; ; ; ; ; ; ;        " ! ! ! ! ! 3 3 3 3 3 3 1 1 1 1 1 1                   : 9 9 9 9 9 D D D D D D F F F F F F M M M M M M S S S S S S           > = = = = = ,
-o
 o
 o
 o
 o
/ o
 o
 o
dp
 p
 p
 p
 p
' p
 p
 p
f
 
 
 
 
 
 
 

 
 
 
 
 
 
 

 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
r9   