GPT OSS에 접근하는 방법? 설치 및 최적화 완벽 가이드

GPT OSS에 접근하는 방법? 설치 및 최적화 완벽 가이드

GPT OSS는 OpenAI의 첫 번째 오픈소스 GPT 모델 시리즈로, 고급 언어 기능을 누구나 사용할 수 있도록 설계되었습니다. GPT OSS 120B(약 1,170억 파라미터)와 GPT OSS 20B(210억 파라미터) 두 가지 크기로 제공됩니다. 이전 OpenAI 모델과 달리, GPT OSS는 허용적인 라이선스 하에 오픈 가중치를 제공하여 자체 하드웨어에서 모델을 다운로드하고 실행할 수 있습니다.

이 가이드에서는 GPT OSS의 기본 사항, 개선 사항 및 요구 사항을 소개하고, 실제로 사용하는 방법을 단계별로 안내합니다.

GPT OSS 시작하기: 초보자 가이드

gpt oss

GPT OSS 아키텍처

  • 효율적인 추론을 위한 희소 활성화 MoE 기술
  • 자기회귀 Transformer + MoE 아키텍처
  • RoPE(회전 위치 임베딩)
  • 긴 시퀀스 지원을 위한 전역 및 로컬 윈도우 어텐션 교대 사용
  • OpenAI Responses API와 호환되는 o200k_harmony 토크나이저
  • OpenAI 모델 인터페이스와의 직접 호환성

고효율 및 확장성

  • 희소 활성화 MoE와 Transformer 아키텍처를 사용하여 방대한 파라미터를 처리하면서도 빠르고 효율적으로 실행됩니다. 컴퓨팅 자원을 크게 늘리지 않고도 모델 크기를 확장하기 쉽습니다.

매우 긴 컨텍스트 처리 가능

  • 최대 128k 토큰 지원, RoPE 위치 인코딩, 전역 및 로컬 어텐션의 조합으로 대부분의 다른 모델보다 훨씬 긴 텍스트나 대화를 처리할 수 있습니다. 특히 긴 문서나 다중 턴 대화에 유용합니다.

통합 및 사용 용이성

  • o200k_harmony 토크나이저와 OpenAI API와의 직접 호환성 덕분에 기존 OpenAI 워크플로우에 드롭인 대체로 사용할 수 있습니다. 개발자가 모델을 채택하고 배포하는 장벽을 낮춥니다.

GPT OSS 시스템 요구 사항

**모델 ** ** 레이어 ** ** 총 파라미터 ** ** 토큰당 활성 파라미터 ** ** 전체 전문가 수 ** ** 토큰당 활성 전문가 수 ** ** 컨텍스트 길이 ** ** 단일 GPU VRAM 요구 사항**
gpt-oss-120b 36 117B 5.1B 128 4 128k 80GB
gpt-oss-20b 24 21B 3.6B 32 4 128k 16GB

GPT OSS 학습

1. 데이터 품질 및 범위

  • 규모: 방대한 텍스트 코퍼스에서 수조 개의 토큰으로 학습.
  • 콘텐츠 초점: 전문 지식(STEM, 프로그래밍 코드)과 일반 지식을 모두 포함.
  • 안전 필터링: 유해 및 민감 콘텐츠, 특히 생물안전에 대한 엄격한 필터링.

강점:
광범위한 일반 지식과 기술 분야의 깊은 전문성을 결합하면서도 높은 데이터 안전성과 신뢰성을 유지합니다.

2. 학습 프로세스 및 컴퓨팅

  • 컴퓨팅 투자:

    • GPT-OSS-120B: 약 210만 H100 GPU 시간 (최고 수준의 독점 모델과 비슷)
    • GPT-OSS-20B: 그 약 1/6
  • 아키텍처: 자기회귀 Transformer + MoE

강점:
막대한 컴퓨팅 투자로 최첨단 성능과 모델 견고성을 보장합니다.

3. 사후 학습 및 정렬

  • 파인튜닝:

    • 지도 명령어 파인튜닝
    • 고컴퓨팅 강화 학습 단계
  • 정렬 기술:

    • Chain-of-Thought (CoT) 강화 학습
    • 안전 및 윤리 기준에 대한 엄격한 정렬

강점:
고급 단계별 추론, 복잡한 문제 해결, 안전 지침에 대한 강력한 정렬을 가능하게 합니다.

4. 유연성 및 실용성

  • 추론 모드: 낮음, 중간, 높음 추론 노력 지원, 개발자가 정확성, 지연 시간, 비용을 균형 있게 조정 가능.

강점:
다양한 사용 사례와 컴퓨팅 예산에 맞춰 실용적인 유연성을 제공합니다.

GPT OSS 개선 사항

GPT-OSS는 강력한 도구 사용 및 확장성이 돋보입니다.

GPT OSS와 GPT 4의 차이점

GPT OSS와 GPT 4의 차이점

GPT-OSS, 특히 120B 모델은 추론, 과학 지식, 코딩에서 강력한 능력을 보여주며 주류 대형 모델에 근접합니다. 그러나 GPT-4 (o4-mini)는 일반 추론, 과학 추론, 고급 도전 과제, 코드 생성 등 모든 주요 벤치마크에서 여전히 선두를 유지하고 있습니다. GPT-OSS는 경쟁력이 있으며 까다로운 시나리오에 적합하지만, GPT-4는 정확성과 보편성 측면에서 최고의 성능을 유지합니다.

GPT OSS는 어디에서 다운로드할 수 있나요?

GPT OSS 요구 사항

가속 기술 및 리소스 사용량 (GPT-OSS 추론)

가속 기술 및 리소스 사용량

GPT OSS 다운로드 방법

방법 장점 하드웨어 일반적인 사용
Transformers 공식, 유연, 훌륭한 커뮤니티 모든 주요 GPU 로컬 추론, 파인튜닝
Llama.cpp 경량, 크로스 플랫폼, 빠름 CUDA/Metal/Vulkan 엣지/소비자/경량 배포
vLLM 높은 처리량, 최적화 Hopper 선호 추론 서버, 확장 가능한 API
transformers serve 원커맨드 API 서버 모든 GPU 로컬 API 프로토타이핑/테스트
torchrun/accelerate 멀티 GPU/분산 추론 멀티 GPU 대형 모델 추론/학습

1. Transformers 사용

대부분의 GPU에서 작동, 특히 Hopper/Blackwell (H100/H200/GB200/50xx)에 적합.

설치

pip install --upgrade accelerate transformers kernels
# (선택 사항) PyTorch 2.8 및 Triton 3.4의 경우:
pip install torch==2.8.0 --index-url https://download.pytorch.org/whl/test/cu128
pip install git+https://github.com/triton-lang/triton.git@main#subdirectory=python/triton_kernels

기본 추론 예제

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "openai/gpt-oss-20b"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",
    torch_dtype="auto",
)

messages = [{"role": "user", "content": "'strawberry'라는 단어에 r이 몇 개 있나요?"}]
inputs = tokenizer.apply_chat_template(
    messages, add_generation_prompt=True, return_tensors="pt", return_dict=True
).to(model.device)
generated = model.generate(**inputs, max_new_tokens=100)
print(tokenizer.decode(generated[0][inputs["input_ids"].shape[-1]:]))

지원되는 최적화

  • mxfp4 + Triton 3.4 (Hopper/Blackwell GPU용: 가장 빠르고 메모리 사용량 최소)
  • Flash Attention 3 (Hopper GPU용, attn_implementation="kernels-community/vllm-flash-attn3" 사용)
  • MegaBlocks MoE 커널 (Hopper/Blackwell 이외의 CUDA 또는 AMD용, use_kernels=True 사용, mxfp4보다 메모리 사용량 많음)

2. Llama.cpp

  • 기본 mxfp4 + Flash Attention 지원.
  • 크로스 플랫폼: Metal, CUDA, Vulkan.
  • 쉬운 설치:
    • macOS: brew install llama.cpp
    • Windows: winget install llama.cpp
  • 권장: llama-server와 함께 사용
llama-server -hf ggml-org/gpt-oss-120b-GGUF -c 0 -fa --jinja --reasoning-format none
# 그런 다음 브라우저에서 http://localhost:8080 접속

3. vLLM (최적화된 추론 엔진)

  • Flash Attention 3 (Sink Attention) 지원, Hopper GPU에서 최상의 성능.
  • Python에서 사용:
from vllm import LLM llm = LLM("openai/gpt-oss-120b", tensor_parallel_size=2) output = llm.generate("San Francisco is a")

API를 통해 GPT OSS를 실행하려면 어디로 가야 하나요?

Novita AI는 **131K 컨텍스트 ** 를 가진 GPT-OSS 120B API를 제공하며 비용은 **$0.1/입력 ** 및 **$0.5/출력 ** 입니다. 또한 Novita AI는 131 컨텍스트의 GPT-OSS 20B를 **$0.05/입력 ** 및 $0.2/출력 비용으로 제공하여 GPT OSS의 코드 에이전트 잠재력을 극대화할 수 있도록 강력히 지원합니다.

Novita AI

1단계: 로그인하고 모델 라이브러리에 접속

계정에 로그인하고 Model Library 버튼을 클릭합니다.

로그인하고 모델 라이브러리에 접속

지금 GPT OSS 사용해보기!

2단계: 모델 선택

사용 가능한 옵션을 탐색하고 필요에 맞는 모델을 선택합니다.

2단계: 모델 선택

3단계: 무료 체험 시작

선택한 모델의 기능을 탐색하려면 무료 체험을 시작하세요.

3단계: 무료 체험 시작

4단계: API 키 받기

API 인증을 위해 새 API 키를 제공합니다. Settings 페이지로 이동하여 이미지에 표시된 대로 API 키를 복사합니다.

API 키 받기

5단계: API 설치

프로그래밍 언어에 맞는 패키지 관리자를 사용하여 API를 설치합니다.

설치 후, 개발 환경에 필요한 라이브러리를 가져옵니다. API 키로 API를 초기화하여 Novita AI LLM과 상호 작용을 시작합니다. 다음은 Python 사용자를 위한 채팅 완료 API 사용 예시입니다.

from openai import OpenAI
  
client = OpenAI(
    base_url="https://api.novita.ai/v3/openai",
    api_key="",
)

model = "openai/gpt-oss-120b"
stream = True # 또는 False
max_tokens = 65536
system_content = ""도움이 되는 어시스턴트가 되어주세요.""
temperature = 1
top_p = 1
min_p = 0
top_k = 50
presence_penalty = 0
frequency_penalty = 0
repetition_penalty = 1
response_format = { "type": "text" }

chat_completion_res = client.chat.completions.create(
    model=model,
    messages=[
        {
            "role": "system",
            "content": system_content,
        },
        {
            "role": "user",
            "content": "안녕하세요!",
        }
    ],
    stream=stream,
    max_tokens=max_tokens,
    temperature=temperature,
    top_p=top_p,
    presence_penalty=presence_penalty,
    frequency_penalty=frequency_penalty,
    response_format=response_format,
    extra_body={
      "top_k": top_k,
      "repetition_penalty": repetition_penalty,
      "min_p": min_p
    }
  )

if stream:
    for chunk in chat_completion_res:
        print(chunk.choices[0].delta.content or "", end="")
else:
    print(chat_completion_res.choices[0].message.content)
  
  

GPT-OSS에 적합한 채팅 템플릿을 선택하는 방법

1. 일반 대화 또는 Q&A – 최종 결과만 사용자에게 표시

시나리오:
챗봇을 구축 중이며 사용자에게 최종 답변만 보여주려는 경우.
예: “내일 상하이 날씨는?” 또는 “휴가 신청서를 작성해 주세요.”

권장 사항:

  • <|channel|>final<|message|> 이후의 내용만 사용자에게 표시합니다.
  • 모델의 추론이나 분석은 사용자에게 표시하지 않습니다.

2. 디버깅 또는 모델 추론 이해

시나리오:
개발자로서 모델이 답변에 도달하는 과정을 단계별로 보고 싶은 경우.
또는 프롬프트 엔지니어링 작업 중 모델의 사고 과정을 검사하려는 경우.

권장 사항:

  • <|channel|>analysis<|message|> 의 내용을 자신이나 개발팀을 위해 출력하거나 로그로 기록합니다.
  • 사용자 인터페이스에서는 여전히 최종 답변만 표시합니다.

3. 모델 학습 또는 파인튜닝

시나리오:
훈련 데이터를 준비 중이며 모델이 추론 과정과 최종 답변을 모두 학습하기를 원하는 경우.
모델이 향후 자체적으로 사고 과정을 생성하기를 바라는 경우.

권장 사항:

  • 훈련 샘플에서 마지막 어시스턴트 턴에 대해서만 ** 사고 과정을 포함하고, 모든 턴에 추론을 추가하지 ** 않습니다.
  • {"thinking": "...", "content": "..."} 구조를 사용하고, 마지막 어시스턴트 메시지에만 thinking 필드를 포함시킵니다.

4. 도구 호출 또는 외부 플러그인이 포함된 경우

시나리오:
외부 도구(예: 날씨 확인, 주식 가격)를 호출할 수 있는 봇(GPT OSS 사용)을 구축 중인 경우.
도구 호출 프로세스가 올바르게 작동하려면 모델의 분석이 필요합니다.

권장 사항:

  • <|channel|>analysis<|message|> 내용을 도구 처리 또는 오케스트레이션 모듈에 전달하여 의사 결정에 사용합니다.
  • 사용자는 여전히 최종 답변만 보지만, 분석은 백엔드 프로세스에서 사용됩니다.

5. 엄격한 역할, 시간 또는 기능 제어

시나리오:
모든 대화에 모델 ID, 날짜 또는 추론 강도와 같은 시스템 정보를 포함시키려는 경우.
예: 엔터프라이즈 어시스턴트나 시험 봇을 배포할 때.

권장 사항:

  • 채팅 시작 시 "system" 또는 "developer" 역할을 사용하여 컨텍스트를 제공하거나, model_identity 또는 reasoning_effort 같은 채팅 템플릿 매개변수를 통해 설정합니다.

고급 MoE(Mixture-of-Experts) 아키텍처, 긴 컨텍스트 지원, OpenAI API와의 완벽한 호환성을 갖춘 GPT OSS는 통합이 쉽고 성능이 뛰어납니다. 연구, 챗봇 구축, 고급 도구 및 에이전트 개발 등 어떤 작업을 하든 GPT OSS는 개방적이고, 확장 가능하며, 안전한 대규모 언어 모델의 새로운 기준을 제시합니다.

자주 묻는 질문

GPT OSS의 주요 특징은 무엇인가요?

오픈소스 및 오픈 가중치: 자체 하드웨어에 다운로드하여 실행 가능.
두 가지 모델 크기: 120B (~1,170억 파라미터, 80GB VRAM) 및 20B (~210억 파라미터, 16GB VRAM).
최신 아키텍처: 희소 MoE, 긴 컨텍스트(최대 128k 토큰), 전역/로컬 어텐션, RoPE.
API 호환성: OpenAI API의 드롭인 대체로 작동.

하드웨어 요구 사항은 무엇인가요?

GPT OSS 120B: 80GB GPU VRAM (H100, H200, GB200 권장).
GPT OSS 20B: 16GB GPU VRAM.

API를 통해 GPT OSS에 어떻게 접근하나요?

Novita AI 에서 120B 및 20B 모델 모두에 대해 넉넉한 컨텍스트 윈도우와 합리적인 가격의 API 액세스를 제공합니다.
가입하고 API 키를 받은 후 OpenAI 호환 엔드포인트를 사용하기만 하면 됩니다.

Novita AI는 개발자가 간단한 API를 사용하여 AI 모델을 쉽게 배포할 수 있도록 지원하는 AI 클라우드 플랫폼이며, 구축 및 확장을 위한 저렴하고 안정적인 GPU 클라우드도 제공합니다.

추천 읽기