| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | from typing import Optional | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class LLMError(Exception): | 
					
						
							|  |  |  |     """Base class for all LLM exceptions.""" | 
					
						
							|  |  |  |     description: Optional[str] = None | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def __init__(self, description: Optional[str] = None) -> None: | 
					
						
							|  |  |  |         self.description = description | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class LLMBadRequestError(LLMError): | 
					
						
							|  |  |  |     """Raised when the LLM returns bad request.""" | 
					
						
							|  |  |  |     description = "Bad Request" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ProviderTokenNotInitError(Exception): | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Custom exception raised when the provider token is not initialized. | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     description = "Provider Token Not Init" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-17 00:14:19 +08:00
										 |  |  |     def __init__(self, *args, **kwargs): | 
					
						
							|  |  |  |         self.description = args[0] if args else self.description | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | class QuotaExceededError(Exception): | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Custom exception raised when the quota for a provider has been exceeded. | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     description = "Quota Exceeded" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ModelCurrentlyNotSupportError(Exception): | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     Custom exception raised when the model not support | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     description = "Model Currently Not Support" |