๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ป IT·๊ธฐ์ˆ ·ํ†ต๊ณ„

[Tips] Python ๋ชจ๋“ˆ ์œ„์น˜, ๋ฒ„์ „, ์ƒ์œ„ ํด๋”์—์„œ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

by nowgeun 2023. 3. 26.
728x90

Python์—์„œ ํŠน์ • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฒ„์ „ dependency๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์ž๋ฉด, ChatGPT๋ฅผ ๊ฐœ๋ฐœํ•œ OpenAI์˜ python ํŒจํ‚ค์ง€ `openai`๋Š” Python ๋ฒ„์ „ 3.7.1 ์ด์ƒ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด์— ์„ค์น˜๋œ Python ๋ฒ„์ „์ด 3.6 ์ดํ•˜์ธ ๊ฒฝ์šฐ์—๋Š” ChatGPT API๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/openai/openai-python#requirements

 

์ƒํ™ฉ์— ๋”ฐ๋ผ์„œ ๋‹ค์ˆ˜์˜ Python ๋ฒ„์ „์„ ์„ค์น˜๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์ƒ๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๊ฐ€์ƒํ™˜๊ฒฝ์„ ์ƒ์„ฑํ•ด์„œ ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ๋„ ์žˆ์ง€๋งŒ ํšŒ์‚ฌ์˜ ์‹œ์Šคํ…œ ๊ตฌ์กฐ, ๊ธฐ์กด ์‹œ์Šคํ…œ์˜ ์‚ฌ์–‘ ๋“ฑ ๋‹ค์–‘ํ•œ ์ด์Šˆ๋กœ ์—ฌ์˜์น˜ ์•Š์€ ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋‹ค์–‘ํ•œ ๊ฒฝ๋กœ์—์„œ ์„œ๋กœ ๋‹ค๋ฅธ Python์œผ๋กœ ์ž‘์—…์„ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์‹œ์Šคํ…œ ํŒจํ‚ค์ง€ Path๊ฐ€ ๊ผฌ์ด๋Š” ๊ฒฝ์šฐ๋„ ์ƒ๊น๋‹ˆ๋‹ค. ์ € ๋˜ํ•œ ํšŒ์‚ฌ์—์„œ ํŒจ์Šค ๋ฌธ์ œ๋กœ ์—ฌ๋Ÿฌ ๋ฒˆ ๊ณจ๋จธ๋ฆฌ๋ฅผ ์ฉ์ธ ์ ์ด ์žˆ์–ด์„œ, ์ •๋ฆฌ๋ฅผ ํ•˜๋Š” ์ฐจ์›์—์„œ ์ด ํฌ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 

Python, PIP ์„ค์น˜ ๊ฒฝ๋กœ ํ™•์ธ

Python์ด ์„ค์น˜๋œ ์œ„์น˜, ๊ทธ๋ฆฌ๊ณ  pip๊ฐ€ ์„ค์น˜๋œ ์œ„์น˜๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

 

Windows

where python
where pip

 

Linux

which python
which pip

 

Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฒฝ๋กœ ํ™•์ธ

 

Python ์ƒ์œผ๋กœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ์˜ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋ฐฉ๋ฒ•1:

 

๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ถˆ๋Ÿฌ์˜จ ๋’ค, `print()`๋กœ ์ถœ๋ ฅ์„ ํ•˜๋ฉด ์–ด๋Š ์œ„์น˜์—์„œ ๋ชจ๋“ˆ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

import openai

print(openai)  # openai.__repr__()  ์ด ์ถœ๋ ฅ๋จ
<module 'openai' from 'C:\\Users\\jake1\\AppData\\Roaming\\Python\\Python311\\site-packages\\openai\\__init__.py'>

 

 

๋ฐฉ๋ฒ• 2:

 

๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ง์ ‘์ ์ธ ๊ฒฝ๋กœ๋Š” ์•„๋‹ˆ์ง€๋งŒ, Python์ด ํŒจํ‚ค์ง€๋ฅผ ์–ด๋Š ์œ„์น˜์—์„œ ๊ฐ€์ ธ์˜ค๋Š”์ง€ ์ „๋ถ€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์žฅํ•จ์ˆ˜ `sys` ์˜ `sys.path()` ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. 

import sys

sys.path
['C:\\Users\\jake1\\Desktop\\project\\workspace',
 'C:\\Program Files\\Python311\\python311.zip',
 'C:\\Program Files\\Python311\\Lib',
 'C:\\Program Files\\Python311\\DLLs',
 '',
 'C:\\Users\\jake1\\AppData\\Roaming\\Python\\Python311\\site-packages',
 'C:\\Program Files\\Python311',
 'C:\\Program Files\\Python311\\Lib\\site-packages',
 'C:\\Program Files\\Python311\\Lib\\site-packages\\openai-0.26.1-py3.11.egg',
 'C:\\Program Files\\Python311\\Lib\\site-packages\\win32',
 'C:\\Program Files\\Python311\\Lib\\site-packages\\win32\\lib',
 'C:\\Program Files\\Python311\\Lib\\site-packages\\Pythonwin']

 

pip์— ์—†๋Š” ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ ๋งŒ๋“  ํŒจํ‚ค์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ๊ฑฐ๋‚˜, ์ƒ์œ„ ํด๋”์— ์žˆ๋Š” ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์„ ๋•Œ๋Š” `sys.path.append()` ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฝ๋กœ๋ฅผ ์ถ”๊ฐ€ํ•œ ๋’ค, ์›ํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „ ํ™•์ธ

์„ค์น˜๋œ Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฒ„์ „์„ ํ™•์ธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ํ„ฐ๋ฏธ๋„์—์„œ ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

pip list --format=columns

Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „ ๋ฆฌ์ŠคํŠธ

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€