You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Invalid Authentication / Incorrect API key provided / you must be a member of an organization to use the API
API가 가 형식에 맞지 않을 때 (e.g. "sk-test")
403
PermissionDeniedError
OpenAI API가 지원되지 않는 국가에서 API를 요청하거나, API 키가 사용 권한이 부여되어 있지 않음
테스트 하기 어려움
404
NotFoundError
요청하려는 엔티티가 없을 때
model="davinci-codex" #사용 권한이 없는 모델
422
UnprocessableEntityError
테스트 하기 어려움
429
RateLimitError
과도한 API 호출
예) 1초에 100000번 API 요청함
>=500
InternalServerError
max_tokens=1000000 # 매우 높은 max_tokens 설정
N/A
APIConnectionError
테스트하기 어려움
Type Error
Type Error
min_tokens= 1 # 잘못된 max_tokens 설정
error 핸들러 return 형식(json)
# 예시
{
'error': "BadRequestError", # 에러 종류'code': 400, # 에러 코드 'description': f"죄송해요. 시스템 오류가 발생했어요. 잠시 후 다시 시도해주세요.", # 사용자에게 전달할 에러 메시지 'error_message': str(e) # 오리지널 에러 메세지 e.g error code: 400 - {'error': {'message': \"Invalid type for 'messages': expected an array of objects, but got an integer instead.\", 'type': 'invalid_request_error', 'param': 'messages', 'code': 'invalid_type'}}",
}
params=request.get_json()
ifnotparams :
raiseBadRequest("No request body")
elif'content'notinparamsandnotparams['content'].strip():
raiseBadRequest("No 'content' field in request body or value for 'content' is empty")
/conv - llm()
/title - make_title()
/test - stream_output()
2) **ChatGPT API 요청 제대로 수행하지 못했을 때 **
API 사용 3가지 상황
topic classification (날씨/교통/그외 주제) - cls_chatgpt로 처리
RAG 답변 안되었을 때
기타 답변 생성
수정할 부분
RAG /conv
elifnotresponse['result']:
# RAG를 수행하지 못했을 때 - 에러 메시지 logging.error("error""RAG를 요청 했으나 결과가 없음. 400")
returnjsonify({"error": "No response from RAG"}), 400# 로깅으로 바꾸기
[ ]
else:
logging.error("chat gpt failed to classify: result is None")
returnjsonify({"error": "Topic classification failed"}), 500
[ ]
# 날씨, 교통, 그외 주제인지 분류하기 topic=topic_classification(user_input)
iftopic=="WEATHER":
....
else:
logging.error("chat gpt failed to classify: result is None")
returnjsonify({"error": "Topic classification failed"}), 500
chatgpt()
[] make_title()
if title is None:
return jsonify({"error": "죄송해요. 챗 지피티가 제목을 제대로 가져오지 못했어요."})
title = title.strip('"') # 앞뒤의 큰 따옴표 제거
return jsonify({"title": title})
The text was updated successfully, but these errors were encountered:
current status
에러 났을 때 json 형식으로 return
desired status
Expected solutions
참고 사이트 :
1. error_handler.py 생성하여 error handling code 작성
error 핸들러 return 형식(json)
코드로 찍어본 openAI api 에러 종류
2. app.py 에 적용
1) request 받아올 때
문제: request body가 비어있거나 필요한 데이터 필드가 없을 때
해결 방안
2) **ChatGPT API 요청 제대로 수행하지 못했을 때 **
API 사용 3가지 상황
수정할 부분
chatgpt()
[] make_title()
The text was updated successfully, but these errors were encountered: