우당탕탕 Python

[Python/OpenAi] ImportError: cannot import name 'OpenAI' from 'openai' 오류 해결

하얀활자중독 2024. 8. 1. 11:43

1. 문제 발생

OpenAI의 API를 호출해서 실습하는 도중 종종 만나던 'cannot import name 'OpenAI' from 'openai' 오류

- from openai import OpenAI : 오류남

- import openai : 이것도 오류남

 

🤷‍♀️

OpenAI 라이브러리 pip install 했는데 왜 못 불러온다는겨 

🤷‍♀️

 

 

 

2. 해결 방법

시중에 있는 책에 있는 코드가 openai 1.x 버전과 openai 0.28.x 버전으로 혼용되고 있어서

버전에 안 맞는 코드 따라하다간 위와 같은 오류에 직면할 수 있다

대체로 OpenAI 0.28.x 버전은 'client' 를 따로 생성하지 않고, OpenAI 1.x 버전은 'client' 생성한 후 진행하는 듯

 

  2-1. client 없는 코드 / import openai 

pip install openai==0.28

 

2023년 11월 6일부터 'pip install openai' 할 경우, Python에서는 1.x. 버전을 자동적으로 다운로드하기 때문에

돌렸는데 저런 오류가 나거나, 에러 메세지로 'pip install openai==0.28~' 어쩌구하고 뜨면 

저 코드 활용하여 다운그레이드 해주어야 한다,,,

 

참고로 저 '==' 를 띄워서 사용하면 오류가 나니 조심할 것

 

 

 2-2. client 객체 생성 후 사용 / from openai import OpenAi

pip install openai --upgrade

 

0.28.x 버전부터 다운로드하고 시작했을 경우에는, 오류시 업그레이드해서 사용할 것

업그레이드하고 난 후엔 세션 재시작 꼭 해주는 것 잊지 말자!

 


<참고 사이트>

https://learn.microsoft.com/ko-kr/azure/ai-services/openai/how-to/migration?tabs=python-new%2Cdalle-fix

 

OpenAI Python v1.x로 마이그레이션하는 방법 - Azure OpenAI Service

Azure OpenAI를 사용하여 OpenAI Python 라이브러리의 최신 릴리스로 마이그레이션하는 방법을 알아보세요.

learn.microsoft.com