2025.03.14 - [파이썬 프로그래밍] - 3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

 

3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

텍스트 에디터 : 비주얼 스튜디오 코드 현업에서 많이 사용하는 여러 텍스트 에디터 중에서 일반적으로 많이 사용하는 텍스트 에디터 중에 비주얼 스튜디오 코드 라는 프로그램을 설치해 보

suncommq.tistory.com

 

파이썬과 Visual Studio Code(VS Code)를 연동하고, 모듈을 사용하며, GitHub Copilot을 활용하여 예제를 학습하는 방법을 단계별로 자세히 설명하겠습니다. 이 조합은 파이썬 학습 효율을 극대화할 수 있는 강력한 도구입니다.

1. 파이썬 & VS Code 연동 설정

  • 파이썬 설치: 아직 파이썬이 설치되어 있지 않다면, https://www.python.org/downloads/ 에서 최신 버전을 다운로드하여 설치합니다. 설치 시 "Add Python to PATH" 옵션을 반드시 선택해야 합니다.
  • VS Code 설치: https://code.visualstudio.com/ 에서 VS Code를 다운로드하여 설치합니다.
  • Python 확장 설치: VS Code를 실행하고, 확장(Extensions) 탭(Ctrl+Shift+X)에서 "Python"을 검색하여 Microsoft에서 제공하는 Python 확장을 설치합니다. 이 확장은 파이썬 개발에 필요한 다양한 기능을 제공합니다.
  • 파이썬 인터프리터 선택: VS Code 하단의 상태 표시줄에서 파이썬 인터프리터를 선택합니다. 설치된 파이썬 버전을 선택하거나, 가상 환경을 설정하여 사용할 수 있습니다. (가상 환경 설정은 아래 '모듈 활용' 섹션에서 설명합니다.)

2. GitHub Copilot 설치 및 설정

  • GitHub Copilot 구독: GitHub Copilot은 유료 서비스입니다. https://github.com/features/copilot 에서 구독합니다.
  • VS Code에 Copilot 설치: VS Code 확장 탭에서 "GitHub Copilot"을 검색하여 설치합니다.
  • GitHub 계정 연결: VS Code에서 GitHub Copilot을 사용하려면 GitHub 계정에 로그인해야 합니다. VS Code에서 Copilot을 처음 실행하면 GitHub 계정으로 로그인하라는 메시지가 표시됩니다.

3. 모듈 활용 및 가상 환경 설정 (필수)

  • 모듈이란? 모듈은 파이썬 코드를 담고 있는 파일입니다. 다른 파이썬 프로그램에서 모듈의 코드를 재사용할 수 있습니다.
  • 가상 환경이란? 가상 환경은 프로젝트별로 독립적인 파이썬 환경을 만들어줍니다. 이를 통해 프로젝트 간의 모듈 버전 충돌을 방지할 수 있습니다.
  • 가상 환경 설정 방법:
    1. VS Code 터미널(Ctrl+`)을 엽니다.
    2. 프로젝트 폴더로 이동합니다.
    3. python -m venv .venv 명령어를 실행하여 가상 환경을 생성합니다. (.venv는 가상 환경 폴더 이름입니다.)
    4. source .venv/bin/activate (Linux/macOS) 또는 .venv\Scripts\activate (Windows) 명령어를 실행하여 가상 환경을 활성화합니다.
    5. VS Code 하단의 상태 표시줄에서 활성화된 가상 환경이 선택되었는지 확인합니다.
  • 모듈 설치: 가상 환경이 활성화된 상태에서 pip install <모듈 이름> 명령어를 사용하여 필요한 모듈을 설치합니다. 예를 들어, pip install requests는 requests 모듈을 설치합니다.

4. Copilot 활용 예제 학습

이제 Copilot을 활용하여 파이썬 예제를 학습하는 방법을 살펴보겠습니다.

  • 예제 1: requests 모듈을 사용하여 웹 페이지 내용 가져오기
    1. 새로운 파이썬 파일(예: web_scraper.py)을 생성합니다.
    2. 다음과 같이 코드를 입력합니다.
      import requests

# 웹 페이지 URL
url = "https://www.example.com"

# 웹 페이지 내용 가져오기
response = requests.get(url)

# 상태 코드 확인
if response.status_code == 200:
    # 내용 출력
    print(response.text)
else:
    print("오류 발생:", response.status_code)
    
    1. import requests를 입력하고 잠시 기다리면 Copilot이 자동으로 requests 모듈을 사용하는 코드 스니펫을 제안합니다. Tab 키를 눌러 제안을 수락합니다.
    2. # 웹 페이지 내용 가져오기 주석을 입력하고 잠시 기다리면 Copilot이 requests.get(url) 코드를 제안합니다.
    3. # 상태 코드 확인 주석을 입력하고 잠시 기다리면 Copilot이 if response.status_code == 200: 코드를 제안합니다.
    4. Copilot의 제안을 수락하고 코드를 완성합니다.
    5. 코드를 실행하고 결과를 확인합니다.
  • 예제 2: pandas 모듈을 사용하여 CSV 파일 읽고 분석하기
    1. 새로운 파이썬 파일(예: data_analysis.py)을 생성합니다.
    2. 다음과 같이 코드를 입력합니다.
      import pandas as pd

# CSV 파일 읽기
df = pd.read_csv("data.csv")

# 데이터 프레임 정보 출력
print(df.info())

# 처음 5개 행 출력
print(df.head())

# 특정 열의 평균값 계산
print(df["column_name"].mean())
    
    1. import pandas as pd를 입력하고 잠시 기다리면 Copilot이 pandas 모듈을 사용하는 코드 스니펫을 제안합니다.
    2. # CSV 파일 읽기 주석을 입력하고 잠시 기다리면 Copilot이 pd.read_csv("data.csv") 코드를 제안합니다.
    3. # 데이터 프레임 정보 출력 주석을 입력하고 잠시 기다리면 Copilot이 print(df.info()) 코드를 제안합니다.
    4. Copilot의 제안을 수락하고 코드를 완성합니다.
    5. data.csv 파일을 준비하고 코드를 실행하여 결과를 확인합니다.

5. Copilot 활용 팁

  • 명확한 주석 작성: Copilot은 주석을 기반으로 코드를 제안합니다. 명확하고 구체적인 주석을 작성하면 Copilot이 더 정확한 코드를 제안할 수 있습니다.
  • 코드 컨텍스트 유지: Copilot은 현재 코드 컨텍스트를 고려하여 코드를 제안합니다. 코드 컨텍스트를 유지하면서 코드를 작성하면 Copilot이 더 유용한 코드를 제안할 수 있습니다.
  • 제안 검토 및 수정: Copilot이 제안하는 코드는 항상 완벽하지 않을 수 있습니다. 제안된 코드를 주의 깊게 검토하고 필요에 따라 수정해야 합니다.
  • 다양한 예제 학습: 다양한 예제를 학습하면서 Copilot의 활용 능력을 향상시킬 수 있습니다.

2025.03.15 - [분류 전체보기] - 파이썬 주요 모듈(module) 상세 설명

 

파이썬 주요 모듈(module) 상세 설명

파이썬은 방대한 표준 라이브러리와 수많은 외부 모듈을 제공하여 다양한 작업을 수행할 수 있습니다. 여기서는 자주 사용되는 주요 모듈들을 하나씩 자세히 설명하겠습니다. 각 모듈에 대한

suncommq.tistory.com

 

반응형
LIST

2025.03.15 - [파이썬 프로그래밍] - 4.파이썬 자료와 자료 처리: Visual Studio Code 활용을 위한 기초

 

4.파이썬 자료와 자료 처리: Visual Studio Code 활용을 위한 기초

2025.03.14 - [파이썬 프로그래밍] - 3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기 3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드

suncommq.tistory.com

 

앞선 설명에 이어, 파이썬의 자료와 자료 처리에 대한 더욱 자세한 설명과 해설, 그리고 VS Code 활용법을 심층적으로 다루겠습니다.

1. 자료형의 중요성: 왜 자료형을 알아야 할까요?

자료형은 단순히 자료의 종류를 구분하는 것 이상으로 중요합니다.

  • 메모리 효율성: 각 자료형은 컴퓨터 메모리에서 차지하는 공간이 다릅니다. 적절한 자료형을 사용하면 메모리 사용량을 줄여 프로그램의 성능을 향상시킬 수 있습니다.
  • 정확한 연산: 자료형에 따라 사용할 수 있는 연산이 다릅니다. 예를 들어, 문자열에 숫자를 더하려고 하면 오류가 발생합니다.
  • 오류 방지: 자료형을 명확히 이해하면 프로그램 실행 중 발생할 수 있는 오류를 예방할 수 있습니다.
  • 코드 가독성: 자료형을 명시적으로 사용하면 코드의 가독성을 높여 다른 사람이 코드를 이해하기 쉽게 만들 수 있습니다.

2. 기본 자료형 심층 분석

2.1. 숫자형 (int, float)

  • 정수 (int): 소수점이 없는 숫자를 나타냅니다. 파이썬 3부터는 정수형의 크기 제한이 없어졌습니다.
    • 연산: 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%), 몫(//), 거듭제곱(**) 등
    • 예시:
            a = 10
      b = -5
      print(a + b)  # 5
      print(a / b)  # -2.0 (나눗셈 결과는 항상 float)
          
  • 실수 (float): 소수점이 있는 숫자를 나타냅니다. 부동소수점 방식으로 표현되기 때문에 정확한 값을 표현하는 데 한계가 있을 수 있습니다.
    • 연산: 정수형과 동일한 연산 가능
    • 예시:
      pi = 3.14159
radius = 5.0
area = pi * radius * radius
print(area)  # 78.53975
    

2.2. 문자열 (str)

  • 문자들의 나열을 나타냅니다. 작은따옴표('') 또는 큰따옴표("")로 묶어서 표현합니다.
  • 연산: 문자열 연결(+), 문자열 반복(*), 인덱싱([]), 슬라이싱([:]) 등
  • 메서드: 문자열을 조작하기 위한 다양한 메서드를 제공합니다. (예: upper(), lower(), strip(), split(), replace())
  • 예시:
      greeting = "Hello, world!"
print(greeting[0])  # H (첫 번째 문자)
print(greeting[7:12])  # world (7번째부터 12번째 문자까지)
print(greeting.upper())  # HELLO, WORLD!
    

 

2.3. 불리언 (bool)

  • 참(True) 또는 거짓(False) 값을 나타냅니다.
  • 연산: 논리 연산 (and, or, not)
  • 활용: 조건문, 반복문 등에서 조건식을 평가하는 데 사용됩니다.
  • 예시:
      is_valid = True
is_empty = False
print(is_valid and is_empty)  # False
print(not is_valid)  # False
    

3. 복합 자료형 심층 분석

3.1. 리스트 (list)

  • 여러 개의 자료를 순서대로 저장하는 자료형입니다.
  • 특징:
    • 변경 가능 (mutable)
    • 순서가 있음 (ordered)
    • 중복된 값을 허용
  • 메서드: append(), insert(), remove(), pop(), sort(), reverse()
  • 예시:
      fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits)  # ['apple', 'banana', 'cherry', 'orange']
    

3.2. 튜플 (tuple)

  • 리스트와 비슷하지만, 변경할 수 없는 자료형입니다.
  • 특징:
    • 변경 불가능 (immutable)
    • 순서가 있음 (ordered)
    • 중복된 값을 허용
  • 활용: 자료의 변경을 방지해야 할 때 사용합니다.
  • 예시:
      coordinates = (10, 20)
# coordinates[0] = 30  # TypeError: 'tuple' object does not support item assignment
    

3.3. 딕셔너리 (dict)

  • 키(key)와 값(value)의 쌍으로 이루어진 자료형입니다.
  • 특징:
    • 변경 가능 (mutable)
    • 순서가 없음 (unordered)
    • 키는 중복될 수 없지만, 값은 중복될 수 있음
  • 메서드: get(), keys(), values(), items(), update()
  • 예시:
      person = {"name": "Alice", "age": 30}
print(person["name"])  # Alice
person["city"] = "New York"
print(person)  # {'name': 'Alice', 'age': 30, 'city': 'New York'}
    

4. VS Code 활용 심화

  • IntelliSense: VS Code의 IntelliSense 기능은 자료형에 따라 자동 완성, 오류 검사, 코드 제안 등을 제공하여 개발 생산성을 높여줍니다.
  • 디버깅: VS Code의 디버깅 기능을 사용하면 변수의 값과 자료형을 실시간으로 확인하고, 코드 실행 과정을 추적할 수 있습니다.
  • 확장 기능:
    • Python: 공식 파이썬 확장 기능은 린팅, 포매팅, 디버깅 등 다양한 기능을 제공합니다.
    • Pylance: Microsoft에서 개발한 Pylance 확장 기능은 더욱 강력한 IntelliSense 기능을 제공합니다.
  • Jupyter Notebook: VS Code에서 Jupyter Notebook을 사용할 수 있습니다. Jupyter Notebook은 코드, 텍스트, 이미지 등을 함께 작성하고 실행할 수 있는 대화형 환경을 제공합니다.

5. 자료형 변환

  • int(): 문자열이나 실수를 정수로 변환합니다.
  • float(): 문자열이나 정수를 실수로 변환합니다.
  • str(): 숫자나 불리언을 문자열로 변환합니다.
  • list(): 튜플이나 문자열을 리스트로 변환합니다.
  • tuple(): 리스트를 튜플로 변환합니다.
  • dict(): 키-값 쌍의 리스트나 튜플을 딕셔너리로 변환합니다.

예시:

      num_str = "10"
num_int = int(num_str)  # 문자열 "10"을 정수 10으로 변환
print(type(num_int))  # <class 'int'>
    

 

반응형
LIST

2025.03.14 - [파이썬 프로그래밍] - 3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

 

3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

텍스트 에디터 : 비주얼 스튜디오 코드 현업에서 많이 사용하는 여러 텍스트 에디터 중에서 일반적으로 많이 사용하는 텍스트 에디터 중에 비주얼 스튜디오 코드 라는 프로그램을 설치해 보

suncommq.tistory.com

 

1. 자료란 무엇일까요?

컴퓨터 프로그램에서 '자료'는 프로그램이 다루는 모든 것을 의미합니다. 숫자, 글자, 이미지, 소리 등 다양한 형태가 있을 수 있습니다. 파이썬에서는 이러한 자료를 저장하고 관리하기 위해 '자료형'이라는 개념을 사용합니다. 자료형은 자료의 종류를 나타내며, 각 자료형에 따라 저장 방식과 사용할 수 있는 연산이 달라집니다.

예시:

  • 숫자: 10, 3.14, -5
  • 글자: "Hello", "Python", "123"
  • 참/거짓: True, False

2. 자료를 처리하는 방법

파이썬에서는 다양한 방법으로 자료를 처리할 수 있습니다.

  • 변수: 자료를 저장하는 공간입니다. 변수에 이름을 부여하고, 자료를 할당하여 사용할 수 있습니다.
x = 10  # x라는 변수에 숫자 10을 할당
name = "Alice"  # name이라는 변수에 문자열 "Alice"를 할당

 

변수는 x, name

 

  • 연산자: 자료를 가지고 계산, 비교, 논리 연산 등을 수행하는 기호입니다.
a = 5
b = 3
print(a + b)  # 덧셈 연산
print(a > b)  # 비교 연산

 

 

연산자는 +,-,×,÷,<,>,=

  • 함수: 특정 작업을 수행하는 코드 블록입니다. 자료를 입력받아 처리하고 결과를 반환할 수 있습니다.
def add(x, y):
	return x + y

result = add(5, 3)  # add 함수 호출
print(result)

 

3. 가장 일반적으로 쓰이는 자료형

파이썬에서 가장 많이 사용되는 자료형은 다음과 같습니다.

자료형 설명 예시
정수 (int) 소수점이 없는 숫자 10, -5, 0
실수 (float) 소수점이 있는 숫자 3.14, -2.5, 0.0
문자열 (str) 글자들의 나열 "Hello", "Python", "123"
불리언 (bool) 참(True) 또는 거짓(False) 값 True, False
리스트 (list) 여러 개의 자료를 순서대로 저장하는 자료형 [1, 2, 3], ["apple", "banana", "cherry"]
튜플 (tuple) 리스트와 비슷하지만, 변경할 수 없는 자료형 (1, 2, 3), ("apple", "banana", "cherry")
딕셔너리 (dict) 키(key)와 값(value)의 쌍으로 이루어진 자료형 {"name": "Alice", "age": 30}

 

각 자료형에 대한 추가 설명 및 예제:

  • 정수 (int): 소수점이 없는 숫자
    10, -5, 0
age = 25
print(type(age))  # <class 'int'>
  • 실수 (float):  소수점이 있는 숫자 
    3.14, -2.5, 0.0
pi = 3.14159
print(type(pi))  # <class 'float'>
  • 문자열 (str): 글자들의 나열
    "Hello", "Python", "123"
message = "Hello, world!"
print(type(message))  # <class 'str'>
  • 불리언 (bool): 참(True) 또는 거짓(False) 값
    True, False
is_active = True
print(type(is_active))  # <class 'bool'>
  • 리스트 (list): 여러 개의 자료를 순서대로 저장하는 자료형
    [1, 2, 3], ["apple", "banana", "cherry"]
numbers = [1, 2, 3, 4, 5]
print(type(numbers))  # <class 'list'>
print(numbers[0])  # 1 (리스트의 첫 번째 요소)
  • 튜플 (tuple): 리스트와 비슷하지만, 변경할 수 없는 자료형
    (1, 2, 3), ("apple", "banana", "cherry")
coordinates = (10, 20)
print(type(coordinates))  # <class 'tuple'>
print(coordinates[0])  # 10 (튜플의 첫 번째 요소)
  • 딕셔너리 (dict): 키(key)와 값(value)의 쌍으로 이루어진 자료형
    "키(key) : 값(value)"
    {"name": "Alice", "age": 30}

person = {"name": "Alice", "age": 30}
print(type(person))  # <class 'dict'>
print(person["name"])  # Alice (딕셔너리의 "name" 키에 해당하는 값)

4. VS Code에서 자료형 확인 및 활용

VS Code에서는 다음과 같은 방법으로 자료형을 확인하고 활용할 수 있습니다.

  • type() 함수: 변수의 자료형을 확인하는 데 사용합니다
x = 10
print(type(x))  # <class 'int'>
  • 디버깅: VS Code의 디버깅 기능을 사용하면 프로그램 실행 중에 변수의 값을 확인하고 자료형을 파악할 수 있습니다.
  • 자동 완성: VS Code는 코드 자동 완성 기능을 제공하여 자료형에 맞는 메서드나 속성을 쉽게 사용할 수 있도록 도와줍니다.
  • 확장 기능: VS Code에는 파이썬 개발을 위한 다양한 확장 기능이 있습니다. 이러한 확장 기능을 활용하면 자료형 검사, 코드 분석 등 더욱 편리하게 파이썬을 공부하고 개발할 수 있습니다.

5. 추가 학습 자료

 

 

 

 

 

반응형
LIST

 

TETRIS.PY
0.00MB

 

      import pygame
import random

# Define colors
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
GRAY = (128, 128, 128)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 0)
CYAN = (0, 255, 255)
MAGENTA = (255, 0, 255)
ORANGE = (255, 165, 0)

# Define shapes
SHAPES = [
    [[1, 1, 1, 1]],  # I
    [[1, 1], [1, 1]],  # O
    [[0, 1, 1], [1, 1, 0]],  # S
    [[1, 1, 0], [0, 1, 1]],  # Z
    [[1, 0, 0], [1, 1, 1]],  # J
    [[0, 0, 1], [1, 1, 1]],  # L
    [[0, 1, 0], [1, 1, 1]]   # T
]

COLORS = [CYAN, YELLOW, GREEN, RED, BLUE, ORANGE, MAGENTA]


class Tetris:
    def __init__(self, width, height):
        self.width = width
        self.height = height
        self.grid = [[0 for _ in range(width)] for _ in range(height)]
        self.current_piece = None
        self.current_x = 0
        self.current_y = 0
        self.game_over = False
        self.score = 0
        self.speed = 1  # Adjust for game speed
        self.current_color_index = 0

    def new_piece(self):
        self.current_piece = random.choice(SHAPES)
        self.current_x = self.width // 2 - len(self.current_piece[0]) // 2
        self.current_y = 0
        self.current_color_index = SHAPES.index(self.current_piece)

        if self.is_collision(self.current_piece, self.current_x, self.current_y):
            self.game_over = True

    def rotate_piece(self):
        rotated_piece = list(zip(*self.current_piece[::-1]))
        if not self.is_collision(rotated_piece, self.current_x, self.current_y):
            self.current_piece = rotated_piece
            try:
                self.current_color_index = SHAPES.index(self.current_piece)
            except ValueError:
                self.current_color_index = 0

    def move(self, dx):
        if self.is_collision(self.current_piece, self.current_x + dx, self.current_y):
            return
        self.current_x += dx

    def drop(self):
        if self.is_collision(self.current_piece, self.current_x, self.current_y + 1):
            self.lock_piece()
            return True
        self.current_y += 1
        return False

    def lock_piece(self):
        for y in range(len(self.current_piece)):
            for x in range(len(self.current_piece[0])):
                if self.current_piece[y][x]:
                    self.grid[self.current_y + y][self.current_x + x] = 1
        self.clear_lines()
        self.new_piece()

    def is_collision(self, piece, x, y):
        for py in range(len(piece)):
            for px in range(len(piece[0])):
                if piece[py][px]:
                    grid_x = x + px
                    grid_y = y + py
                    if grid_x < 0 or grid_x >= self.width or grid_y >= self.height:
                        return True
                    if self.grid[grid_y][grid_x]:
                        return True
        return False

    def clear_lines(self):
        lines_cleared = 0
        for y in range(self.height):
            if all(self.grid[y]):
                del self.grid[y]
                self.grid.insert(0, [0 for _ in range(self.width)])
                lines_cleared += 1

        if lines_cleared > 0:
            self.score += lines_cleared ** 2 * 100

    def draw(self, screen):
        for y in range(self.height):
            for x in range(self.width):
                if self.grid[y][x]:
                    pygame.draw.rect(screen, GRAY, (x * 30, y * 30, 30, 30), 0)

        if self.current_piece:
            for y in range(len(self.current_piece)):
                for x in range(len(self.current_piece[0])):
                    if self.current_piece[y][x]:
                        pygame.draw.rect(screen, COLORS[self.current_color_index],
                                         ((self.current_x + x) * 30, (self.current_y + y) * 30, 30, 30), 0)

        font = pygame.font.Font(None, 36)
        score_text = font.render(f"Score: {self.score}", True, WHITE)
        screen.blit(score_text, (10, 10))

        if self.game_over:
            game_over_text = font.render("Game Over!", True, RED)
            text_rect = game_over_text.get_rect(center=(self.width * 30 // 2, self.height * 30 // 2))
            screen.blit(game_over_text, text_rect)


def main():
    pygame.init()
    width = 10
    height = 20
    screen_width = width * 30
    screen_height = height * 30
    screen = pygame.display.set_mode((screen_width, screen_height))
    pygame.display.set_caption("Tetris")

    game = Tetris(width, height)
    game.new_piece()

    clock = pygame.time.Clock()
    fall_time = 0
    fall_speed = 500

    running = True
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_LEFT:
                    game.move(-1)
                if event.key == pygame.K_RIGHT:
                    game.move(1)
                if event.key == pygame.K_DOWN:
                    game.drop()
                if event.key == pygame.K_UP:
                    game.rotate_piece()

        fall_time += clock.get_rawtime()
        if fall_time > fall_speed:
            fall_time = 0
            game.drop()

        if game.game_over:
            running = False

        screen.fill(BLACK)
        game.draw(screen)
        pygame.display.flip()

        clock.tick(60)

    pygame.quit()


if __name__ == "__main__":
    main()
    

 

콘트롤 : 방향 키 , 왼쪽, 오른쪽, 아래

블록 변환 : 방향 키 위

 

2025.03.14 - [파이썬 프로그래밍] - 3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

 

3.파이썬 프로그래밍 Copilot 연동 가능한 비주얼 스튜디오 코드 다운로드해서 설치하기

텍스트 에디터 : 비주얼 스튜디오 코드 현업에서 많이 사용하는 여러 텍스트 에디터 중에서 일반적으로 많이 사용하는 텍스트 에디터 중에 비주얼 스튜디오 코드 라는 프로그램을 설치해 보

suncommq.tistory.com

 

반응형
LIST

여러분 구글에서 URL을 등록하면 몇일 있으면 등록 되는 경우도 있고 안되는 경우도 있지 않습니까?

리디엑션 오류 뭐

리디렉션 오류
 
웹사이트
 
시작되지 않음
 
 
시작되지 않음
 
 
시작되지 않음
 
 
시작되지 않음
 
 
적절한 표준 태그가 포함된 대체 페이지
 
웹사이트
 
찾을 수 없음(404)
 
웹사이트
 
사용자가 선택한 표준이 없는 중복 페이지
 
웹사이트
 
크롤링됨 - 현재 색인이 생성되지 않음        

 

요런식으로 표시 되는 것들 중요한 이유야 다 있겠지만 일단 색인등록이 되었다가 사라지는 경우가 있어서 여러 경로를 통해 드디어 알아냈네요. 

 

무엇보다 중요한 건 중복된 콘텐츠 입니다.

 

구글 크롤러가 우리가 생각 하는 그 이상 입니다.

우리는 구글에서 그래픽 카드를 검색하고 나서 쿠팡에 들어가면 쿠팡에서 그래픽 카드를 추천합니다.

 

우리가 블로그 포스팅 글 올리면서 본의 안이게 여러글 쓰다보면 비슷한 내용도 들어가고는 합니다만

중요한건 이게 다 중복으로 걸러진다는 거구요. 더 중요한 건 여러 군데 플랫폼에다가 비슷한 글 써도 

내가 쓴 글은 중복으로 걸러낼 능력이 있다는 겁니다. 이 크롤러가요....

구글이 대단하다는 걸 이제야 알았네요. 좀 무섭기도 합니다.

 

위에 나온 리디렉션이다 뭐다 그건 중요치 않아요. 혹시 호스트가 메인 호스트가 아니어도 저런게 나올수 있거든요.

 

무엇보다 중요한건 중복되지 않고, 성심껏 글을 작성해야 인정된다는 것이네요.

우리가 글을 직접 썼는지 복사 떴는지 다 알고 있습니다.

정말 무섭네요. 요즘 그냥 일 나갈까 생각중인데요.

요즘 AI 복사 붙이기 매우 성행하여서 네이버도 조치 한다는데

진심 걱정이네요. 

 

 

반응형
LIST

Google AI Studio에서 Gemma 3.27B 모델 사용하기: 단계별 가이드

Google AI Studio는 Google의 최신 AI 모델을 쉽게 실험하고 프로토타입을 만들 수 있는 웹 기반 개발 환경입니다. 이 가이드는 Gemma 3.27B 모델을 Google AI Studio에서 사용하는 방법을 단계별로 설명합니다.

1단계: Google AI Studio 계정 생성 및 로그인

  1. Google AI Studio 웹사이트 접속: https://aistudio.google.com/
  2. Google 계정으로 로그인: Google 계정이 없다면 새로 생성합니다.
  3. 이용 약관 동의: Google AI Studio 이용 약관에 동의합니다.

2단계: 새로운 프로젝트 생성

  1. "Create new project" 버튼 클릭: AI Studio 대시보드에서 "Create new project" 버튼을 클릭합니다.
  2. 프로젝트 이름 입력: 프로젝트 이름을 입력하고 "Create" 버튼을 클릭합니다.

3단계: 모델 선택 및 설정

  1. "Text generation" 선택: 프로젝트 생성 후, "Text generation" 옵션을 선택합니다.
  2. 모델 선택: 모델 선택 화면에서 "Gemma 3.27B" 모델을 선택합니다. (Gemma 2B 모델도 선택 가능합니다.)
  3. 모델 버전 선택: 사용 가능한 Gemma 3.27B 모델 버전을 선택합니다. (최신 버전을 권장합니다.)

4단계: 프롬프트 작성 및 설정

  1. 프롬프트 입력: "Prompt" 입력 상자에 원하는 프롬프트를 입력합니다. (예: "Write a short story about a cat who can talk.")
  2. Parameters 설정:
    • Temperature: 생성되는 텍스트의 무작위성을 조절합니다. (0에 가까울수록 예측 가능하고, 1에 가까울수록 창의적입니다.)
    • Top P: 생성되는 텍스트의 다양성을 조절합니다. (0.1에 가까울수록 예측 가능하고, 1에 가까울수록 다양합니다.)
    • Max Output Tokens: 생성되는 텍스트의 최대 길이를 지정합니다.
    • Stop Sequences: 특정 문자열이 나타나면 텍스트 생성을 중단합니다.
    • Safety Settings: 유해하거나 부적절한 콘텐츠 생성을 방지하기 위한 설정을 조절합니다.
  3. "Run" 버튼 클릭: 프롬프트와 설정을 완료한 후 "Run" 버튼을 클릭하여 텍스트를 생성합니다.

5단계: 결과 확인 및 수정

  1. 생성된 텍스트 확인: "Output" 영역에 생성된 텍스트가 표시됩니다.
  2. 프롬프트 수정 및 재실행: 결과가 만족스럽지 않다면 프롬프트나 설정을 수정하고 "Run" 버튼을 다시 클릭하여 텍스트를 생성합니다.
  3. 모델 설정 조정: Temperature, Top P, Max Output Tokens 등의 설정을 조정하여 원하는 결과를 얻을 때까지 실험합니다.

6단계: API 키 생성 및 사용 (선택 사항)

Google AI Studio에서 생성된 모델을 API를 통해 사용하려면 API 키를 생성해야 합니다.

  1. "API Keys" 메뉴 클릭: AI Studio 왼쪽 메뉴에서 "API Keys"를 클릭합니다.
  2. "Create API Key" 버튼 클릭: API 키 생성 화면에서 "Create API Key" 버튼을 클릭합니다.
  3. API 키 복사: 생성된 API 키를 복사하여 안전한 곳에 저장합니다.
  4. API 사용: 복사한 API 키를 사용하여 Google AI API를 호출하고 Gemma 3.27B 모델을 사용할 수 있습니다.

팁:

  • 명확하고 구체적인 프롬프트 작성: 원하는 결과를 얻기 위해 프롬프트를 명확하고 구체적으로 작성합니다.
  • 다양한 설정 실험: Temperature, Top P, Max Output Tokens 등의 설정을 다양하게 실험하여 최적의 값을 찾습니다.
  • Negative Prompts 활용: 원하지 않는 요소를 지정하여 이미지 생성에서 제외합니다.
  • Google AI Studio 문서 참고: Google AI Studio 공식 문서를 참고하여 더 자세한 정보를 얻습니다. (https://ai.google.dev/)

 

반응형
LIST

스테이블 디퓨전 WebUI를 사용하고 싶지만, 파이썬 버전 때문에 고민이신가요? 어떤 버전을 사용해야 안정적으로 작동할지 궁금하신 분들을 위해 파이썬 버전 호환성에 대한 모든 것을 알려드립니다.

스테이블 디퓨전 WebUI, 어떤 파이썬 버전을 사용해야 할까요?

스테이블 디퓨전 WebUI는 다양한 파이썬 버전에서 작동하지만, 가장 안정적인 작동을 위해서는 파이썬 3.10.6 버전을 사용하는 것을 강력히 추천합니다.

  • 권장 버전: 파이썬 3.10.6
  • 지원 버전: 파이썬 3.10.x 버전 (3.10.6 이후 버전도 가능하지만, 호환성 문제가 발생할 수 있습니다.)
  • 다른 버전: 파이썬 3.9 버전에서도 작동하는 경우가 있지만, 오류 발생 가능성이 높습니다. 3.11 버전 이상은 아직 지원이 불안정합니다.

왜 파이썬 3.10.6을 추천할까요?

스테이블 디퓨전 WebUI 개발자 및 사용자 커뮤니티에서 파이썬 3.10.6 버전이 가장 안정적이라는 피드백이 많습니다. 다른 버전에서는 예상치 못한 오류가 발생하거나, 특정 기능이 제대로 작동하지 않을 수 있습니다.

다른 파이썬 버전을 사용하고 있다면?

만약 파이썬 3.10.6 외의 다른 버전을 사용하고 있다면, 다음과 같은 방법을 고려해 보세요.

  1. 가상 환경 사용: 파이썬 버전을 변경하지 않고 WebUI 실행에 필요한 환경을 격리하는 가상 환경을 사용하는 것이 좋습니다. 가상 환경을 사용하면 기존 파이썬 환경에 영향을 주지 않고 WebUI를 실행할 수 있습니다.
  2. 호환성 문제 해결: 오류가 발생하면 WebUI 관련 커뮤니티나 포럼에서 해결 방법을 찾아보세요. 다른 사용자들의 경험을 통해 문제 해결에 도움을 받을 수 있습니다.
  3. 파이썬 버전 변경: 가장 확실한 방법은 파이썬 버전을 3.10.6으로 변경하는 것입니다.

관련 링크

스테이블 디퓨전 WebUI를 안정적으로 사용하기 위해서는 파이썬 버전 호환성을 꼼꼼히 확인하는 것이 중요합니다. 파이썬 3.10.6 버전을 사용하거나, 가상 환경을 활용하여 문제를 해결해 보세요. 


참고: 이 글은 정보 제공을 목적으로 작성되었으며, 실제 사용 환경에 따라 결과가 다를 수 있습니다.

반응형
LIST

LMSys Elo 점수란?

 

LMSys Elo 점수는 대규모 언어 모델(LLM)의 성능을 비교하기 위해 LMSys(Large Model Systems Organization)에서 도입한 평가 방식입니다.

 

LMSys Elo 점수 개요

  • LMSys는 사용자 피드백을 기반으로 LLM의 상대적인 강점을 평가하는 Arena 플랫폼을 운영하고 있습니다.
  • Elo 점수는 체스 등 순위 시스템에서 사용되는 방식과 유사하게, 모델 간 1:1 비교 평가(pairwise comparison) 를 통해 계산됩니다.
  • 사용자는 두 개의 모델이 생성한 응답을 비교한 후, 더 나은 응답을 선택합니다.
  • 많은 사용자의 선택을 통해 모델의 점수가 결정되며, 높은 점수를 받은 모델이 더 강력한 모델로 간주됩니다.

LMSys Elo 점수 계산 방식

  1. 두 개의 모델이 동일한 질문에 대한 응답을 생성합니다.
  2. 사용자들이 직접 두 응답을 비교하고, 더 나은 응답을 선택합니다.
  3. 승패 기록을 기반으로 Elo 점수가 업데이트됩니다.
  4. 지속적인 비교를 통해 각 모델의 순위가 변동합니다.

LMSys Elo 점수의 의미

  • 점수가 높을수록 상대적으로 더 나은 응답을 제공하는 모델임을 의미합니다.
  • GPT-4, Claude, Gemini, Mistral 등 다양한 최신 모델이 평가에 참여합니다.
  • 연구자 및 개발자는 LMSys Elo 점수를 참고하여 어떤 모델이 특정 작업에서 우수한지 판단할 수 있습니다.

 

95% CI가 무엇인가?

95% CI (Confidence Interval, 신뢰구간) 는 통계에서 특정한 모집단의 참값(평균 또는 비율 등)이 포함될 것으로 예상되는 범위를 의미합니다.

 

LMSys Elo 점수에서 95% CI의 의미

  • LMSys Elo 점수는 사용자 비교 평가 데이터를 기반으로 한 통계적 추정치입니다.
  • 따라서 점수가 변동할 수 있으며, 특정한 범위 안에 실제 점수가 있을 확률을 제시해야 합니다.
  • 95% 신뢰구간(95% CI) 는 "우리가 측정한 Elo 점수의 실제 값이 95% 확률로 이 범위 안에 존재한다"는 의미입니다.

예시

만약 GPT-4의 LMSys Elo 점수가 1250 ± 30 (95% CI: [1220, 1280]) 라고 한다면:

  • GPT-4의 실제 Elo 점수는 1220~1280 사이에 있을 확률이 95%입니다.
  • 즉, 모델의 성능이 단일한 수치가 아니라, 약간의 변동성을 고려한 범위로 이해해야 합니다.

왜 95% 신뢰구간을 사용하는가?

  • LMSys Elo 점수는 많은 사용자 평가 데이터에서 추정되므로 오차가 포함됩니다.
  • 데이터가 충분하지 않거나 평가 간 차이가 크면 신뢰구간이 넓어질 수 있습니다.
  • 95% CI를 제공하면 점수의 정확성과 신뢰도를 더 잘 해석할 수 있습니다.

즉, LMSys Elo 점수의 95% CI는 모델 평가 결과의 신뢰성을 보여주는 지표입니다.

 

그러면 type란 무엇인가?

LMSys Elo 순위에서 "type" 은 비교되는 모델의 유형을 나타내는 속성입니다. 보통 다음과 같은 값이 있습니다.

 

LMSys Elo "type"의 주요 분류

  1. Proprietary (사유 모델)
    • 기업에서 개발하여 상업적으로 운영하는 모델
    • 예시: gpt-4-turbo, claude-3-opus, gemini-1.5-pro
  2. Open (오픈소스 모델)
    • 공개되어 누구나 사용할 수 있는 모델
    • 예시: mistral-7b, llama-3-70b, mixtral-8x7b
  3. Fine-tuned (튜닝된 모델)
    • 기본 모델을 특정 목적에 맞게 추가 학습한 버전
    • 예시: zephyr-7b-beta (fine-tuned)
  4. Anonymous (익명 모델)
    • 테스트 중이거나 아직 정식으로 공개되지 않은 모델
    • gpt-4-0125-preview (anonymous) 같은 경우

즉, "type"은 해당 모델이 사유(기업 소유)인지, 오픈소스인지, 혹은 튜닝된 버전인지 등을 나타내는 정보입니다.

 

그러면 #params/#activated 는 무엇?

LMSys Elo 순위에서 #params / #activated 항목은 모델의 규모를 나타내는 지표입니다.

 

1. #params (파라미터 수, Parameters)

  • 모델이 학습에 사용한 총 가중치(weight) 개수를 의미합니다.
  • 일반적으로 더 많은 파라미터를 가진 모델은 더 복잡한 패턴을 학습할 수 있습니다.
  • 단위: B (Billion, 10억 개)

예시:

  • Mistral-7B → 7B (70억 개) 파라미터
  • LLaMA 3-70B → 70B (700억 개) 파라미터

2. #activated (활성화된 파라미터 수, Activated Parameters)

  • 일부 모델(특히 Mixture of Experts, MoE 구조)은 한 번의 실행에서 일부 파라미터만 활성화됩니다.
  • 즉, 모델이 요청을 처리할 때 전체 파라미터를 사용하지 않고, 일부만 선택적으로 활용하는 방식입니다.
  • 이는 메모리 절약 및 속도 최적화에 유리합니다.

예시:

  • Mixtral-8x7B:
    • #params = 56B (총 8개 전문가 × 각 7B)
    • #activated = 14B (한 번에 2개 전문가만 활성화됨)

즉, #params는 모델의 전체 크기, #activated는 실제 요청 처리 시 사용되는 파라미터 수를 의미합니다.

 

LMSys Arena의 최신 순위 정보

Chatbot Arena LLM Leaderboard: Community-driven Evaluation for Best LLM and AI chatbots

Rank* (UB) Rank (StyleCtrl) Model Arena Score 95% CI Votes Organization License Knowledge Cutoff
1 1 GPT-4.5-Preview 1404 -0.7777777778 6024 OpenAI Proprietary Unknown
1 2 chocolate (Early Grok-3) 1402 -1 14006 xAI Proprietary Unknown
4 7 Gemini-2.0-Flash-Thinking-Exp-01-21 1384 -1 19837 Google Proprietary Unknown
4 3 Gemini-2.0-Pro-Exp-02-05 1380 -1 17695 Google Proprietary Unknown
4 2 ChatGPT-4o-latest (2025-01-29) 1375 -0.8 19587 OpenAI Proprietary Unknown
7 5 DeepSeek-R1 1361 -0.8333333333 10474 DeepSeek MIT Unknown
7 11 Gemini-2.0-Flash-001 1355 -0.8 15416 Google Proprietary Unknown
7 3 o1-2024-12-17 1353 -1 22010 OpenAI Proprietary Unknown
10 11 Gemma-3-27B-it 1339 -0.8181818182 3870 Google Gemma Unknown
10 11 Qwen2.5-Max 1338 -1 14258 Alibaba Proprietary Unknown
10 8 o1-preview 1335 -1 33195 OpenAI Proprietary 2023/10
10 11 o3-mini-high 1328 -1.2 11409 OpenAI Proprietary Unknown
14 13 DeepSeek-V3 1319 -1 23079 DeepSeek DeepSeek Unknown
14 19 GLM-4-Plus-0111 1310 -0.875 6037 Zhipu Proprietary Unknown
14 16 Qwen-Plus-0125 1310 -0.875 6058 Alibaba Proprietary Unknown
15 16 Gemini-2.0-Flash-Lite 1308 -1 15126 Google Proprietary Unknown
15 15 o3-mini 1305 -0.6 17849 OpenAI Proprietary Unknown
15 7 Claude 3.7 Sonnet 1304 -1 6952 Anthropic Proprietary Unknown
15 21 Step-2-16K-Exp 1304 -1.428571429 5138 StepFun Proprietary Unknown
15 21 o1-mini 1304 -1 54978 OpenAI Proprietary 2023/10
15 16 Gemini-1.5-Pro-002 1302 -1 58887 Google Proprietary Unknown
23 23 Grok-2-08-13 1288 -0.6666666667 67102 xAI Proprietary 2024/3
23 25 Yi-Lightning 1287 -0.75 28972 01 AI Proprietary Unknown
23 17 GPT-4o-2024-05-13 1285 -1 117785 OpenAI Proprietary 2023/10
23 11 Claude 3.5 Sonnet (20241022) 1283 -1 61187 Anthropic Proprietary 2024/4
23 34 Qwen2.5-plus-1127 1282 -1 10742 Alibaba Proprietary Unknown
23 28 Deepseek-v2.5-1210 1279 -0.8571428571 7258 DeepSeek DeepSeek Unknown
27 35 Athene-v2-Chat-72B 1275 -1 26113 NexusFlow NexusFlow Unknown
27 33 GLM-4-Plus 1274 -1.333333333 27780 Zhipu AI Proprietary Unknown
27 24 Hunyuan-Large-2025-02-10 1272 -0.8 3863 Tencent Proprietary Unknown
28 34 GPT-4o-mini-2024-07-18 1272 -1 67965 OpenAI Proprietary 2023/10
28 35 Gemini-1.5-Flash-002 1271 -1 37016 Google Proprietary Unknown
28 48 Llama-3.1-Nemotron-70B-Instruct 1268 -1.333333333 7579 Nvidia Llama 3.1 2023/12
29 19 Claude 3.5 Sonnet (20240620) 1268 -1 86188 Anthropic Proprietary 2024/4
29 21 Meta-Llama-3.1-405B-Instruct-bf16 1268 -0.75 36639 Meta Llama 3.1 Community 2023/12
31 22 Meta-Llama-3.1-405B-Instruct-fp8 1267 -1 63071 Meta Llama 3.1 Community 2023/12
31 22 Gemini Advanced App (2024-05-14) 1266 -1 52160 Google Proprietary Online
32 43 Grok-2-Mini-08-13 1266 -1 55464 xAI Proprietary 2024/3
32 23 GPT-4o-2024-08-06 1265 -0.75 48000 OpenAI Proprietary 2023/10
32 34 Qwen-Max-0919 1263 -0.6666666667 17437 Alibaba Qwen Unknown
33 35 Hunyuan-Standard-2025-02-10 1259 -0.6363636364 4027 Tencent Proprietary Unknown
38 30 Gemini-1.5-Pro-001 1260 -1 82464 Google Proprietary 2023/11
41 40 Deepseek-v2.5 1258 -0.75 26356 DeepSeek DeepSeek Unknown
41 48 Qwen2.5-72B-Instruct 1257 -0.75 41552 Alibaba Qwen 2024/9
41 30 GPT-4-Turbo-2024-04-09 1256 -0.6666666667 102184 OpenAI Proprietary 2023/12
41 33 Llama-3.3-70B-Instruct 1256 -1 30990 Meta Llama-3.3 Unknown
43 35 Mistral-Large-2407 1251 -1 48216 Mistral Mistral Research 2024/7
43 44 Athene-70B 1250 -1.25 20599 NexusFlow CC-BY-NC-4.0 2024/7
47 34 GPT-4-1106-preview 1250 -0.6666666667 103777 OpenAI Proprietary 2023/4
47 53 Meta-Llama-3.1-70B-Instruct 1248 -0.6666666667 58675 Meta Llama 3.1 Community 2023/12
47 48 Mistral-Large-2411 1247 -1 25447 Mistral MRL Unknown
47 32 Claude 3 Opus 1247 -0.6666666667 202711 Anthropic Proprietary 2023/8
47 54 Amazon Nova Pro 1.0 1245 -1 20675 Amazon Proprietary Unknown
47 50 Llama-3.1-Tulu-3-70B 1243 -0.7272727273 3016 Ai2 Llama 3.1 Unknown
50 35 GPT-4-0125-preview 1245 -0.6666666667 97104 OpenAI Proprietary 2023/12
55 53 Reka-Core-20240904 1235 -1 7942 Reka AI Proprietary Unknown
56 35 Claude 3.5 Haiku (20241022) 1236 -1 26119 Anthropic Propretary Unknown
58 56 Gemini-1.5-Flash-001 1227 -1 65681 Google Proprietary 2023/11
59 54 Jamba-1.5-Large 1221 -0.8571428571 9128 AI21 Labs Jamba Open 2024/3
60 55 Gemma-2-27B-it 1220 -1 79649 Google Gemma license 2024/6
60 63 Qwen2.5-Coder-32B-Instruct 1217 -1 5733 Alibaba Apache 2.0 Unknown
60 56 Gemma-2-9B-it-SimPO 1216 -1 10554 Princeton MIT 2024/7
60 70 Amazon Nova Lite 1.0 1216 -1 18677 Amazon Proprietary Unknown
60 58 Command R+ (08-2024) 1215 -0.5714285714 10544 Cohere CC-BY-NC-4.0 2024/8
60 65 Mistral-Small-24B-Instruct-2501 1214 -0.8333333333 10979 Mistral Apache 2.0 Unknown
60 54 Llama-3.1-Nemotron-51B-Instruct 1211 -1 3887 Nvidia Llama 3.1 2023/12
61 71 Gemini-1.5-Flash-8B-001 1212 -1 37701 Google Proprietary Unknown
62 69 Aya-Expanse-32B 1209 -1 28777 Cohere CC-BY-NC-4.0 Unknown
62 61 Nemotron-4-340B-Instruct 1209 -1.25 20613 Nvidia NVIDIA Open Model 2023/6
62 64 GLM-4-0520 1207 -0.8333333333 10216 Zhipu AI Proprietary Unknown
65 62 Reka-Flash-20240904 1205 -0.7142857143 8138 Reka AI Proprietary Unknown
66 62 Llama-3-70B-Instruct 1206 -0.6666666667 163686 Meta Llama 3 Community 2023/12
68 76 Phi-4 1202 -1 18442 Microsoft MIT Unknown
71 61 Claude 3 Sonnet 1201 -1 113094 Anthropic Proprietary 2023/8
72 84 Amazon Nova Micro 1.0 1197 -0.8 18701 Amazon Proprietary Unknown
73 84 Hunyuan-Standard-256K 1189 -1 2902 Tencent Proprietary Unknown
76 70 Gemma-2-9B-it 1192 -1 57307 Google Gemma license 2024/6
76 70 Command R+ (04-2024) 1190 -1 80880 Cohere CC-BY-NC-4.0 2024/3
76 86 Llama-3.1-Tulu-3-8B 1185 -1.1 3074 Ai2 Llama 3.1 Unknown
77 70 Qwen2-72B-Instruct 1187 -1 38874 Alibaba Qianwen LICENSE 2024/6
77 58 GPT-4-0314 1186 -1 55966 OpenAI Proprietary 2021/9
77 84 Ministral-8B-2410 1182 -0.8181818182 5115 Mistral MRL Unknown
79 85 Aya-Expanse-8B 1180 -1.2 10405 Cohere CC-BY-NC-4.0 Unknown
79 72 Command R (08-2024) 1180 -1.2 10842 Cohere CC-BY-NC-4.0 2024/8
80 70 DeepSeek-Coder-V2-Instruct 1178 -1 15757 DeepSeek AI DeepSeek License 2024/6
81 75 Claude 3 Haiku 1179 -1 122349 Anthropic Proprietary 2023/8
81 84 Jamba-1.5-Mini 1176 -0.7142857143 9273 AI21 Labs Jamba Open 2024/3
81 100 Meta-Llama-3.1-8B-Instruct 1176 -1.333333333 52616 Meta Llama 3.1 Community 2023/12
90 69 GPT-4-0613 1163 -1 91644 OpenAI Proprietary 2021/9
90 84 Qwen1.5-110B-Chat 1161 -1 27441 Alibaba Qianwen LICENSE 2024/4
90 99 Yi-1.5-34B-Chat 1157 -1 25139 01 AI Apache-2.0 2024/5
90 85 Reka-Flash-21B-online 1156 -1 16024 Reka AI Proprietary Online
90 118 QwQ-32B-Preview 1153 -0.7 3413 Alibaba Apache 2.0 Unknown
91 84 Mistral-Large-2402 1157 -1 64935 Mistral Proprietary Unknown
92 92 Llama-3-8B-Instruct 1152 -0.6666666667 109121 Meta Llama 3 Community 2023/3
92 107 InternLM2.5-20B-chat 1149 -1 10599 InternLM Other 2024/8
94 89 Command R (04-2024) 1149 -2 56393 Cohere CC-BY-NC-4.0 2024/3
94 92 Mistral Medium 1148 -0.75 35564 Mistral Proprietary Unknown
94 92 Reka-Flash-21B 1148 -1 25819 Reka AI Proprietary 2023/11
94 95 Granite-3.1-8B-Instruct 1142 -0.75 3302 IBM Apache 2.0 Unknown
95 88 Mixtral-8x22b-Instruct-v0.1 1147 -1 53787 Mistral Apache 2.0 2024/4
95 89 Qwen1.5-72B-Chat 1147 -1 40668 Alibaba Qianwen LICENSE 2024/2
96 107 Gemma-2-2b-it 1144 -0.75 49031 Google Gemma license 2024/7
104 86 Gemini-1.0-Pro-001 1131 -1.25 18798 Google Proprietary 2023/4
104 99 Zephyr-ORPO-141b-A35b-v0.1 1127 -0.875 4865 HuggingFace Apache 2.0 2024/4
105 101 Qwen1.5-32B-Chat 1125 -0.75 22769 Alibaba Qianwen LICENSE 2024/2
105 110 Granite-3.1-2B-Instruct 1119 -1 3381 IBM Apache 2.0 Unknown
106 107 Phi-3-Medium-4k-Instruct 1123 -1 26105 Microsoft MIT 2023/10
106 120 Starling-LM-7B-beta 1119 -1.25 16676 Nexusflow Apache-2.0 2024/3
108 97 Gemini Pro 1110 -1 6558 Google Proprietary 2023/4
109 112 Yi-34B-Chat 1111 -1 15922 01 AI Yi License 2023/6
110 107 Mixtral-8x7B-Instruct-v0.1 1114 #DIV/0! 76132 Mistral Apache 2.0 2023/12
111 110 Qwen1.5-14B-Chat 1109 -0.8 18679 Alibaba Qianwen LICENSE 2024/2
111 110 WizardLM-70B-v1.0 1106 -0.8571428571 8382 Microsoft Llama 2 Community 2023/8
111 115 Meta-Llama-3.2-3B-Instruct 1103 -1 8395 Meta Llama 3.2 2023/12
112 97 GPT-3.5-Turbo-0125 1106 -1 68893 OpenAI Proprietary 2021/9
112 107 DBRX-Instruct-Preview 1103 -1 33740 Databricks DBRX LICENSE 2023/12
112 114 Phi-3-Small-8k-Instruct 1102 -1 18475 Microsoft MIT 2023/10
113 117 Tulu-2-DPO-70B 1099 -1.166666667 6661 AllenAI/UW AI2 ImpACT Low-risk 2023/11
117 107 Granite-3.0-8B-Instruct 1093 -0.8571428571 6998 IBM Apache 2.0 Unknown
118 113 OpenChat-3.5-0106 1091 -1.2 12989 OpenChat Apache-2.0 2024/1
119 127 Llama-2-70B-chat 1093 -1 39615 Meta Llama 2 Community 2023/7
120 118 Vicuna-33B 1091 -1 22943 LMSYS Non-commercial 2023/8
120 112 Snowflake Arctic Instruct 1090 -0.75 34192 Snowflake Apache 2.0 2024/4
120 122 Starling-LM-7B-alpha 1088 -1 10418 UC Berkeley CC-BY-NC-4.0 2023/11
120 131 Nous-Hermes-2-Mixtral-8x7B-DPO 1084 -1.125 3835 NousResearch Apache-2.0 2024/1
121 127 NV-Llama2-70B-SteerLM-Chat 1081 -1.111111111 3638 Nvidia Llama 2 Community 2023/11
122 113 Gemma-1.1-7B-it 1084 -1 25070 Google Gemma license 2024/2
126 117 DeepSeek-LLM-67B-Chat 1077 -1.142857143 4989 DeepSeek AI DeepSeek License 2023/11
127 115 OpenChat-3.5 1077 -0.8571428571 8110 OpenChat Apache-2.0 2023/11
127 118 OpenHermes-2.5-Mistral-7B 1074 -1.166666667 5088 NousResearch Apache-2.0 2023/11
127 125 Granite-3.0-2B-Instruct 1074 -1 7191 IBM Apache 2.0 Unknown
128 133 Qwen1.5-7B-Chat 1070 -1 4874 Alibaba Qianwen LICENSE 2024/2
128 127 Dolphin-2.2.1-Mistral-7B 1062 -1 1713 Cognitive Computations Apache-2.0 2023/10
129 133 Mistral-7B-Instruct-v0.2 1072 -0.8 20064 Mistral Apache-2.0 2023/12
129 133 Phi-3-Mini-4K-Instruct-June-24 1071 -0.8333333333 12810 Microsoft MIT 2023/10
129 110 GPT-3.5-Turbo-1106 1068 -0.8333333333 17041 OpenAI Proprietary 2021/9
130 137 Phi-3-Mini-4k-Instruct 1066 -1.666666667 21095 Microsoft MIT 2023/10
132 132 SOLAR-10.7B-Instruct-v1.0 1062 -1 4290 Upstage AI CC-BY-NC-4.0 2023/11
134 137 Llama-2-13b-chat 1063 -0.8 19717 Meta Llama 2 Community 2023/7
135 133 WizardLM-13b-v1.2 1058 -1 7176 Microsoft Llama 2 Community 2023/7
139 142 Meta-Llama-3.2-1B-Instruct 1054 -1.166666667 8524 Meta Llama 3.2 2023/12
139 140 Zephyr-7B-beta 1053 -0.8571428571 11322 HuggingFace MIT 2023/10
140 133 SmolLM2-1.7B-Instruct 1046 -0.7142857143 2374 HuggingFace Apache 2.0 Unknown
140 133 MPT-30B-chat 1045 -1 2647 MosaicML CC-BY-NC-SA-4.0 2023/6
140 139 CodeLlama-70B-instruct 1041 -0.9411764706 1191 Meta Llama 2 Community 2024/1
141 138 Zephyr-7B-alpha 1041 -0.9285714286 1812 HuggingFace MIT 2023/10
142 141 CodeLlama-34B-instruct 1043 -1 7510 Meta Llama 2 Community 2023/7
142 131 falcon-180b-chat 1034 -0.8823529412 1328 TII Falcon-180B TII License 2023/9
145 135 Vicuna-13B 1042 -1 19774 LMSYS Llama 2 Community 2023/7
145 142 Gemma-7B-it 1037 -1 9185 Google Gemma license 2024/2
145 142 Phi-3-Mini-128k-Instruct 1037 -1 21630 Microsoft MIT 2023/10
145 156 Llama-2-7B-chat 1037 -1.25 14535 Meta Llama 2 Community 2023/7
145 136 Qwen-14B-Chat 1035 -1.142857143 5066 Alibaba Qianwen LICENSE 2023/8
145 143 Guanaco-33B 1033 -0.8181818182 2997 UW Non-commercial 2023/5
153 146 Gemma-1.1-2b-it 1021 -1.166666667 11344 Google Gemma license 2024/2
155 149 StripedHyena-Nous-7B 1017 -0.875 5276 Together AI Apache 2.0 2023/12
155 163 OLMo-7B-instruct 1015 -0.875 6500 Allen AI Apache-2.0 2024/2
158 155 Mistral-7B-Instruct-v0.1 1008 -1 9145 Mistral Apache 2.0 2023/9
158 157 Vicuna-7B 1005 -0.8571428571 7015 LMSYS Llama 2 Community 2023/7
158 146 PaLM-Chat-Bison-001 1003 -1 8715 Google Proprietary 2021/6
161 161 Gemma-2B-it 989 -0.8 4923 Google Gemma license 2024/2
163 160 Qwen1.5-4B-Chat 988 -1.142857143 7819 Alibaba Qianwen LICENSE 2024/2
165 165 Koala-13B 964 -1.142857143 7024 UC Berkeley Non-commercial 2023/4
165 165 ChatGLM3-6B 955 -0.8 4764 Tsinghua Apache-2.0 2023/10
166 164 GPT4All-13B-Snoozy 932 -0.9333333333 1789 Nomic AI Non-commercial 2023/3
167 165 MPT-7B-Chat 928 -1 3999 MosaicML CC-BY-NC-SA-4.0 2023/5
167 170 ChatGLM2-6B 924 -1.2 2710 Tsinghua Apache-2.0 2023/6
167 167 RWKV-4-Raven-14B 922 -0.8888888889 4919 RWKV Apache 2.0 2023/4
171 165 Alpaca-13B 901 -1 5865 Stanford Non-commercial 2023/3
171 171 OpenAssistant-Pythia-12B 893 -1 6368 OpenAssistant Apache 2.0 2023/4
172 173 ChatGLM-6B 879 -1.375 4983 Tsinghua Non-commercial 2023/3
173 173 FastChat-T5-3B 868 -0.8888888889 4287 LMSYS Apache 2.0 2023/4
175 176 StableLM-Tuned-Alpha-7B 840 -1 3337 Stability AI CC-BY-NC-SA-4.0 2023/4
175 173 Dolly-V2-12B 822 -1.111111111 3483 Databricks MIT 2023/4
177 174 LLaMA-13B 799 -0.6470588235 2445 Meta Non-commercial 2023/2

 

아래 huggingface 사이트 참고

 

https://huggingface.co/spaces/lmarena-ai/chatbot-arena-leaderboard

 

Chatbot Arena Leaderboard - a Hugging Face Space by lmarena-ai

 

huggingface.co

 

반응형
LIST

+ Recent posts