@@ -82,24 +82,37 @@ def __init__(
8282 disable_request_logging = disable_request_logging ,
8383 )
8484
85- def translate (
86- self , params : Union [TranslateParams , TranslateImageParams ]
87- ) -> Union [TranslateResponse , TranslateListResponse , TranslateImageResponse ]:
88- if "url" in params or "file_store_key" in params :
89- path = "/ai/translate/image"
90- else :
91- path = "/ai/translate"
85+ def translate_text (
86+ self , params : TranslateParams
87+ ) -> Union [TranslateResponse , TranslateListResponse ]:
9288 resp = Request (
9389 config = self .config ,
94- path = path ,
90+ path = "/ai/translate" ,
9591 params = cast (Dict [Any , Any ], params ),
9692 verb = "post" ,
9793 ).perform ()
9894 return resp
9995
96+ def translate_image (
97+ self , params : TranslateImageParams
98+ ) -> TranslateImageResponse :
99+ resp = Request (
100+ config = self .config ,
101+ path = "/ai/translate/image" ,
102+ params = cast (Dict [Any , Any ], params ),
103+ verb = "post" ,
104+ ).perform ()
105+ return resp
106+
107+ def translate (
108+ self , params : Union [TranslateParams , TranslateImageParams ]
109+ ) -> Union [TranslateResponse , TranslateListResponse , TranslateImageResponse ]:
110+ if "url" in params or "file_store_key" in params :
111+ return self .translate_image (params )
112+ return self .translate_text (params )
100113
101- class AsyncTranslate (ClientConfig ):
102114
115+ class AsyncTranslate (ClientConfig ):
103116 config : RequestConfig
104117
105118 def __init__ (
@@ -115,17 +128,31 @@ def __init__(
115128 disable_request_logging = disable_request_logging ,
116129 )
117130
118- async def translate (
119- self , params : Union [TranslateParams , TranslateImageParams ]
120- ) -> Union [TranslateResponse , TranslateListResponse , TranslateImageParams ]:
121- if "url" in params or "file_store_key" in params :
122- path = "/ai/translate/image"
123- else :
124- path = "/ai/translate"
131+ async def translate_text (
132+ self , params : TranslateParams
133+ ) -> Union [TranslateResponse , TranslateListResponse ]:
125134 resp = await AsyncRequest (
126135 config = self .config ,
127- path = path ,
136+ path = "/ai/translate" ,
128137 params = cast (Dict [Any , Any ], params ),
129138 verb = "post" ,
130139 ).perform ()
131140 return resp
141+
142+ async def translate_image (
143+ self , params : TranslateImageParams
144+ ) -> TranslateImageResponse :
145+ resp = await AsyncRequest (
146+ config = self .config ,
147+ path = "/ai/translate/image" ,
148+ params = cast (Dict [Any , Any ], params ),
149+ verb = "post" ,
150+ ).perform ()
151+ return resp
152+
153+ async def translate (
154+ self , params : Union [TranslateParams , TranslateImageParams ]
155+ ) -> Union [TranslateResponse , TranslateListResponse , TranslateImageResponse ]:
156+ if "url" in params or "file_store_key" in params :
157+ return self .translate_image (params )
158+ return await self .translate_text (params )
0 commit comments