배열의 평균값

def solution(numbers):
    answer = 0
    for i in numbers:
        answer+=i
       
    return float(answer/len(numbers))

짝수의 합

def solution(n):
    arr=[]
    for i in range(1, n+1): # 1 ~ 10
        if i%2==0 and n >= i : # 2로 나누었을 때 0이면서 a보다 작거나 같은 값
            arr.append(i)
    return sum(arr)
 
양꼬치
def solution(n, k):
    return 12000 * n + 2000 * k - int(n//10 * 2000)

배열 뒤집기

def solution(num_list):
    return num_list[::-1]
 
 
머쓱이보다 키 큰 사람
 
def solution(array, height):
    count = 0
    for i in array:
        if i > height:
            count += 1
           
    return count
 

 

 

몫 구하기

def solution(num1, num2):
    answer=num1//num2
    return answer
 
나이 출력
 
def solution(age):
    answer = 2022-(age-1)
    return answer
 
두 수의 합
 
def solution(num1, num2):
    answer = num1+num2
    return answer

각도기

def solution(angle):
    if angle > 0 and angle < 90:
        return 1
    elif angle == 90:
        return 2
    elif angle > 90 and angle < 180:
        return 3
    else:
        return 4
 
두 수의 나눗셈
 
def solution(num1, num2):
    answer = int((num1 / num2) *1000)
    return answer
 
 
 

 

배열의 유사도

def solution(s1, s2):
    answer = 0
    for i in s1:
        for j in s2:
            if i == j:
                answer+=1
    return answer

나머지 구하기

def solution(num1, num2):
    answer = num1%num2
    return answer

두 수의차

def solution(num1, num2):
    answer = num1-num2
    return answer

두 수의 곱

def solution(num1, num2):
    answer = num1*num2
    return answer
 
숫자 비교하기
 
def solution(num1, num2):
    if num1==num2:
        answer = 1
    else:
        answer = -1
    return answer
 

1. 연결된 서버에 콘다 및 환경설정

1. conda를 설치하기 전에 리눅스의 버전을 확인 

2. 리눅스 버전 20.04를 확인 후 아나콘다 파일 다운로드

3. 다운로드한 아나콘다 파일을 찾아 실행 (Enter 진행, yes)

  • 파일을 못찾아 찾으려면 =>  find .sh

4. 환경변수 입력

 

2. 텐서플로를 사용하기 위한 과정(Nvidia Driver, CUDA, cuDNN)

1. Nvidia Driver 설치

  • gpu 모델 확인 (ubuntu-drivers devices)

  • recommended (권한)이 있는 드라이버 설치 (sudo apt-get install nvidia-driver-525)
    • nvcc -V로 버전 확인 (**sudo apt install nvidia-cuda-toolkit) 툴킷 설치

2. CUDA 설치

CUDA 환경변수 등록 (.bashrc에 추가)

export PATH=$PATH:/usr/local/cuda-11.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.0/lib64
export CUDADIR=/usr/local/cuda-11.0

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ위 과정으로 안될 시ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

export PATH=/usr/local/cuda-11.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/extras/CUPTI/lib64:$LD_LIBRARY_PATH

 

적용

3. cuDNN 설치 (사이트 로그인 이후) - 필자는 8 버전 사용

cuDNN을 설치하기 위해 사이트에 들어간 이후 CUDA에 맞는 버전 선택

  • tar -xvf cudnn-11.2-linux-x64-v8.0.4.30.tgz
  • sudo cp ./cuda/include/* /usr/local/cuda/include/
  • sudo cp -P ./cuda/lib64/* /usr/local/cuda/lib64/
  • sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

 

3. 아나콘다 가상환경에 python, tensorflow-gpu 설치

vscode의 extensions에서 python과 python Extension Pack 설치

본 포스팅에서는 GTX3090사용에 맞는 버전으로 사용함.

  • Nvidia Driver : 525
  • CUDA : 11.2
  • cuDNN : 8
  • python : 3.10
  • tensorflow : 2.9.1

 

1. 가상환경 생성 (tensorflow를 위해 python 버전 일치)

2. 파이썬 파일 실행 (커널 선택)

  • 쥬피터를 사용하기위해 설치 (conda install -n TF ipykernel --update-deps --force-reinstall)

3. GPU 확인을 위한 코드

from tensorflow.python.client

import device_lib print(device_lib.list_local_devices())

GPU인식이 안되는 경우 => 텐서플로를 삭제하고 gpu버전으로 다시 설치해보세요. 

 

4. GPU 사용코드

import os

os.environ["CUDA_VISIBLE_DEVICES"]="0"

  • 사용중인지 확인 => 사용중일 경우 False(사용할 수 없음)

 

이상으로 (트랜스포머 기반) 챗봇 사용을 위한 환경 구축이 마무리 되었습니다.

다음은 챗봇 코드 실험 예정입니다. 

0 순위로 ssh설치가 필요하다  (Ctrl + Alt + X  vs코드의 extensions을 사용)

1. vs코드를 킨 이후 Ctrl + Shift + P 로 ssh로 연결

config파일의 server와 주소, user, Port 입력

2. 위의 과정으로 ssh.config파일을 작성한 후 새로고침을 통해 생성 확인

3. 서버의 root 계정으로 접속 (각자 서버의 비밀번호 입력) ex) server1 

 

4. 사용자 계정이 생성되었는지 확인

 5번을 하기 위해( 2번 과정에서 root계정 다시 접속 )

 

5. 유저 권한 작성 sudo nano /etc/sudoers ( 설명했다시피 vi vim nano 모두 사용 가능하다 필자는 nano 사용)

형광팬 부분 으로 username ALL=(ALL:ALL) ALL 작성

위 과정 중 Ctrl + X => 저장 여부 Y => Enter

 

6. 사용자 계정에 권한 적용 su => source /etc/sudoers

7. 2번 과정 중 생성한 user(필자는 sh) 로 접속

sudo 권한이 사용되는지 확인해보면된다. 

 

이제 편하게 서버의 생성한 계정으로 사용하시면됩니다.! 

프로그래머스 옹알이

프로그래머스 다음에 올 숫자

프로그래머스 7의 개수

프로그래머스 제곱수 판별하기

프로그래머스 가장 큰 수 찾기

프로그래머스 인덱스 바꾸기

프로그래머스 문자열 계산

+ Recent posts