ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [conda] κ°€μƒν™˜κ²½μ˜ λͺ©μ κ³Ό 채널에 λŒ€ν•΄ μ•Œμ•„λ³΄μž (πŸ‘Ό5살도 이해할 수 μžˆμ„ 만큼 μ‰¬μš΄ μ„€λͺ…) | BABY AI (1)
    AI/ETC 2024. 12. 12. 03:01
    μ •ν™•ν•˜κ³  μ •κ΅ν•œ 지식보닀 직관적이고 μ΄ν•΄ν•˜κΈ° μ‰¬μš΄ μ„€λͺ…을 μ§€ν–₯ν•©λ‹ˆλ‹€.
    κ°€μƒν™˜κ²½μ˜ 쑴재 이유 -λ ˆμ’… 데λ₯΄νŠΈ- μ— λŒ€ν•΄ 생각해 λ³Έ 적이 μžˆλŠ”κ°€?

     
    κ°€μƒν™˜κ²½(Virtual Environment)은 Python κ°œλ°œμ—μ„œ ν”„λ‘œμ νŠΈλ³„λ‘œ 독립적인 ν™˜κ²½μ„ μ œκ³΅ν•˜λŠ” μ€‘μš”ν•œ 도ꡬ이닀.

    일단 μ™œ 'κ°€μƒν™˜κ²½'이라고 λΆˆλ¦¬λŠ”μ§€λΆ€ν„° μ•Œμ•„λ³΄μž.
    μš°λ¦¬λŠ” 단어λ₯Ό λœ―μ–΄λ³Ό κ±°λ‹€.

    κ°€μƒν™˜κ²½μ€ 물리적으둜 λΆ„λ¦¬λœ 게 μ•„λ‹ˆλΌ,
    μ†Œν”„νŠΈμ›¨μ–΄μ μœΌλ‘œ κ΅¬λ³„λœ 곡간이기 λ•Œλ¬Έμ— '가상(Virtual)'μ΄λΌλŠ” 이름이 λΆ™μ—ˆλ‹€. λΉ„μŠ·ν•œ μ˜ˆλ‘œλŠ” ν”„λ‘ νŠΈμ—”λ“œμ˜ Virtual DOM, Ubuntu μ‹€μŠ΅ μ‹œ μ‚¬μš©ν•˜λŠ” VirtualBox 등이 μžˆλ‹€.

    λͺ°λΌλ„ λœλ‹€β€ΌοΈ 읽기 μ‹«λ‹€λ©΄ 이 뢀뢄은 μŠ€ν‚΅ν•  것.

    μ–ΈκΈ‰ν•œ 김에 Virtual DOMκ³Ό VirtualBox κ°€ λ­”μ§€ λͺ¨λ₯΄λŠ” μ‚¬λžŒλ“€μ„ μœ„ν•΄ μ§„μ§œ 짧게 μ„€λͺ…ν•˜κ² λ‹€. μ§€κΈˆ 이걸 λ‹€λ£¨λŠ” 게 μ•„λ‹ˆλ‹ˆκΉŒ.

    - VirtualBox: 물리적 컴퓨터λ₯Ό μ†Œν”„νŠΈμ›¨μ–΄μ μœΌλ‘œ 흉내 λ‚΄μ–΄, μ—¬λŸ¬ 운영체제λ₯Ό λ…λ¦½μ μœΌλ‘œ μ‹€ν–‰ν•  수 μžˆλŠ” κ°€μƒμ˜ 컴퓨터λ₯Ό λ§Œλ“œλŠ” λ„κ΅¬λΌμ„œ "가상"이라 λΆˆλ¦°λ‹€.

    - Virtual DOM: μ‹€μ œ μ›Ή 화면을 λ°”λ‘œ λ°”κΎΈλŠ” λŒ€μ‹ , λ©”λͺ¨λ¦¬ 속 κ°€μƒμ˜ 화면을 λ¨Όμ € λ§Œλ“€μ–΄ 변경을 효율적으둜 μ²˜λ¦¬ν•˜κΈ° λ•Œλ¬Έμ— "가상"이라 λΆˆλ¦°λ‹€.

    ν•œ λ²ˆμ΄λΌλ„ ν•΄λ‹Ή κ°œλ…μ„ μ ‘ν•΄λ΄€λ‹€λ©΄ 이거만 봐도 무슨 μ†Œλ¦¬μΈμ§€ μ•Œκ² μ§€λ§Œ, ν˜Ήμ—¬λ‚˜ λͺ¨λ₯΄κ² λ‹€λ©΄ μ•„λž˜ πŸ‘Ό5μ‚΄μš© μ΄ˆκ°„λ‹¨ λΉ„μœ πŸ‘Όλ₯Ό μ°Έκ³ .

    πŸ‘Ό: "VirtualBoxλŠ” μ†Œν”„νŠΈμ›¨μ–΄λ‘œ λ§Œλ“  κ°€μ§œ μ»΄ν“¨ν„°λΌμ„œ '가상'이고, Virtual DOM은 μ§„μ§œ 화면이 μ•„λ‹ˆλΌ κ°€μƒμ˜ 화면을 미리 λ§Œλ“€μ–΄μ„œ '가상'μ΄μ—μš”!"

     

    κ°€μƒν™˜κ²½μ˜ μ£Όλͺ©μ 

    1. νŒ¨ν‚€μ§€ 독립성 보μž₯

    각 ν”„λ‘œμ νŠΈλ§ˆλ‹€ ν•„μš”ν•œ νŒ¨ν‚€μ§€μ™€ 버전이 λ‹€λ₯Ό 수 μžˆλ‹€.
    κ°€μƒν™˜κ²½μ„ μ‚¬μš©ν•˜λ©΄ ν•œ ν”„λ‘œμ νŠΈμ˜ νŒ¨ν‚€μ§€κ°€ λ‹€λ₯Έ ν”„λ‘œμ νŠΈμ— 영ν–₯을 λ―ΈμΉ˜μ§€ μ•Šλ„λ‘ 격리할 수 μžˆλ‹€.
     
    2. Python 버전 독립성
    μ‹œμŠ€ν…œμ— μ„€μΉ˜λœ Python λ²„μ „κ³ΌλŠ” λ³„κ°œλ‘œ, νŠΉμ • ν”„λ‘œμ νŠΈμ— μ ν•©ν•œ Python 버전을 μ‚¬μš©ν•  수 μžˆλ‹€.


    μš”μ•½ν•˜μžλ©΄, ν”„λ‘œμ νŠΈ λ³„λ‘œ β‘  Package 버전과 β‘‘ Python 버전을 λ…λ¦½μ μœΌλ‘œ 관리할 수 μžˆλ‹€λŠ” κ±°λ‹€!

    πŸ‘Ό: "κ°€μƒν™˜κ²½μ€ 마치 ν•˜λ‚˜μ˜ μž₯λ‚œκ° μƒμž(컴퓨터) μ•ˆμ— μ—¬λŸ¬ 개의 μž‘μ€ μƒμž(κ°€μƒν™˜κ²½)λ₯Ό λ‘λŠ” 것과 κ°™μ•„μš”. κ° μƒμžμ—λŠ” μžκΈ°λ§Œμ˜ 블둝(ν”„λ‘œκ·Έλž¨κ³Ό μ„€μ •)이 λ“€μ–΄ μžˆμ–΄μ„œ, ν•œ μƒμžμ˜ 블둝을 바꿔도 λ‹€λ₯Έ μƒμžμ—λŠ” μ „ν˜€ 영ν–₯을 μ£Όμ§€ μ•Šμ•„μš”. (μ˜ˆμ‹œμ—μ„  κ°€μƒν™˜κ²½μ΄ 물리적으둜 λΆ„λ¦¬λ˜μ—ˆμ§€λ§Œ, '가상' ν™˜κ²½μ΄λΌλŠ” κ±Έ μœ λ…ν•˜μž.)"

    ν˜Ήμ‹œ νŒ¨ν‚€μ§€κ°€ λ­”μ§€ λͺ¨λ₯΄λŠ” μ‚¬λžŒ μžˆλ‚˜? 
    탕. 더 μžˆλ‚˜?

    그런 μ‚¬λžŒμ΄ 이 글을 μ—¬κΈ°κΉŒμ§€ μ½μ—ˆμ„ 것 κ°™μ§„ μ•Šμ§€λ§Œ, νŒ¨ν‚€μ§€λŠ” νŠΉμ • μž‘μ—…μ„ μ‰½κ²Œ μˆ˜ν–‰ν•˜λ„λ‘ 미리 μž‘μ„±λœ ν•¨μˆ˜μ™€ 클래슀, μ‰½κ²Œ 말해 κ°–λ‹€ μ“°κΈ° 쒋은 특수 μ½”λ“œμ˜ λ¬ΆμŒμ΄λ‹€. λŒ€ν‘œμ μœΌλ‘œ numpy 라든가 matplotlib 등이 μžˆλ‹€.

     
    κ°€μƒν™˜κ²½μ€ ν”„λ‘œμ νŠΈλ³„λ‘œ Python interpreter와 νŒ¨ν‚€μ§€ 디렉토리λ₯Ό λ³„λ„λ‘œ 생성해 λΆ„λ¦¬λœ ν™˜κ²½μ²˜λŸΌ 보이게 λ§Œλ“ λ‹€. ν•˜μ§€λ§Œ λ¬Όλ¦¬μ μœΌλ‘œλŠ” 같은 Python μ„€μΉ˜λ₯Ό κ³΅μœ ν•˜κ±°λ‚˜, 운영체제의 μžμ›μ„ μ‚¬μš©ν•œλ‹€. CondaλŠ” κ°™μ€ 운영체제 λ‚΄μ—μ„œ μ„œλ‘œ λ‹€λ₯Έ νŒ¨ν‚€μ§€μ™€ 라이브러리 버전을 λ…λ¦½μ μœΌλ‘œ 관리할 수 μžˆλ„λ‘ λ§Œλ“€μ–΄μ€€λ‹€.
     

    Condaμ—μ„œ μ±„λ„μ΄λž€?

    일단 λƒ…λ‹€ μ‰½κ²Œ λ§ν•˜λ©΄
    채널은 λ„μ„œκ΄€ 같은 κ±°λ‹€.

    μš°λ¦¬λŠ” ν•„μš”ν•œ 책을 찾을 λ•Œ μ–΄λŠ λ„μ„œκ΄€μ„ λ¨Όμ € λ“€λ₯Όμ§€ 생각해둔닀. (검색을 미리 ν•  수 μ—†λŠ”, μ•„λ‚ λ‘œκ·Έ μ‹œλŒ€μ— μ‚°λ‹€κ³  κ°€μ •ν•˜μž.) λ¨Όμ € λ“€λ₯Έ λ„μ„œκ΄€μ—μ„œ ν•„μš”ν•œ 책을 λ°œκ²¬ν•˜λ©΄ λ‚˜μ€‘μ— λ“€λ₯΄λ €κ³  κ³„νšν•œ λ„μ„œκ΄€μ€ μ•ˆ κ°€λŠ”, μΌμ’…μ˜ greedy라고 λ³Ό 수 μžˆλ‹€.
     

    자, 채널은 μ±…(νŒ¨ν‚€μ§€)이 μ €μž₯된 λ„μ„œκ΄€μ΄λ‹€.

    defaults 채널은 κΈ°λ³Έ λ„μ„œκ΄€: μ•ˆμ •μ μ΄κ³  κ²€μ¦λœ μ±…(νŒ¨ν‚€μ§€)이 λ§Žλ‹€.
    conda-forge 채널은 μ΅œμ‹  λ„μ„œκ΄€: μ—…λ°μ΄νŠΈκ°€ λΉ λ₯΄κ³  λ‹€μ–‘ν•œ μ±…(νŒ¨ν‚€μ§€)을 μ œκ³΅ν•œλ‹€.
    pytorch 채널은 μ „λ¬Έ λ„μ„œκ΄€: PyTorch와 같은 νŠΉμ • λΆ„μ•Όμ˜ μ „λ¬Έ 자료만 μ œκ³΅ν•œλ‹€.

    (λ”±λ”±ν•˜κ²Œ κΈ°μ–΅ν•˜λŠ” κ±° 보닀, 이 λΉ„μœ κ°€ 기얡에 μ°Έ 잘 λ‚¨λŠ” 것 κ°™λ‹€.)

    CondaλŠ” μ‚¬μš©μžκ°€ μ„€μ •ν•œ 채널 리슀트의 μˆœμ„œλŒ€λ‘œ λ„μ„œκ΄€(채널)을 νƒμƒ‰ν•œλ‹€. κ°€μž₯ λ¨Όμ € λ°©λ¬Έν•œ λ„μ„œκ΄€μ—μ„œ μ›ν•˜λŠ” μ±…(νŒ¨ν‚€μ§€)을 찾으면, λ‹€λ₯Έ λ„μ„œκ΄€μ€ νƒμƒ‰ν•˜μ§€ μ•ŠλŠ”λ‹€.
    채널은 λ„μ„œκ΄€μ΄κ³ , μˆœμ„œλŠ” 탐색 μš°μ„ μˆœμœ„μΈ κ±°λ‹€. λ”°λΌμ„œ 채널 μˆœμ„œλ₯Ό 잘 μ„€μ •ν•˜λ©΄ ν•„μš”ν•œ νŒ¨ν‚€μ§€λ₯Ό 효율적으둜 μ„€μΉ˜ν•  수 μžˆλ‹€.

    이와 κ΄€λ ¨ν•΄μ„œ FutureWarning: Adding 'defaults' to channel list implicitly is deprecated and will be removed in 25.3. μ›Œλ‹μ΄ λ– μ„œ ν•΄κ²°ν•œ 적이 μžˆλ‹€.
     
    κ·ΈλŸ¬λ‹ˆκΉŒ μ‰½κ²Œ λ§ν•˜λ©΄,
    "μ•Ό. 아무리 λ””ν΄νŠΈμ§€λ§Œ μ±… 찾을 λ•Œ μ–΄λŠ λ„μ„œκ΄€ κ°ˆμ§€λŠ” μ’€ μ •ν•΄μ€˜λΌ. (Adding 'defaults' to channel)
    μš°λ¦¬κ°€ μ•Œμ•„μ„œ (implicitly) λ””ν΄νŠΈμ—μ„œ μ°ΎλŠ” κ±° 이거 κ³§ μ—†μ–΄μ Έ ;;; (deprecated and will be removed)"
    λΌλŠ” 의미의 μ›Œλ‹μ΄λ‹€.

    ν•΄κ²° 방법은 ⏬ μ•„λž˜ ν¬μŠ€νŒ… μ°Έμ‘° β¬  

    [conda] FutureWarning: Adding 'defaults' to channel list implicitly is deprecated and will be removed in 25.3. ν•΄κ²° 방법

    FutureWarning: Adding 'defaults' to channel list implicitly is deprecated and will be removed in 25.3. To remove this warning, please choose a default channel explicitly with conda's regular configuration system, e.g. by adding 'defaults' to the list of ch

    happyday2yerin.tistory.com

     

Designed by Tistory.