Ë
    $Æ%hçê  ã                  óp  — 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
 d dlZddlm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 dd
lmZ ddlmZ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gZ+ G d„ de«      Z, G d„ de«      Z- G d„ d«      Z. G d„ d«      Z/ G d„ d«      Z0 G d„ d«      Z1y)é    )Úannotations)ÚDictÚListÚUnionÚIterableÚOptional)ÚLiteralÚoverloadNé   )Ú_legacy_response)Úcompletion_create_params)Ú	NOT_GIVENÚBodyÚQueryÚHeadersÚNotGiven)Úrequired_argsÚmaybe_transformÚasync_maybe_transform)Úcached_property)ÚSyncAPIResourceÚAsyncAPIResource)Úto_streamed_response_wrapperÚ"async_to_streamed_response_wrapper)ÚStreamÚAsyncStream)Úmake_request_options)Ú
Completion)Ú ChatCompletionStreamOptionsParamÚCompletionsÚAsyncCompletionsc                  ó¢  — e Zd Zedd„«       Zedd„«       Zeeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd	„«       Zeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd
„«       Z e	ddgg d¢«      eeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zy)r    c                ó   — t        | «      S ©a  
        This property can be used as a prefix for any HTTP method call to return
        the raw response object instead of the parsed content.

        For more information, see https://www.github.com/openai/openai-python#accessing-raw-response-data-eg-headers
        )ÚCompletionsWithRawResponse©Úselfs    úZ/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/openai/resources/completions.pyÚwith_raw_responsezCompletions.with_raw_response   s   € ô *¨$Ó/Ð/ó    c                ó   — t        | «      S ©zÌ
        An alternative to `.with_raw_response` that doesn't eagerly read the response body.

        For more information, see https://www.github.com/openai/openai-python#with_streaming_response
        )Ú CompletionsWithStreamingResponser&   s    r(   Úwith_streaming_responsez#Completions.with_streaming_response&   s   € ô 0°Ó5Ð5r*   N©Úbest_ofÚechoÚfrequency_penaltyÚ
logit_biasÚlogprobsÚ
max_tokensÚnÚpresence_penaltyÚseedÚstopÚstreamÚstream_optionsÚsuffixÚtemperatureÚtop_pÚuserÚextra_headersÚextra_queryÚ
extra_bodyÚtimeoutÚmodelÚpromptc                ó   — y©u3  
        Creates a completion for the provided prompt and parameters.

        Args:
          model: ID of the model to use. You can use the
              [List models](https://platform.openai.com/docs/api-reference/models/list) API to
              see all of your available models, or see our
              [Model overview](https://platform.openai.com/docs/models) for descriptions of
              them.

          prompt: The prompt(s) to generate completions for, encoded as a string, array of
              strings, array of tokens, or array of token arrays.

              Note that <|endoftext|> is the document separator that the model sees during
              training, so if a prompt is not specified the model will generate as if from the
              beginning of a new document.

          best_of: Generates `best_of` completions server-side and returns the "best" (the one with
              the highest log probability per token). Results cannot be streamed.

              When used with `n`, `best_of` controls the number of candidate completions and
              `n` specifies how many to return â€“ `best_of` must be greater than `n`.

              **Note:** Because this parameter generates many completions, it can quickly
              consume your token quota. Use carefully and ensure that you have reasonable
              settings for `max_tokens` and `stop`.

          echo: Echo back the prompt in addition to the completion

          frequency_penalty: Number between -2.0 and 2.0. Positive values penalize new tokens based on their
              existing frequency in the text so far, decreasing the model's likelihood to
              repeat the same line verbatim.

              [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation)

          logit_bias: Modify the likelihood of specified tokens appearing in the completion.

              Accepts a JSON object that maps tokens (specified by their token ID in the GPT
              tokenizer) to an associated bias value from -100 to 100. You can use this
              [tokenizer tool](/tokenizer?view=bpe) to convert text to token IDs.
              Mathematically, the bias is added to the logits generated by the model prior to
              sampling. The exact effect will vary per model, but values between -1 and 1
              should decrease or increase likelihood of selection; values like -100 or 100
              should result in a ban or exclusive selection of the relevant token.

              As an example, you can pass `{"50256": -100}` to prevent the <|endoftext|> token
              from being generated.

          logprobs: Include the log probabilities on the `logprobs` most likely output tokens, as
              well the chosen tokens. For example, if `logprobs` is 5, the API will return a
              list of the 5 most likely tokens. The API will always return the `logprob` of
              the sampled token, so there may be up to `logprobs+1` elements in the response.

              The maximum value for `logprobs` is 5.

          max_tokens: The maximum number of [tokens](/tokenizer) that can be generated in the
              completion.

              The token count of your prompt plus `max_tokens` cannot exceed the model's
              context length.
              [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken)
              for counting tokens.

          n: How many completions to generate for each prompt.

              **Note:** Because this parameter generates many completions, it can quickly
              consume your token quota. Use carefully and ensure that you have reasonable
              settings for `max_tokens` and `stop`.

          presence_penalty: Number between -2.0 and 2.0. Positive values penalize new tokens based on
              whether they appear in the text so far, increasing the model's likelihood to
              talk about new topics.

              [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation)

          seed: If specified, our system will make a best effort to sample deterministically,
              such that repeated requests with the same `seed` and parameters should return
              the same result.

              Determinism is not guaranteed, and you should refer to the `system_fingerprint`
              response parameter to monitor changes in the backend.

          stop: Not supported with latest reasoning models `o3` and `o4-mini`.

              Up to 4 sequences where the API will stop generating further tokens. The
              returned text will not contain the stop sequence.

          stream: Whether to stream back partial progress. If set, tokens will be sent as
              data-only
              [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format)
              as they become available, with the stream terminated by a `data: [DONE]`
              message.
              [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).

          stream_options: Options for streaming response. Only set this when you set `stream: true`.

          suffix: The suffix that comes after a completion of inserted text.

              This parameter is only supported for `gpt-3.5-turbo-instruct`.

          temperature: What sampling temperature to use, between 0 and 2. Higher values like 0.8 will
              make the output more random, while lower values like 0.2 will make it more
              focused and deterministic.

              We generally recommend altering this or `top_p` but not both.

          top_p: An alternative to sampling with temperature, called nucleus sampling, where the
              model considers the results of the tokens with top_p probability mass. So 0.1
              means only the tokens comprising the top 10% probability mass are considered.

              We generally recommend altering this or `temperature` but not both.

          user: A unique identifier representing your end-user, which can help OpenAI to monitor
              and detect abuse.
              [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids).

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        N© ©r'   rD   rE   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   s                          r(   ÚcreatezCompletions.create/   ó   € ðr 	r*   ©r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r;   r<   r=   r>   r?   r@   rA   rB   rC   c                ó   — y©u3  
        Creates a completion for the provided prompt and parameters.

        Args:
          model: ID of the model to use. You can use the
              [List models](https://platform.openai.com/docs/api-reference/models/list) API to
              see all of your available models, or see our
              [Model overview](https://platform.openai.com/docs/models) for descriptions of
              them.

          prompt: The prompt(s) to generate completions for, encoded as a string, array of
              strings, array of tokens, or array of token arrays.

              Note that <|endoftext|> is the document separator that the model sees during
              training, so if a prompt is not specified the model will generate as if from the
              beginning of a new document.

          stream: Whether to stream back partial progress. If set, tokens will be sent as
              data-only
              [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format)
              as they become available, with the stream terminated by a `data: [DONE]`
              message.
              [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).

          best_of: Generates `best_of` completions server-side and returns the "best" (the one with
              the highest log probability per token). Results cannot be streamed.

              When used with `n`, `best_of` controls the number of candidate completions and
              `n` specifies how many to return â€“ `best_of` must be greater than `n`.

              **Note:** Because this parameter generates many completions, it can quickly
              consume your token quota. Use carefully and ensure that you have reasonable
              settings for `max_tokens` and `stop`.

          echo: Echo back the prompt in addition to the completion

          frequency_penalty: Number between -2.0 and 2.0. Positive values penalize new tokens based on their
              existing frequency in the text so far, decreasing the model's likelihood to
              repeat the same line verbatim.

              [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation)

          logit_bias: Modify the likelihood of specified tokens appearing in the completion.

              Accepts a JSON object that maps tokens (specified by their token ID in the GPT
              tokenizer) to an associated bias value from -100 to 100. You can use this
              [tokenizer tool](/tokenizer?view=bpe) to convert text to token IDs.
              Mathematically, the bias is added to the logits generated by the model prior to
              sampling. The exact effect will vary per model, but values between -1 and 1
              should decrease or increase likelihood of selection; values like -100 or 100
              should result in a ban or exclusive selection of the relevant token.

              As an example, you can pass `{"50256": -100}` to prevent the <|endoftext|> token
              from being generated.

          logprobs: Include the log probabilities on the `logprobs` most likely output tokens, as
              well the chosen tokens. For example, if `logprobs` is 5, the API will return a
              list of the 5 most likely tokens. The API will always return the `logprob` of
              the sampled token, so there may be up to `logprobs+1` elements in the response.

              The maximum value for `logprobs` is 5.

          max_tokens: The maximum number of [tokens](/tokenizer) that can be generated in the
              completion.

              The token count of your prompt plus `max_tokens` cannot exceed the model's
              context length.
              [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken)
              for counting tokens.

          n: How many completions to generate for each prompt.

              **Note:** Because this parameter generates many completions, it can quickly
              consume your token quota. Use carefully and ensure that you have reasonable
              settings for `max_tokens` and `stop`.

          presence_penalty: Number between -2.0 and 2.0. Positive values penalize new tokens based on
              whether they appear in the text so far, increasing the model's likelihood to
              talk about new topics.

              [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation)

          seed: If specified, our system will make a best effort to sample deterministically,
              such that repeated requests with the same `seed` and parameters should return
              the same result.

              Determinism is not guaranteed, and you should refer to the `system_fingerprint`
              response parameter to monitor changes in the backend.

          stop: Not supported with latest reasoning models `o3` and `o4-mini`.

              Up to 4 sequences where the API will stop generating further tokens. The
              returned text will not contain the stop sequence.

          stream_options: Options for streaming response. Only set this when you set `stream: true`.

          suffix: The suffix that comes after a completion of inserted text.

              This parameter is only supported for `gpt-3.5-turbo-instruct`.

          temperature: What sampling temperature to use, between 0 and 2. Higher values like 0.8 will
              make the output more random, while lower values like 0.2 will make it more
              focused and deterministic.

              We generally recommend altering this or `top_p` but not both.

          top_p: An alternative to sampling with temperature, called nucleus sampling, where the
              model considers the results of the tokens with top_p probability mass. So 0.1
              means only the tokens comprising the top 10% probability mass are considered.

              We generally recommend altering this or `temperature` but not both.

          user: A unique identifier representing your end-user, which can help OpenAI to monitor
              and detect abuse.
              [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids).

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        NrH   ©r'   rD   rE   r:   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r;   r<   r=   r>   r?   r@   rA   rB   rC   s                          r(   rJ   zCompletions.createÊ   rK   r*   c                ó   — yrN   rH   rO   s                          r(   rJ   zCompletions.createe  rK   r*   ©rD   rE   r:   c          
     ó2  — | j                  dt        i d|“d|“d|“d|“d|“d|“d|“d	|“d
|	“d|
“d|“d|“d|“d|“d|“d|“d|“d|i¥|rt        j                  nt        j                  «      t        ||||¬«      t        |xs dt        t           ¬«      S ©Nz/completionsrD   rE   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   )r@   rA   rB   rC   F)ÚbodyÚoptionsÚcast_tor:   Ú
stream_cls)Ú_postr   r   ÚCompletionCreateParamsStreamingÚ"CompletionCreateParamsNonStreamingr   r   r   rI   s                          r(   rJ   zCompletions.create   sC  € ð: �z‰zØÜ ðØ˜Uðà˜fðð ˜wðð ˜Dð	ð
 (Ð):ðð ! *ðð  ðð ! *ðð ˜ðð 'Ð(8ðð ˜Dðð ˜Dðð ˜fðð % nðð ˜fðð  " ;ð!ð" ˜Uð#ð$ ˜Dñ%ñ* ô )×HÒHä-×PÑPó/ô2 )Ø+¸ÐQ[Ðelôô Ø’?˜UÜœjÑ)ðA ó !
ð !	
r*   )Úreturnr%   )r[   r-   ©.rD   úKUnion[str, Literal['gpt-3.5-turbo-instruct', 'davinci-002', 'babbage-002']]rE   úCUnion[str, List[str], Iterable[int], Iterable[Iterable[int]], None]r0   úOptional[int] | NotGivenr1   úOptional[bool] | NotGivenr2   úOptional[float] | NotGivenr3   ú#Optional[Dict[str, int]] | NotGivenr4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   ú0Union[Optional[str], List[str], None] | NotGivenr:   z#Optional[Literal[False]] | NotGivenr;   ú5Optional[ChatCompletionStreamOptionsParam] | NotGivenr<   úOptional[str] | NotGivenr=   ra   r>   ra   r?   ústr | NotGivenr@   úHeaders | NonerA   úQuery | NonerB   úBody | NonerC   ú'float | httpx.Timeout | None | NotGivenr[   r   ).rD   r]   rE   r^   r:   úLiteral[True]r0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   zStream[Completion]).rD   r]   rE   r^   r:   Úboolr0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   úCompletion | Stream[Completion]).rD   r]   rE   r^   r0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r:   ú3Optional[Literal[False]] | Literal[True] | NotGivenr;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   rm   ©
Ú__name__Ú
__module__Ú__qualname__r   r)   r.   r
   r   rJ   r   rH   r*   r(   r    r       ss  „ Øò0ó ð0ð ò6ó ð6ð ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØ6?ØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð 4ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
ò7Xó ðXðt ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 ðXð *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
ò7Xó ðXðt ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 ðXð *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
)ò7Xó ðXñt �G˜XÐ&Ò(EÓFð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØFOØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5=
ð [ð=
ð Tð	=
ð
 *ð=
ð (ð=
ð 6ð=
ð 8ð=
ð +ð=
ð -ð=
ð $ð=
ð 5ð=
ð 'ð=
ð ?ð=
ð Dð=
ð  Nð!=
ð" )ð#=
ð$ 0ð%=
ð& *ð'=
ð( ð)=
ð. &ð/=
ð0 "ð1=
ð2  ð3=
ð4 9ð5=
ð6 
)ò7=
ó Gñ=
r*   c                  ó¢  — e Zd Zedd„«       Zedd„«       Zeeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd	„«       Zeeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd
„«       Z e	ddgg d¢«      eeeeeeeeeeeeeeeedddedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zy)r!   c                ó   — t        | «      S r$   )ÚAsyncCompletionsWithRawResponser&   s    r(   r)   z"AsyncCompletions.with_raw_responseB  s   € ô /¨tÓ4Ð4r*   c                ó   — t        | «      S r,   )Ú%AsyncCompletionsWithStreamingResponser&   s    r(   r.   z(AsyncCompletions.with_streaming_responseL  s   € ô 5°TÓ:Ð:r*   Nr/   rD   rE   c             ƒ  ó   K  — y­wrG   rH   rI   s                          r(   rJ   zAsyncCompletions.createU  ó   è ø€ ðr 	ùó   ‚rL   c             ƒ  ó   K  — y­wrN   rH   rO   s                          r(   rJ   zAsyncCompletions.createð  ry   rz   c             ƒ  ó   K  — y­wrN   rH   rO   s                          r(   rJ   zAsyncCompletions.create‹  ry   rz   rQ   c          
   ƒ  ób  K  — | j                  dt        i d|“d|“d|“d|“d|“d|“d|“d	|“d
|	“d|
“d|“d|“d|“d|“d|“d|“d|“d|i¥|rt        j                  nt        j                  «      ƒ d {  –—† t        ||||¬«      t        |xs dt        t           ¬«      ƒ d {  –—† S 7 Œ57 Œ­wrS   )rX   r   r   rY   rZ   r   r   r   rI   s                          r(   rJ   zAsyncCompletions.create&  s\  è ø€ ð: —Z‘ZØÜ,ðØ˜Uðà˜fðð ˜wðð ˜Dð	ð
 (Ð):ðð ! *ðð  ðð ! *ðð ˜ðð 'Ð(8ðð ˜Dðð ˜Dðð ˜fðð % nðð ˜fðð  " ;ð!ð" ˜Uð#ð$ ˜Dñ%ñ* ô )×HÒHä-×PÑPó/÷ ô2 )Ø+¸ÐQ[Ðelôô Ø’?˜UÜ"¤:Ñ.ðA  ó !
÷ !
ð !	
ðøð!
ús$   ‚A3B/Á5B+
Á60B/Â&B-Â'B/Â-B/)r[   ru   )r[   rw   r\   ).rD   r]   rE   r^   r:   rk   r0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   zAsyncStream[Completion]).rD   r]   rE   r^   r:   rl   r0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   ú$Completion | AsyncStream[Completion]).rD   r]   rE   r^   r0   r_   r1   r`   r2   ra   r3   rb   r4   r_   r5   r_   r6   r_   r7   ra   r8   r_   r9   rc   r:   rn   r;   rd   r<   re   r=   ra   r>   ra   r?   rf   r@   rg   rA   rh   rB   ri   rC   rj   r[   r~   ro   rH   r*   r(   r!   r!   A  ss  „ Øò5ó ð5ð ò;ó ð;ð ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØ6?ØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð 4ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
ò7Xó ðXðt ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 ðXð *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
!ò7Xó ðXðt ð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5Xð [ðXð Tð	Xð
 ðXð *ðXð (ðXð 6ðXð 8ðXð +ðXð -ðXð $ðXð 5ðXð 'ðXð ?ðXð  Nð!Xð" )ð#Xð$ 0ð%Xð& *ð'Xð( ð)Xð. &ð/Xð0 "ð1Xð2  ð3Xð4 9ð5Xð6 
.ò7Xó ðXñt �G˜XÐ&Ò(EÓFð -6Ø*3Ø8AØ:CØ-6Ø/8Ø&/Ø7@Ø)2ØAJØFOØPYØ+4Ø2;Ø,5Ø(ð )-Ø$(Ø"&Ø;Dñ5=
ð [ð=
ð Tð	=
ð
 *ð=
ð (ð=
ð 6ð=
ð 8ð=
ð +ð=
ð -ð=
ð $ð=
ð 5ð=
ð 'ð=
ð ?ð=
ð Dð=
ð  Nð!=
ð" )ð#=
ð$ 0ð%=
ð& *ð'=
ð( ð)=
ð. &ð/=
ð0 "ð1=
ð2  ð3=
ð4 9ð5=
ð6 
.ò7=
ó Gñ=
r*   c                  ó   — e Zd Zdd„Zy)r%   c                óZ   — || _         t        j                  |j                  «      | _        y ©N)Ú_completionsr   Úto_raw_response_wrapperrJ   ©r'   Úcompletionss     r(   Ú__init__z#CompletionsWithRawResponse.__init__h  s%   € Ø'ˆÔä&×>Ñ>Ø×Ñó
ˆ�r*   N©r…   r    r[   ÚNone©rp   rq   rr   r†   rH   r*   r(   r%   r%   g  ó   „ ô
r*   r%   c                  ó   — e Zd Zdd„Zy)ru   c                óZ   — || _         t        j                  |j                  «      | _        y r�   )r‚   r   Úasync_to_raw_response_wrapperrJ   r„   s     r(   r†   z(AsyncCompletionsWithRawResponse.__init__q  s%   € Ø'ˆÔä&×DÑDØ×Ñó
ˆ�r*   N©r…   r!   r[   rˆ   r‰   rH   r*   r(   ru   ru   p  rŠ   r*   ru   c                  ó   — e Zd Zdd„Zy)r-   c                óF   — || _         t        |j                  «      | _        y r�   )r‚   r   rJ   r„   s     r(   r†   z)CompletionsWithStreamingResponse.__init__z  s   € Ø'ˆÔä2Ø×Ñó
ˆ�r*   Nr‡   r‰   rH   r*   r(   r-   r-   y  rŠ   r*   r-   c                  ó   — e Zd Zdd„Zy)rw   c                óF   — || _         t        |j                  «      | _        y r�   )r‚   r   rJ   r„   s     r(   r†   z.AsyncCompletionsWithStreamingResponse.__init__ƒ  s   € Ø'ˆÔä8Ø×Ñó
ˆ�r*   NrŽ   r‰   rH   r*   r(   rw   rw   ‚  rŠ   r*   rw   )2Ú
__future__r   Útypingr   r   r   r   r   Útyping_extensionsr	   r
   ÚhttpxÚ r   Útypesr   Ú_typesr   r   r   r   r   Ú_utilsr   r   r   Ú_compatr   Ú	_resourcer   r   Ú	_responser   r   Ú
_streamingr   r   Ú_base_clientr   Útypes.completionr   Ú/types.chat.chat_completion_stream_options_paramr   Ú__all__r    r!   r%   ru   r-   rw   rH   r*   r(   ú<module>r£      s“   ðõ #ç 8Õ 8ß /ã å Ý ,ß >Õ >ß JÑ JÝ %ß 9ß Xß ,õõ *Ý ^àÐ,Ð
-€ôc
�/ô c
ôLc
Ð'ô c
÷L
ñ 
÷
ñ 
÷
ñ 
÷
ò 
r*   