OpenAI
-
Python Typing에 대해 알아보기(1) Literal (openai python 소스코드로 살펴보기)카테고리 없음 2024. 2. 24. 22:47
Literal Literal은 타입 체커에게 특정 값을 가진다는 것을 명시적으로 전달할 때 쓰입니다. 코드로 예시를 보겠습니다. 아래 func함수에서 x값에는 4가 들어와야 합니다. func에 3을 넘기면 IDE(pycharm)에서 문제가 있다고 노란 불이 들어오는 것을 볼 수 있습니다. 에러 내용도 4가 들어와야 하는데 3이 들어왔다고 말하고 있습니다. openai 코드 예시 (Literal ) openai 소스코드로 Literal을 살펴보겠습니다. exception 클래스를 정의할 때 http 상태코드에 맞는 명시적인 값을 받도록 Literal을 사용했습니다. Literal[400] => 400 에러 Literal[401] => 401 에러 .. Literal 은 여러 값을 정의해놓을 수 있습니다. ..
-
python @runtime_checkable이란? (openai 개발자들이 짠 python code 예시 함께 살펴보기)python 2024. 2. 24. 14:38
python 3.8부터 도입된 @runtime_checkable 데코레이터를 사용하면 프로토콜 클래스를 런타임에서 isinstance() 및 issubclass() 함수와 함께 사용할 수 있게 됩니다. 프로토콜 클래스란 typing.Protocol을 상속받은 클래스를 말합니다. runtime_checkable은 같은 클래스를 상속받진 않았지만, 런타임에서 타이핑 검증을 하고 싶을 경우 유용하게 쓸 수 있는 데코레이터입니다. 말로 하면 이해가 잘 안되니 코드로 설명해보겠습니다. 1. @runtime_checkable를 사용하지 않은 경우 우선 @runtime_checkable를 사용하지 않은 일반적인 상황입니다. JsonSerializable, Person 두 클래스 모두 아무것도 상속받지 않은 순수 클래..