dashscope 1.12.0__py3-none-any.whl → 1.13.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of dashscope might be problematic. Click here for more details.

Files changed (32) hide show
  1. dashscope/__init__.py +8 -27
  2. dashscope/aigc/code_generation.py +14 -17
  3. dashscope/aigc/conversation.py +26 -20
  4. dashscope/aigc/generation.py +11 -1
  5. dashscope/aigc/multimodal_conversation.py +39 -4
  6. dashscope/api_entities/api_request_data.py +2 -2
  7. dashscope/api_entities/api_request_factory.py +4 -10
  8. dashscope/api_entities/dashscope_response.py +18 -9
  9. dashscope/audio/asr/__init__.py +5 -1
  10. dashscope/audio/asr/asr_phrase_manager.py +179 -0
  11. dashscope/audio/asr/recognition.py +61 -3
  12. dashscope/audio/asr/transcription.py +55 -2
  13. dashscope/client/base_api.py +13 -8
  14. dashscope/common/constants.py +5 -2
  15. dashscope/common/error.py +4 -0
  16. dashscope/common/utils.py +12 -2
  17. dashscope/embeddings/batch_text_embedding.py +3 -2
  18. dashscope/embeddings/multimodal_embedding.py +37 -9
  19. dashscope/embeddings/text_embedding.py +1 -0
  20. dashscope/finetune.py +2 -0
  21. dashscope/nlp/understanding.py +11 -16
  22. dashscope/tokenizers/__init__.py +1 -1
  23. dashscope/utils/__init__.py +0 -0
  24. dashscope/utils/oss_utils.py +133 -0
  25. dashscope/version.py +1 -1
  26. {dashscope-1.12.0.dist-info → dashscope-1.13.1.dist-info}/METADATA +1 -1
  27. dashscope-1.13.1.dist-info/RECORD +59 -0
  28. dashscope-1.12.0.dist-info/RECORD +0 -56
  29. {dashscope-1.12.0.dist-info → dashscope-1.13.1.dist-info}/LICENSE +0 -0
  30. {dashscope-1.12.0.dist-info → dashscope-1.13.1.dist-info}/WHEEL +0 -0
  31. {dashscope-1.12.0.dist-info → dashscope-1.13.1.dist-info}/entry_points.txt +0 -0
  32. {dashscope-1.12.0.dist-info → dashscope-1.13.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,133 @@
1
+ import mimetypes
2
+ import os
3
+ from datetime import datetime
4
+ from http import HTTPStatus
5
+ from time import mktime
6
+ from typing import List
7
+ from urllib.parse import unquote_plus, urlparse
8
+ from wsgiref.handlers import format_date_time
9
+
10
+ import requests
11
+ from dashscope.api_entities.dashscope_response import DashScopeAPIResponse
12
+ from dashscope.client.base_api import GetMixin
13
+ from dashscope.common.constants import (FILE_PATH_SCHEMA,
14
+ REQUEST_CONTENT_AUDIO,
15
+ REQUEST_CONTENT_IMAGE,
16
+ REQUEST_CONTENT_TEXT)
17
+ from dashscope.common.error import InvalidInput, UploadFileException
18
+ from dashscope.common.logging import logger
19
+ from dashscope.common.utils import get_user_agent
20
+
21
+
22
+ class OssUtils(GetMixin):
23
+ SUB_PATH = 'uploads'
24
+
25
+ @classmethod
26
+ def _decode_response_error(cls, response: requests.Response):
27
+ if 'application/json' in response.headers.get('content-type', ''):
28
+ message = response.json()
29
+ else:
30
+ message = response.content.decode('utf-8')
31
+ return message
32
+
33
+ @classmethod
34
+ def upload(cls,
35
+ model: str,
36
+ file_path: str,
37
+ api_key: str = None,
38
+ **kwargs) -> DashScopeAPIResponse:
39
+ """Upload file for model fine-tune or other tasks.
40
+
41
+ Args:
42
+ file_path (str): The local file name to upload.
43
+ purpose (str): The purpose of the file[fine-tune|inference]
44
+ description (str, optional): The file description message.
45
+ api_key (str, optional): The api key. Defaults to None.
46
+
47
+ Returns:
48
+ DashScopeAPIResponse: The upload information
49
+ """
50
+ upload_info = cls.get_upload_certificate(model=model, api_key=api_key)
51
+ if upload_info.status_code != HTTPStatus.OK:
52
+ return None
53
+ upload_info = upload_info.output
54
+ headers = {}
55
+ headers = {'user-agent': get_user_agent()}
56
+ headers['Accept'] = 'application/json'
57
+ headers['Date'] = format_date_time(mktime(datetime.now().timetuple()))
58
+ form_data = {}
59
+ form_data['OSSAccessKeyId'] = upload_info['oss_access_key_id']
60
+ form_data['Signature'] = upload_info['signature']
61
+ form_data['policy'] = upload_info['policy']
62
+ form_data['key'] = upload_info['upload_dir'] + \
63
+ '/' + os.path.basename(file_path)
64
+ form_data['x-oss-object-acl'] = upload_info['x_oss_object_acl']
65
+ form_data['x-oss-forbid-overwrite'] = upload_info[
66
+ 'x_oss_forbid_overwrite']
67
+ form_data['success_action_status'] = '200'
68
+ form_data['x-oss-content-type'] = mimetypes.guess_type(file_path)[0]
69
+ url = upload_info['upload_host']
70
+ files = {'file': open(file_path, 'rb')}
71
+ with requests.Session() as session:
72
+ response = session.post(url,
73
+ files=files,
74
+ data=form_data,
75
+ headers=headers,
76
+ timeout=3600)
77
+ if response.status_code == HTTPStatus.OK:
78
+ return 'oss://' + form_data['key']
79
+ else:
80
+ logger.error(
81
+ 'Uploading file: %s to oss failed! error: %s' %
82
+ (file_path, cls._decode_response_error(response=response)))
83
+ return None
84
+
85
+ @classmethod
86
+ def get_upload_certificate(cls,
87
+ model: str,
88
+ api_key: str = None,
89
+ **kwargs) -> DashScopeAPIResponse:
90
+ """Get a oss upload certificate.
91
+
92
+ Args:
93
+ api_key (str, optional): The api key. Defaults to None.
94
+
95
+ Returns:
96
+ DashScopeAPIResponse: The job info
97
+ """
98
+ params = {'action': 'getPolicy'}
99
+ params['model'] = model
100
+ return super().get(None, api_key, params=params, **kwargs)
101
+
102
+
103
+ def check_and_upload(model, elem: dict, key: str, api_key):
104
+ is_upload = False
105
+ content = elem[key]
106
+ if content.startswith(FILE_PATH_SCHEMA):
107
+ file_path = unquote_plus(urlparse(content).path)
108
+ if os.path.exists(file_path):
109
+ file_url = OssUtils.upload(model=model,
110
+ file_path=file_path,
111
+ api_key=api_key)
112
+ if file_url is None:
113
+ raise UploadFileException('Uploading file: %s failed' %
114
+ content)
115
+ elem[key] = file_url
116
+ is_upload = True
117
+ else:
118
+ raise InvalidInput('The file: %s is not exists!' % file_path)
119
+ return is_upload
120
+
121
+
122
+ def preprocess_message_element(model: str, elem: List[dict], api_key: str):
123
+ is_upload = False
124
+ if REQUEST_CONTENT_TEXT in elem:
125
+ is_upload = check_and_upload(model, elem, REQUEST_CONTENT_TEXT,
126
+ api_key)
127
+ elif REQUEST_CONTENT_IMAGE in elem:
128
+ is_upload = check_and_upload(model, elem, REQUEST_CONTENT_IMAGE,
129
+ api_key)
130
+ elif REQUEST_CONTENT_AUDIO in elem:
131
+ is_upload = check_and_upload(model, elem, REQUEST_CONTENT_AUDIO,
132
+ api_key)
133
+ return is_upload
dashscope/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = '1.12.0'
1
+ __version__ = '1.13.1'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dashscope
3
- Version: 1.12.0
3
+ Version: 1.13.1
4
4
  Summary: dashscope client sdk library
5
5
  Home-page: https://dashscope.aliyun.com/
6
6
  Author: Alibaba
@@ -0,0 +1,59 @@
1
+ dashscope/__init__.py,sha256=ZxCknpY8JWS4tnlSiH-2rIRnjSJwuCgeY7P5wb_nJgs,1897
2
+ dashscope/cli.py,sha256=30Qbd6EvbIBFtE-cPgkaTkKZzMZuyo2YPjLZQ8z9UME,22964
3
+ dashscope/deployment.py,sha256=uhlQYOiu1baMQxQnFmRwI6ces0I-_DKp8uej_L0v1eY,4400
4
+ dashscope/file.py,sha256=Dv2Fz3DLbcye2uuQxyQwRM7ky27OthouLXIpSQagQy4,3324
5
+ dashscope/finetune.py,sha256=5QlIcnFCfSjN3gn9A2FO0kLUDa9Rx_jSc44ezT3aBEo,5118
6
+ dashscope/model.py,sha256=iuIfal-vOo0yav0HXPdA7f93vd5JNTGIAdCG_WIYkW8,1158
7
+ dashscope/version.py,sha256=AWOJJXuaKFwrwxYimWHjFlOhtOJuGrGuiJ0JN7ehebE,23
8
+ dashscope/aigc/__init__.py,sha256=s-MCA87KYiVumYtKtJi5IMN7xelSF6TqEU3s3_7RF-Y,327
9
+ dashscope/aigc/code_generation.py,sha256=bizJb3zGZx3pB74FKMIcnOi_6jkxpKgx__6urzqhQ_E,10627
10
+ dashscope/aigc/conversation.py,sha256=AU6gv52JYe8tBPZjYGJe2Aa2z50Nasb3f5Bhe4qlAGM,12022
11
+ dashscope/aigc/generation.py,sha256=FxEOFpgwkLLL2gLMr1YHJ0mz-jz3MKTjBN7SUBbzgxY,8157
12
+ dashscope/aigc/image_synthesis.py,sha256=P5KFBqYLSNrztyxdrOjpBgUDLt-o6FKVa7JyIOWxbYQ,7789
13
+ dashscope/aigc/multimodal_conversation.py,sha256=D5JYLLxwdGsgCrYeF0gNvE1kR5Vbmq1g0MiRU-4hlZQ,5228
14
+ dashscope/api_entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
+ dashscope/api_entities/aiohttp_request.py,sha256=1WuvODWcm-merZnAFpxV2Y9QohcB3hSGS_YkwK18O7g,10359
16
+ dashscope/api_entities/api_request_data.py,sha256=JUMcfpJjKXEZLCBSFIDpgoaeQYk5uK9-CwhM4OHIHFQ,5463
17
+ dashscope/api_entities/api_request_factory.py,sha256=yRCY9OVGagsEvid6RXwvwiQv_8ZTEqYaKXnVLd9F9pA,4281
18
+ dashscope/api_entities/base_request.py,sha256=cXUL7xqSV8wBr5d-1kx65AO3IsRR9A_ps6Lok-v-MKM,926
19
+ dashscope/api_entities/dashscope_response.py,sha256=1KdBib5xOftcKXLzTETe5LElGy2mB8IG8E3JZrGOaAY,15814
20
+ dashscope/api_entities/http_request.py,sha256=8bNtylkE98h1SeCrxTPow4Dqy3wPXWp9wHPdeWAIDe8,9637
21
+ dashscope/api_entities/websocket_request.py,sha256=VK4488_3Qi2Rwx7i1FGb-lPu_BSNZAoedOqnHzOxTH8,15844
22
+ dashscope/audio/__init__.py,sha256=vlw0TFVRdeRWfzmJxhzarVUqkMs-DZNf4GiMtm3C8XE,45
23
+ dashscope/audio/asr/__init__.py,sha256=-s180qWn_JPSpCo1q0aDJJ5HQ3zTzD4z5yUwsRqH4aU,275
24
+ dashscope/audio/asr/asr_phrase_manager.py,sha256=BNrRBGGoAW_rcxoi_euh6bRktJO6asTiGroE8PMh1Xg,6641
25
+ dashscope/audio/asr/recognition.py,sha256=Rw88mdZuHV2pTb_aa8uc3NMVHODpdK8kdNZ9KcYOzPk,17112
26
+ dashscope/audio/asr/transcription.py,sha256=o2EAxwwEF9exQLFlcLakMJ8w76pksPrWzbybq5IFq2M,7964
27
+ dashscope/audio/tts/__init__.py,sha256=fbnieZX9yNFNh5BsxLpLXb63jlxzxrdCJakV3ignjlQ,194
28
+ dashscope/audio/tts/speech_synthesizer.py,sha256=wKcpUo6L1yc0OZUajUh0xbtYubTkm-M89IGSAyDwLBo,7425
29
+ dashscope/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
+ dashscope/client/base_api.py,sha256=1YTlwY2_tlvMLaz6oGh1BNQt5GT_Xx3obS6nKOvnpkY,31749
31
+ dashscope/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
+ dashscope/common/api_key.py,sha256=5Stp0odL5JSuIO3qJBp23QNppuGbqhhvKPS66qbMs0I,1986
33
+ dashscope/common/constants.py,sha256=2zF1l2BDnDDa7oFSfg3gLV34A-6Lr-3_o8QfX60rkCk,2640
34
+ dashscope/common/env.py,sha256=oQOZW5JyEeTSde394un2lpDJ5RBh4fMU9hBfbtrKKkc,869
35
+ dashscope/common/error.py,sha256=ihgDx08P2fw0cB-0HsA6MMgO0vY-6yIhxXHlIIF8c0Y,1641
36
+ dashscope/common/logging.py,sha256=ecGxylG3bWES_Xv5-BD6ep4_0Ciu7F6ZPBjiZtu9Jx4,984
37
+ dashscope/common/message_manager.py,sha256=i5149WzDk6nWmdFaHzYx4USXMBeX18GKSI-F4fLwbN0,1097
38
+ dashscope/common/utils.py,sha256=UZSK6AStBVriVTR5wdxfcKTBDzCEN6PLyEv3avZ8YwQ,6679
39
+ dashscope/embeddings/__init__.py,sha256=-dxHaoxZZVuP-wAGUIa3sNNh8CQwaeWj2UlqsDy1sV4,240
40
+ dashscope/embeddings/batch_text_embedding.py,sha256=M8jvdz304Oh5ZwegHWGwTda9AezYsgVC59HnweuCagY,7977
41
+ dashscope/embeddings/batch_text_embedding_response.py,sha256=WziXlQsFIkL1kPc_7lRG1HtqgkO5vVThtnNqExJggNU,2000
42
+ dashscope/embeddings/multimodal_embedding.py,sha256=a6aQYR1Ikmh4ZOGldfVTP0KDAlCVzM6pxDj2pNd5w3M,3779
43
+ dashscope/embeddings/text_embedding.py,sha256=X7_FBM57gQQCu8xb-W-jTlSsathaCiAtW0mdb19N-PM,1714
44
+ dashscope/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
+ dashscope/io/input_output.py,sha256=iZ1X1x1btdoZK2VeC9JsKkag2eaXwqfNT3Q6SrmRi2w,3941
46
+ dashscope/nlp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
+ dashscope/nlp/understanding.py,sha256=uVkf_4iULnlnuGmEX3taKiHgzxu173vvgVwY5EO2C2Y,2803
48
+ dashscope/protocol/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
+ dashscope/protocol/websocket.py,sha256=z-v6PGx3L4zYBANuC48s7SWSQSwRCDoh0zcfhv9Bf8U,561
50
+ dashscope/tokenizers/__init__.py,sha256=zRNBe3ONNOA3T2gnxhlG3PTjkVOQBUYotMMJAruyk70,71
51
+ dashscope/tokenizers/tokenization.py,sha256=WhSdiH0Bu-pGQCsJfC91LL_y5tVDzCtQ7tTs2Tox-HY,4543
52
+ dashscope/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
+ dashscope/utils/oss_utils.py,sha256=arw_ZbRefOrWwzyE7l1HBz8VQcbwNfmEfJHB2-TCVp8,5330
54
+ dashscope-1.13.1.dist-info/LICENSE,sha256=Izp5L1DF1Mbza6qojkqNNWlE_mYLnr4rmzx2EBF8YFw,11413
55
+ dashscope-1.13.1.dist-info/METADATA,sha256=fbh1Abw_GJl4A36dunooOlWOPdzCMyczuZ4x-_HTMK4,7220
56
+ dashscope-1.13.1.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
57
+ dashscope-1.13.1.dist-info/entry_points.txt,sha256=raEp5dOuj8whJ7yqZlDM8WQ5p2RfnGrGNo0QLQEnatY,50
58
+ dashscope-1.13.1.dist-info/top_level.txt,sha256=woqavFJK9zas5xTqynmALqOtlafghjsk63Xk86powTU,10
59
+ dashscope-1.13.1.dist-info/RECORD,,
@@ -1,56 +0,0 @@
1
- dashscope/__init__.py,sha256=xZqahcgHwKtVXW56okOnDUGLhakbaPwZGCT0wCjJjtI,1973
2
- dashscope/cli.py,sha256=30Qbd6EvbIBFtE-cPgkaTkKZzMZuyo2YPjLZQ8z9UME,22964
3
- dashscope/deployment.py,sha256=uhlQYOiu1baMQxQnFmRwI6ces0I-_DKp8uej_L0v1eY,4400
4
- dashscope/file.py,sha256=Dv2Fz3DLbcye2uuQxyQwRM7ky27OthouLXIpSQagQy4,3324
5
- dashscope/finetune.py,sha256=4ZubAL0Znt7Nmj7qwOGvXAuUSzjFd5GUFgzfREvH27c,5008
6
- dashscope/model.py,sha256=iuIfal-vOo0yav0HXPdA7f93vd5JNTGIAdCG_WIYkW8,1158
7
- dashscope/version.py,sha256=68GNJTQv5qIW_NND-ON34BeDlaBPM89Dp34LgcTS2k8,23
8
- dashscope/aigc/__init__.py,sha256=s-MCA87KYiVumYtKtJi5IMN7xelSF6TqEU3s3_7RF-Y,327
9
- dashscope/aigc/code_generation.py,sha256=NrXK4mREfZkvRV7emmeQPiw7gykhSzP1aJzOd9t3RVA,10591
10
- dashscope/aigc/conversation.py,sha256=Pn7AkJ2cihybHZGojmIr141VsMxyYHH6z-TWrSbskDE,11659
11
- dashscope/aigc/generation.py,sha256=P6MlpotBQwF5mQ3GSDsuDHa1mhaa77UHXzGY4r2fLdQ,7702
12
- dashscope/aigc/image_synthesis.py,sha256=P5KFBqYLSNrztyxdrOjpBgUDLt-o6FKVa7JyIOWxbYQ,7789
13
- dashscope/aigc/multimodal_conversation.py,sha256=iQylBpyhW7wms9iPnsLzBDdGD5krcahCKn-sbclQDU0,4121
14
- dashscope/api_entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- dashscope/api_entities/aiohttp_request.py,sha256=1WuvODWcm-merZnAFpxV2Y9QohcB3hSGS_YkwK18O7g,10359
16
- dashscope/api_entities/api_request_data.py,sha256=HwleZWJAHD_5ufvI3mYUO-ZjZtHon4wQX_Y2mE_zqkU,5471
17
- dashscope/api_entities/api_request_factory.py,sha256=tYG6rl8NxbTjpAhQXSuAhmk6cUJqL7o63N3w2OMt3Lg,4412
18
- dashscope/api_entities/base_request.py,sha256=cXUL7xqSV8wBr5d-1kx65AO3IsRR9A_ps6Lok-v-MKM,926
19
- dashscope/api_entities/dashscope_response.py,sha256=lwIwuQDDKpg2utuhhGCCUBprJ8duyL_oRcLn53cOox4,15798
20
- dashscope/api_entities/http_request.py,sha256=8bNtylkE98h1SeCrxTPow4Dqy3wPXWp9wHPdeWAIDe8,9637
21
- dashscope/api_entities/websocket_request.py,sha256=VK4488_3Qi2Rwx7i1FGb-lPu_BSNZAoedOqnHzOxTH8,15844
22
- dashscope/audio/__init__.py,sha256=vlw0TFVRdeRWfzmJxhzarVUqkMs-DZNf4GiMtm3C8XE,45
23
- dashscope/audio/asr/__init__.py,sha256=NShkWnph8E6MvyIg3pmakyVf5gDqkl7wlqz_KzMsfVc,198
24
- dashscope/audio/asr/recognition.py,sha256=1sLVo60_FNyiJEf6xAQgcD86Bn6Fg7FF74kFuOgLU9U,14280
25
- dashscope/audio/asr/transcription.py,sha256=0B7xC2AeqdL16G5OSD-GUdM0qlh-dKQ5GLtMv-9sQRQ,5614
26
- dashscope/audio/tts/__init__.py,sha256=fbnieZX9yNFNh5BsxLpLXb63jlxzxrdCJakV3ignjlQ,194
27
- dashscope/audio/tts/speech_synthesizer.py,sha256=wKcpUo6L1yc0OZUajUh0xbtYubTkm-M89IGSAyDwLBo,7425
28
- dashscope/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
- dashscope/client/base_api.py,sha256=OwNc8YOXAqRl3VHdHOqOnywXY3k-j5VGNn64boplDCg,31622
30
- dashscope/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
- dashscope/common/api_key.py,sha256=5Stp0odL5JSuIO3qJBp23QNppuGbqhhvKPS66qbMs0I,1986
32
- dashscope/common/constants.py,sha256=6IR7Vjy4k7_E7A7zHI0WHhiopD4nLK7HV74i4ncjLWk,2518
33
- dashscope/common/env.py,sha256=oQOZW5JyEeTSde394un2lpDJ5RBh4fMU9hBfbtrKKkc,869
34
- dashscope/common/error.py,sha256=zbWWjgBXWFNtyVBMQpjuLhOKN4k5XlyByrHn1yWy4Qc,1592
35
- dashscope/common/logging.py,sha256=ecGxylG3bWES_Xv5-BD6ep4_0Ciu7F6ZPBjiZtu9Jx4,984
36
- dashscope/common/message_manager.py,sha256=i5149WzDk6nWmdFaHzYx4USXMBeX18GKSI-F4fLwbN0,1097
37
- dashscope/common/utils.py,sha256=7V5yplWMh85S02y9h0z3WnRbNlnd1V2u0deDft0Ft0g,6435
38
- dashscope/embeddings/__init__.py,sha256=-dxHaoxZZVuP-wAGUIa3sNNh8CQwaeWj2UlqsDy1sV4,240
39
- dashscope/embeddings/batch_text_embedding.py,sha256=dFYAp_rLvTbaxY5KccwdL4NGlFJ9aVb_6TzmYeZLPNo,7919
40
- dashscope/embeddings/batch_text_embedding_response.py,sha256=WziXlQsFIkL1kPc_7lRG1HtqgkO5vVThtnNqExJggNU,2000
41
- dashscope/embeddings/multimodal_embedding.py,sha256=nN4d_D7RddsRVfrdbhAvvmSzFM_9CUJz6ZvGBLFK334,2871
42
- dashscope/embeddings/text_embedding.py,sha256=nI-d4zcuZA_tpfu7ktI5SZ8V-dGngVclZwxGFAh4qmE,1666
43
- dashscope/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
- dashscope/io/input_output.py,sha256=iZ1X1x1btdoZK2VeC9JsKkag2eaXwqfNT3Q6SrmRi2w,3941
45
- dashscope/nlp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
- dashscope/nlp/understanding.py,sha256=IvTXvA6DFCXcuab9BWE8bg93iCcraWu9OZim2TEk8vg,2800
47
- dashscope/protocol/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
- dashscope/protocol/websocket.py,sha256=z-v6PGx3L4zYBANuC48s7SWSQSwRCDoh0zcfhv9Bf8U,561
49
- dashscope/tokenizers/__init__.py,sha256=J9EGOJELDrsD8lvTUn1fRDyUAh4wLyw0zlYozuBVA6M,72
50
- dashscope/tokenizers/tokenization.py,sha256=WhSdiH0Bu-pGQCsJfC91LL_y5tVDzCtQ7tTs2Tox-HY,4543
51
- dashscope-1.12.0.dist-info/LICENSE,sha256=Izp5L1DF1Mbza6qojkqNNWlE_mYLnr4rmzx2EBF8YFw,11413
52
- dashscope-1.12.0.dist-info/METADATA,sha256=A88s1-328ycf2ZAprSnt6YQhtUThhXKRjeU3Em7D9VE,7220
53
- dashscope-1.12.0.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
54
- dashscope-1.12.0.dist-info/entry_points.txt,sha256=raEp5dOuj8whJ7yqZlDM8WQ5p2RfnGrGNo0QLQEnatY,50
55
- dashscope-1.12.0.dist-info/top_level.txt,sha256=woqavFJK9zas5xTqynmALqOtlafghjsk63Xk86powTU,10
56
- dashscope-1.12.0.dist-info/RECORD,,