File tree Expand file tree Collapse file tree 1 file changed +13
-8
lines changed
Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Original file line number Diff line number Diff line change 22import tiktoken
33import openai
44
5+ from chatblade import errors
6+
57from . import utils
68
79Message = collections .namedtuple ("Message" , ["role" , "content" ])
@@ -62,11 +64,14 @@ def query_chat_gpt(messages, config):
6264 openai .api_key = config ["openai_api_key" ]
6365 config = utils .merge_dicts (DEFAULT_OPENAI_SETTINGS , config )
6466 dict_messages = [msg ._asdict () for msg in messages ]
65- result = openai .ChatCompletion .create (messages = dict_messages , ** config )
66- if not isinstance (result , dict ):
67- raise ValueError (
68- "OpenAI Result is not a dict got %s: %s" % (type (result ), result )
69- )
70- response_message = [choice ["message" ] for choice in result ["choices" ]][0 ]
71- message = Message (response_message ["role" ], response_message ["content" ])
72- return message , result
67+ try :
68+ result = openai .ChatCompletion .create (messages = dict_messages , ** config )
69+ if not isinstance (result , dict ):
70+ raise ValueError (
71+ "OpenAI Result is not a dict got %s: %s" % (type (result ), result )
72+ )
73+ response_message = [choice ["message" ] for choice in result ["choices" ]][0 ]
74+ message = Message (response_message ["role" ], response_message ["content" ])
75+ return message , result
76+ except openai .InvalidRequestError as e :
77+ raise errors .ChatbladeError (f"openai.invalidRequestError: { e } " )
You can’t perform that action at this time.
0 commit comments