Skip to content

Commit b701775

Browse files
committed
SDK regeneration
1 parent 4a04731 commit b701775

17 files changed

+135
-53
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "cohere"
3-
version = "5.0.0a2"
3+
version = "5.0.0a3"
44
description = ""
55
readme = "README.md"
66
authors = []

src/cohere/__init__.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
ChatSearchResultsEvent,
2323
ChatStreamEndEvent,
2424
ChatStreamEndEventFinishReason,
25-
ChatStreamEndEventResponse,
2625
ChatStreamEvent,
2726
ChatStreamRequestCitationQuality,
2827
ChatStreamRequestPromptOverride,
@@ -87,7 +86,6 @@
8786
RerankResponse,
8887
RerankResponseResultsItem,
8988
RerankResponseResultsItemDocument,
90-
SearchQueriesOnlyResponse,
9189
SingleGeneration,
9290
SingleGenerationInStream,
9391
SingleGenerationTokenLikelihoodsItem,
@@ -105,7 +103,7 @@
105103
TokenizeResponse,
106104
UpdateConnectorResponse,
107105
)
108-
from .errors import BadRequestError, ForbiddenError, InternalServerError, NotFoundError
106+
from .errors import BadRequestError, ForbiddenError, InternalServerError, NotFoundError, TooManyRequestsError
109107
from .resources import (
110108
CreateEmbedJobRequestTruncate,
111109
DatasetsCreateResponse,
@@ -141,7 +139,6 @@
141139
"ChatSearchResultsEvent",
142140
"ChatStreamEndEvent",
143141
"ChatStreamEndEventFinishReason",
144-
"ChatStreamEndEventResponse",
145142
"ChatStreamEvent",
146143
"ChatStreamRequestCitationQuality",
147144
"ChatStreamRequestPromptOverride",
@@ -215,7 +212,6 @@
215212
"RerankResponse",
216213
"RerankResponseResultsItem",
217214
"RerankResponseResultsItemDocument",
218-
"SearchQueriesOnlyResponse",
219215
"SingleGeneration",
220216
"SingleGenerationInStream",
221217
"SingleGenerationTokenLikelihoodsItem",
@@ -231,6 +227,7 @@
231227
"SummarizeRequestLength",
232228
"SummarizeResponse",
233229
"TokenizeResponse",
230+
"TooManyRequestsError",
234231
"UpdateConnectorResponse",
235232
"connectors",
236233
"datasets",

src/cohere/client.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from .environment import ClientEnvironment
1515
from .errors.bad_request_error import BadRequestError
1616
from .errors.internal_server_error import InternalServerError
17+
from .errors.too_many_requests_error import TooManyRequestsError
1718
from .resources.connectors.client import AsyncConnectorsClient, ConnectorsClient
1819
from .resources.datasets.client import AsyncDatasetsClient, DatasetsClient
1920
from .resources.embed_jobs.client import AsyncEmbedJobsClient, EmbedJobsClient
@@ -209,6 +210,8 @@ def chat_stream(
209210
yield pydantic.parse_obj_as(StreamedChatResponse, json.loads(_text)) # type: ignore
210211
return
211212
_response.read()
213+
if _response.status_code == 429:
214+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
212215
try:
213216
_response_json = _response.json()
214217
except JSONDecodeError:
@@ -375,6 +378,8 @@ def chat(
375378
)
376379
if 200 <= _response.status_code < 300:
377380
return pydantic.parse_obj_as(NonStreamedChatResponse, _response.json()) # type: ignore
381+
if _response.status_code == 429:
382+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
378383
try:
379384
_response_json = _response.json()
380385
except JSONDecodeError:
@@ -511,6 +516,8 @@ def generate_stream(
511516
_response.read()
512517
if _response.status_code == 400:
513518
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
519+
if _response.status_code == 429:
520+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
514521
if _response.status_code == 500:
515522
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
516523
try:
@@ -659,6 +666,8 @@ def generate(
659666
return pydantic.parse_obj_as(Generation, _response.json()) # type: ignore
660667
if _response.status_code == 400:
661668
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
669+
if _response.status_code == 429:
670+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
662671
if _response.status_code == 500:
663672
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
664673
try:
@@ -735,6 +744,8 @@ def embed(
735744
return pydantic.parse_obj_as(EmbedResponse, _response.json()) # type: ignore
736745
if _response.status_code == 400:
737746
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
747+
if _response.status_code == 429:
748+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
738749
if _response.status_code == 500:
739750
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
740751
try:
@@ -803,6 +814,8 @@ def rerank(
803814
)
804815
if 200 <= _response.status_code < 300:
805816
return pydantic.parse_obj_as(RerankResponse, _response.json()) # type: ignore
817+
if _response.status_code == 429:
818+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
806819
try:
807820
_response_json = _response.json()
808821
except JSONDecodeError:
@@ -908,6 +921,8 @@ def classify(
908921
return pydantic.parse_obj_as(ClassifyResponse, _response.json()) # type: ignore
909922
if _response.status_code == 400:
910923
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
924+
if _response.status_code == 429:
925+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
911926
if _response.status_code == 500:
912927
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
913928
try:
@@ -977,6 +992,8 @@ def summarize(
977992
)
978993
if 200 <= _response.status_code < 300:
979994
return pydantic.parse_obj_as(SummarizeResponse, _response.json()) # type: ignore
995+
if _response.status_code == 429:
996+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
980997
try:
981998
_response_json = _response.json()
982999
except JSONDecodeError:
@@ -1017,6 +1034,8 @@ def tokenize(self, *, text: str, model: typing.Optional[str] = OMIT) -> Tokenize
10171034
return pydantic.parse_obj_as(TokenizeResponse, _response.json()) # type: ignore
10181035
if _response.status_code == 400:
10191036
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
1037+
if _response.status_code == 429:
1038+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
10201039
if _response.status_code == 500:
10211040
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
10221041
try:
@@ -1056,6 +1075,8 @@ def detokenize(self, *, tokens: typing.List[int], model: typing.Optional[str] =
10561075
)
10571076
if 200 <= _response.status_code < 300:
10581077
return pydantic.parse_obj_as(DetokenizeResponse, _response.json()) # type: ignore
1078+
if _response.status_code == 429:
1079+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
10591080
try:
10601081
_response_json = _response.json()
10611082
except JSONDecodeError:
@@ -1215,6 +1236,8 @@ async def chat_stream(
12151236
yield pydantic.parse_obj_as(StreamedChatResponse, json.loads(_text)) # type: ignore
12161237
return
12171238
await _response.aread()
1239+
if _response.status_code == 429:
1240+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
12181241
try:
12191242
_response_json = _response.json()
12201243
except JSONDecodeError:
@@ -1381,6 +1404,8 @@ async def chat(
13811404
)
13821405
if 200 <= _response.status_code < 300:
13831406
return pydantic.parse_obj_as(NonStreamedChatResponse, _response.json()) # type: ignore
1407+
if _response.status_code == 429:
1408+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
13841409
try:
13851410
_response_json = _response.json()
13861411
except JSONDecodeError:
@@ -1517,6 +1542,8 @@ async def generate_stream(
15171542
await _response.aread()
15181543
if _response.status_code == 400:
15191544
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
1545+
if _response.status_code == 429:
1546+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
15201547
if _response.status_code == 500:
15211548
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
15221549
try:
@@ -1665,6 +1692,8 @@ async def generate(
16651692
return pydantic.parse_obj_as(Generation, _response.json()) # type: ignore
16661693
if _response.status_code == 400:
16671694
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
1695+
if _response.status_code == 429:
1696+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
16681697
if _response.status_code == 500:
16691698
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
16701699
try:
@@ -1741,6 +1770,8 @@ async def embed(
17411770
return pydantic.parse_obj_as(EmbedResponse, _response.json()) # type: ignore
17421771
if _response.status_code == 400:
17431772
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
1773+
if _response.status_code == 429:
1774+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
17441775
if _response.status_code == 500:
17451776
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
17461777
try:
@@ -1809,6 +1840,8 @@ async def rerank(
18091840
)
18101841
if 200 <= _response.status_code < 300:
18111842
return pydantic.parse_obj_as(RerankResponse, _response.json()) # type: ignore
1843+
if _response.status_code == 429:
1844+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
18121845
try:
18131846
_response_json = _response.json()
18141847
except JSONDecodeError:
@@ -1914,6 +1947,8 @@ async def classify(
19141947
return pydantic.parse_obj_as(ClassifyResponse, _response.json()) # type: ignore
19151948
if _response.status_code == 400:
19161949
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
1950+
if _response.status_code == 429:
1951+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
19171952
if _response.status_code == 500:
19181953
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
19191954
try:
@@ -1983,6 +2018,8 @@ async def summarize(
19832018
)
19842019
if 200 <= _response.status_code < 300:
19852020
return pydantic.parse_obj_as(SummarizeResponse, _response.json()) # type: ignore
2021+
if _response.status_code == 429:
2022+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
19862023
try:
19872024
_response_json = _response.json()
19882025
except JSONDecodeError:
@@ -2023,6 +2060,8 @@ async def tokenize(self, *, text: str, model: typing.Optional[str] = OMIT) -> To
20232060
return pydantic.parse_obj_as(TokenizeResponse, _response.json()) # type: ignore
20242061
if _response.status_code == 400:
20252062
raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
2063+
if _response.status_code == 429:
2064+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
20262065
if _response.status_code == 500:
20272066
raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
20282067
try:
@@ -2062,6 +2101,8 @@ async def detokenize(self, *, tokens: typing.List[int], model: typing.Optional[s
20622101
)
20632102
if 200 <= _response.status_code < 300:
20642103
return pydantic.parse_obj_as(DetokenizeResponse, _response.json()) # type: ignore
2104+
if _response.status_code == 429:
2105+
raise TooManyRequestsError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
20652106
try:
20662107
_response_json = _response.json()
20672108
except JSONDecodeError:

src/cohere/core/client_wrapper.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def get_headers(self) -> typing.Dict[str, str]:
2121
headers: typing.Dict[str, str] = {
2222
"X-Fern-Language": "Python",
2323
"X-Fern-SDK-Name": "cohere",
24-
"X-Fern-SDK-Version": "5.0.0a2",
24+
"X-Fern-SDK-Version": "5.0.0a3",
2525
}
2626
if self._client_name is not None:
2727
headers["X-Client-Name"] = self._client_name

src/cohere/errors/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@
44
from .forbidden_error import ForbiddenError
55
from .internal_server_error import InternalServerError
66
from .not_found_error import NotFoundError
7+
from .too_many_requests_error import TooManyRequestsError
78

8-
__all__ = ["BadRequestError", "ForbiddenError", "InternalServerError", "NotFoundError"]
9+
__all__ = ["BadRequestError", "ForbiddenError", "InternalServerError", "NotFoundError", "TooManyRequestsError"]
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# This file was auto-generated by Fern from our API Definition.
2+
3+
import typing
4+
5+
from ..core.api_error import ApiError
6+
7+
8+
class TooManyRequestsError(ApiError):
9+
def __init__(self, body: typing.Any):
10+
super().__init__(status_code=429, body=body)

0 commit comments

Comments
 (0)