12
12
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
13
# See the License for the specific language governing permissions and
14
14
# limitations under the License.
15
+ from __future__ import annotations
15
16
16
17
import dataclasses
17
18
import sys
@@ -150,9 +151,9 @@ def _make_examples(examples: discuss_types.ExamplesOptions) -> List[glm.Example]
150
151
def _make_message_prompt_dict (
151
152
prompt : discuss_types .MessagePromptOptions = None ,
152
153
* ,
153
- context : Optional [ str ] = None ,
154
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
155
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
154
+ context : str | None = None ,
155
+ examples : discuss_types .ExamplesOptions | None = None ,
156
+ messages : discuss_types .MessagesOptions | None = None ,
156
157
) -> glm .MessagePrompt :
157
158
if prompt is None :
158
159
prompt = dict (
@@ -196,9 +197,9 @@ def _make_message_prompt_dict(
196
197
def _make_message_prompt (
197
198
prompt : discuss_types .MessagePromptOptions = None ,
198
199
* ,
199
- context : Optional [ str ] = None ,
200
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
201
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
200
+ context : str | None = None ,
201
+ examples : discuss_types .ExamplesOptions | None = None ,
202
+ messages : discuss_types .MessagesOptions | None = None ,
202
203
) -> glm .MessagePrompt :
203
204
prompt = _make_message_prompt_dict (
204
205
prompt = prompt , context = context , examples = examples , messages = messages
@@ -208,15 +209,15 @@ def _make_message_prompt(
208
209
209
210
def _make_generate_message_request (
210
211
* ,
211
- model : Optional [ model_types .ModelNameOptions ] ,
212
- context : Optional [ str ] = None ,
213
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
214
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
215
- temperature : Optional [ float ] = None ,
216
- candidate_count : Optional [ int ] = None ,
217
- top_p : Optional [ float ] = None ,
218
- top_k : Optional [ float ] = None ,
219
- prompt : Optional [ discuss_types .MessagePromptOptions ] = None ,
212
+ model : model_types .ModelNameOptions | None ,
213
+ context : str | None = None ,
214
+ examples : discuss_types .ExamplesOptions | None = None ,
215
+ messages : discuss_types .MessagesOptions | None = None ,
216
+ temperature : float | None = None ,
217
+ candidate_count : int | None = None ,
218
+ top_p : float | None = None ,
219
+ top_k : float | None = None ,
220
+ prompt : discuss_types .MessagePromptOptions | None = None ,
220
221
) -> glm .GenerateMessageRequest :
221
222
model = model_types .make_model_name (model )
222
223
@@ -247,16 +248,16 @@ def inner(f):
247
248
248
249
def chat (
249
250
* ,
250
- model : Optional [ model_types .ModelNameOptions ] = "models/chat-bison-001" ,
251
- context : Optional [ str ] = None ,
252
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
253
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
254
- temperature : Optional [ float ] = None ,
255
- candidate_count : Optional [ int ] = None ,
256
- top_p : Optional [ float ] = None ,
257
- top_k : Optional [ float ] = None ,
258
- prompt : Optional [ discuss_types .MessagePromptOptions ] = None ,
259
- client : Optional [ glm .DiscussServiceClient ] = None ,
251
+ model : model_types .ModelNameOptions | None = "models/chat-bison-001" ,
252
+ context : str | None = None ,
253
+ examples : discuss_types .ExamplesOptions | None = None ,
254
+ messages : discuss_types .MessagesOptions | None = None ,
255
+ temperature : float | None = None ,
256
+ candidate_count : int | None = None ,
257
+ top_p : float | None = None ,
258
+ top_k : float | None = None ,
259
+ prompt : discuss_types .MessagePromptOptions | None = None ,
260
+ client : glm .DiscussServiceClient | None = None ,
260
261
) -> discuss_types .ChatResponse :
261
262
"""Calls the API and returns a `types.ChatResponse` containing the response.
262
263
@@ -345,16 +346,16 @@ def chat(
345
346
@set_doc (chat .__doc__ )
346
347
async def chat_async (
347
348
* ,
348
- model : Optional [ model_types .ModelNameOptions ] = None ,
349
- context : Optional [ str ] = None ,
350
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
351
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
352
- temperature : Optional [ float ] = None ,
353
- candidate_count : Optional [ int ] = None ,
354
- top_p : Optional [ float ] = None ,
355
- top_k : Optional [ float ] = None ,
356
- prompt : Optional [ discuss_types .MessagePromptOptions ] = None ,
357
- client : Optional [ glm .DiscussServiceAsyncClient ] = None ,
349
+ model : model_types .ModelNameOptions | None = None ,
350
+ context : str | None = None ,
351
+ examples : discuss_types .ExamplesOptions | None = None ,
352
+ messages : discuss_types .MessagesOptions | None = None ,
353
+ temperature : float | None = None ,
354
+ candidate_count : int | None = None ,
355
+ top_p : float | None = None ,
356
+ top_k : float | None = None ,
357
+ prompt : discuss_types .MessagePromptOptions | None = None ,
358
+ client : glm .DiscussServiceAsyncClient | None = None ,
358
359
) -> discuss_types .ChatResponse :
359
360
request = _make_generate_message_request (
360
361
model = model ,
@@ -380,7 +381,7 @@ async def chat_async(
380
381
@set_doc (discuss_types .ChatResponse .__doc__ )
381
382
@dataclasses .dataclass (** DATACLASS_KWARGS , init = False )
382
383
class ChatResponse (discuss_types .ChatResponse ):
383
- _client : Optional [ glm .DiscussServiceClient ] = dataclasses .field (
384
+ _client : glm .DiscussServiceClient | None = dataclasses .field (
384
385
default = lambda : None , repr = False
385
386
)
386
387
@@ -390,7 +391,7 @@ def __init__(self, **kwargs):
390
391
391
392
@property
392
393
@set_doc (discuss_types .ChatResponse .last .__doc__ )
393
- def last (self ) -> Optional [ str ] :
394
+ def last (self ) -> str | None :
394
395
if self .messages [- 1 ]:
395
396
return self .messages [- 1 ]["content" ]
396
397
else :
@@ -445,7 +446,7 @@ async def reply_async(
445
446
def _build_chat_response (
446
447
request : glm .GenerateMessageRequest ,
447
448
response : glm .GenerateMessageResponse ,
448
- client : Union [ glm .DiscussServiceClient , glm .DiscussServiceAsyncClient ] ,
449
+ client : glm .DiscussServiceClient | glm .DiscussServiceAsyncClient ,
449
450
) -> ChatResponse :
450
451
request = type (request ).to_dict (request )
451
452
prompt = request .pop ("prompt" )
@@ -473,7 +474,7 @@ def _build_chat_response(
473
474
474
475
def _generate_response (
475
476
request : glm .GenerateMessageRequest ,
476
- client : Optional [ glm .DiscussServiceClient ] = None ,
477
+ client : glm .DiscussServiceClient | None = None ,
477
478
) -> ChatResponse :
478
479
if client is None :
479
480
client = get_default_discuss_client ()
@@ -485,7 +486,7 @@ def _generate_response(
485
486
486
487
async def _generate_response_async (
487
488
request : glm .GenerateMessageRequest ,
488
- client : Optional [ glm .DiscussServiceAsyncClient ] = None ,
489
+ client : glm .DiscussServiceAsyncClient | None = None ,
489
490
) -> ChatResponse :
490
491
if client is None :
491
492
client = get_default_discuss_async_client ()
@@ -498,11 +499,11 @@ async def _generate_response_async(
498
499
def count_message_tokens (
499
500
* ,
500
501
prompt : discuss_types .MessagePromptOptions = None ,
501
- context : Optional [ str ] = None ,
502
- examples : Optional [ discuss_types .ExamplesOptions ] = None ,
503
- messages : Optional [ discuss_types .MessagesOptions ] = None ,
502
+ context : str | None = None ,
503
+ examples : discuss_types .ExamplesOptions | None = None ,
504
+ messages : discuss_types .MessagesOptions | None = None ,
504
505
model : model_types .ModelNameOptions = DEFAULT_DISCUSS_MODEL ,
505
- client : Optional [ glm .DiscussServiceAsyncClient ] = None ,
506
+ client : glm .DiscussServiceAsyncClient | None = None ,
506
507
):
507
508
model = model_types .make_model_name (model )
508
509
prompt = _make_message_prompt (
0 commit comments