본문 바로가기
인공지능 (AI,GPT)

OpenAI 오픈소스 LLM 모델 GPT-OSS 공개로 로컬에서 자유롭게 활용

by 날으는물고기 2025. 8. 7.

OpenAI 오픈소스 LLM 모델 GPT-OSS 공개로 로컬에서 자유롭게 활용

728x90

OpenAI는 두 가지 강력한 오픈 웨이트(open-weight) 언어 모델을 출시하며 오픈소스 AI 생태계에 큰 전환점을 만들었습니다. 이 두 모델은 다음과 같습니다.

  • gpt-oss-120b: o4-mini 수준의 성능을 갖춘 대규모 모델
  • gpt-oss-20b: o3-mini 수준의 성능을 갖춘 경량 모델

GPT-OSS 모델이란?

GPT-OSS는 OpenAI에서 공개한 최초의 GPT-2 이후 오픈 웨이트(가중치 공개) 언어 모델입니다. 목적은 다음과 같습니다.

  • 고성능 + 저비용 추론 제공
  • Apache 2.0 라이선스 기반의 자유로운 커스터마이징 및 상업적 활용
  • 로컬 추론, 에이전트 워크플로우, 도구 호출, 함수 실행 등을 지원
  • 모델 신뢰성과 안전성을 확보한 철저한 보안 평가 완료

모델 사양 및 아키텍처

모델 계층 총 파라미터 토큰당 활성 파라미터 총 전문가 토큰당 총 전문가 컨텍스트 길이
gpt-oss-120b 36 1,170억 51억 128 4 128k
gpt-oss-20b 24 210억 36억 32 4 128k

🔍 Mixture-of-Experts (MoE) 방식으로 필요한 전문가만 활성화해 추론 효율성을 크게 높였습니다.
📌 토큰당 적은 수의 활성 파라미터로도 고성능을 달성하도록 설계되었습니다.
📌 CoT (Chain of Thought), 함수 호출, 도구 사용, 웹검색 등 에이전트 기능 지원도 탑재되었습니다.

사후 훈련 및 Reasoning 제어

● 사후 훈련 방식

  • o4-mini와 동일한 지도 학습 및 강화학습(RL) 기반 훈련
  • OpenAI의 Model Spec에 맞춰 도구 사용 및 사고 사슬(CoT) 훈련 포함

● 추론 난이도 설정

  • 시스템 메시지에서 reasoning_effort를 통해 low / medium / high 수준 제어 가능
  • 복잡도에 따라 추론 정확도와 속도를 유연하게 조절 가능

성능 벤치마크 (타 모델과의 비교)

Codeforces Competition code - OpenAI

🧮 일반 추론

벤치마크 gpt-oss-120b gpt-oss-20b o4-mini o3-mini
MMLU 67.8% 54.8% 65.6% 43.9%
GPQA (PhD 수준 질문) 90% 85.3% 93% 87%
HLE (Humanity's Last Exam) 57.6% 42.5% 17.7% 13.4%

🧑‍💻 코딩/수학/도구 사용

항목 gpt-oss-120b gpt-oss-20b o4-mini o3-mini
Codeforces (코딩 대회 Elo) 2622 2463 2706 2073
AIME 2024 (수학 대회 정확도) 96.6% 96.0% 98.7% 87.3%
Tau-Bench (도구 호출 정확도) 동등 또는 우수 유사 또는 상위 - -

🏥 의료 특화 (HealthBench)

항목 gpt-oss-120b gpt-oss-20b o4-mini o3-mini
일반 59.8% 50.1% 37.8% 4%
Hard 31.6% 17.5% 10.8% -

보안 및 안전성

OpenAI는 GPT-OSS에 대해 다층 보안 평가최신 안전 훈련 방식을 적용했습니다.

주요 특징

  • CBRN(화학/생물/방사선/핵) 위험 데이터 제거
  • Prompt Injection 방어
  • 숙고적 정렬 및 거부 능력 훈련
  • 악의적인 파인튜닝 시도에 대한 대비 훈련 수행
300x250

🔍 특히, gpt-oss-120b 모델에 대해 "악의적 파인튜닝" 대비 모의 실험을 통해, 공격자가 악용 시도하더라도 주요 위험 수준에 도달하지 못하도록 보장합니다.

활용 사례 및 배포 방식

🎯 주요 활용 영역

  • 에이전트 워크플로우: 함수 호출, 웹검색, 코드 실행
  • 로컬/온디바이스 추론: 저지연 인프라 구축
  • 정부/기업용 온프레미스 배포 및 맞춤형 파인튜닝

🧩 통합 플랫폼

  • API 호환: OpenAI Responses API와 호환
  • 배포 파트너: Hugging Face, Ollama, LM Studio, vLLM, Databricks, Azure 등
  • 지원 플랫폼: PyTorch, Triton, Metal(Apple), ONNX, VS Code, Foundry Local

🚀 실행 예시

# vLLM 환경
vllm serve openai/gpt-oss-20b

# Ollama
ollama run gpt-oss:20b

🤖 Transformers 활용 예시

from transformers import pipeline

pipe = pipeline("text-generation", model="openai/gpt-oss-120b")
pipe([
  {"role": "user", "content": "양자역학을 설명해줘."}
])

다운로드 및 실행

# gpt-oss-20b 다운로드 예시
huggingface-cli download openai/gpt-oss-20b --include "original/*" --local-dir gpt-oss-20b/

왜 중요한가? (오픈소스 생태계 기여)

  • 🌍 전 세계 개발자 및 연구자에게 접근 가능한 고성능 AI 제공
  • 💸 독점 API를 사용하지 못하는 시장(정부, 중소기업, 신흥국)에 대안적 선택지
  • 🔐 안전한 오픈소스 생태계 조성을 위한 출발점

 

OpenAI는 이러한 모델을 통해 더 투명하고 책임감 있는 AI 개발을 촉진하고자 하며, 향후 커뮤니티 피드백을 통해 API 지원도 고려하고 있습니다.

항목 gpt-oss-120b gpt-oss-20b
성능 수준 OpenAI o4-mini 수준 OpenAI o3-mini 수준
파라미터 수 1170억 210억
실행 환경 80GB GPU 16GB 장치
기능 CoT, 도구 호출, 함수 실행, 구조화 출력  
라이선스 Apache 2.0 Apache 2.0
배포 Hugging Face, Ollama, LM Studio 등  

모델 사용 예시 (Transformers 기반)

transformers 라이브러리를 사용하면 gpt-oss 모델을 쉽게 사용할 수 있습니다.

● 설치

pip install transformers accelerate

● 예제 코드 (gpt-oss-120b)

from transformers import pipeline

model_id = "openai/gpt-oss-120b"

pipe = pipeline(
    "text-generation",
    model=model_id,
    torch_dtype="auto",
    device_map="auto",  # GPU 자동 매핑
)

messages = [
    {"role": "user", "content": "양자역학을 간단히 설명해줘."}
]

# Harmony 포맷 적용 필요 (chat 템플릿 활용)
from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained(model_id)
chat = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)

out = pipe(chat, max_new_tokens=256)
print(out[0]["generated_text"])

📝 openai/gpt-oss-20b로 모델 ID만 바꾸면 소형 모델도 동일하게 사용 가능합니다.

vLLM 구성 및 서버 실행

vLLM은 OpenAI API 호환 서버를 로컬에 띄우고 빠른 추론을 가능하게 하는 라이브러리입니다.

● 설치 (uv로 의존성 정리)

# 설치
pip install uv  # 최신 Python 패키지 관리자
uv pip install --pre vllm==0.10.1+gptoss \
  --extra-index-url https://wheels.vllm.ai/gpt-oss/ \
  --extra-index-url https://download.pytorch.org/whl/nightly/cu128 \
  --index-strategy unsafe-best-match

● 서버 실행

# gpt-oss-20b 실행 (자동 다운로드 포함)
vllm serve openai/gpt-oss-20b

# 또는 120b 실행
vllm serve openai/gpt-oss-120b

● 요청 예시 (OpenAI API 호환)

curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-oss-20b",
    "messages": [{"role": "user", "content": "도구 사용 기능에 대해 설명해줘"}],
    "temperature": 0.7
  }'

✅ OpenAI SDK, LangChain, LlamaIndex에서도 그대로 연동 가능

Ollama 로컬 배포

Ollama는 일반 소비자 PC에서도 로컬 LLM을 간단하게 실행할 수 있도록 해주는 도구입니다.

● 설치

https://ollama.com/download에서 플랫폼에 맞는 버전을 설치하세요.

● 모델 다운로드 및 실행

# 20B 모델
ollama pull gpt-oss:20b
ollama run gpt-oss:20b

# 120B 모델
ollama pull gpt-oss:120b
ollama run gpt-oss:120b

● OpenAI 호환 API 사용 (포트 11434)

curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-oss:20b",
    "messages": [{"role": "user", "content": "로컬에서 잘 동작하나요?"}]
  }'

LM Studio 기반 gpt-oss 모델 실행

LM Studio는 GUI와 CLI(lms)를 제공하며, OpenAI API와 호환되는 로컬 LLM 실행 환경을 쉽게 구성할 수 있습니다.

 

인터넷 없어도 OK! 코딩 없이 LM Studio로 내 컴퓨터에 AI 비서 환경 구축

LM Studio 로컬 AI의 모든 것LM Studio는 로컬 환경에서 대규모 언어 모델(LLM)을 실행할 수 있는 올인원 데스크톱 애플리케이션입니다. 복잡한 설정 없이 누구나 자신의 컴퓨터에서 AI를 구동할 수 있

blog.pages.kr

● LM Studio 설치 및 첫 실행

https://lmstudio.ai에서 운영체제에 맞는 LM Studio를 다운로드하고 설치합니다.

⚠️ 최초 실행 후에만 CLI(lms) 사용 가능
LM Studio를 최소 한 번은 실행해야 CLI 명령이 정상 작동합니다.

● CLI 활성화 및 환경 변수 설정

macOS/Linux

~/.lmstudio/bin/lms bootstrap

Windows (PowerShell)

cmd /c %USERPROFILE%\.lmstudio\bin\lms.exe bootstrap

● 모델 다운로드 및 실행

# 20B 모델 다운로드
lms get openai/gpt-oss-20b

# 120B 모델 다운로드
lms get openai/gpt-oss-120b

● 서버 실행 및 모델 로딩

# 로컬 서버 실행
lms server start

# 로컬 모델 목록 확인
lms ls

# 20B 모델 로드 (GPU 자동 할당)
lms load openai/gpt-oss-20b --gpu=auto

# 또는 120B 모델 로드
lms load openai/gpt-oss-120b --gpu=auto

✅ 필요시 --identifier=gpt-oss 옵션으로 사용자 지정 이름 부여 가능

● OpenAI 호환 API 요청 예시

LM Studio는 기본적으로 http://localhost:1234에서 OpenAI API와 호환되는 서버를 제공합니다.

curl http://localhost:1234/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-oss",
    "messages": [{"role": "user", "content": "gpt-oss 모델은 어떻게 작동하나요?"}],
    "temperature": 0.7
  }'

✅ --identifier를 설정하지 않은 경우 model은 원래 이름(openai/gpt-oss-20b) 사용

● 모델 언로드 및 서버 종료

# 로딩된 모델 해제
lms unload --all

# 서버 종료
lms server stop

✅ OpenAI SDK, LangChain, LlamaIndex 등과 그대로 연동 가능
✅ API URL만 http://localhost:1234로 변경하면 사용 가능

함수 호출(Function Calling) 사용법

gpt-oss 모델은 OpenAI Responses API 호환 형식으로 함수 호출을 지원합니다.

● 시스템 프롬프트에 함수 정의 포함 예시

[
  {
    "role": "system",
    "content": "",
    "tool_choice": "auto",
    "tools": [
      {
        "type": "function",
        "function": {
          "name": "get_weather",
          "description": "현재 날씨 정보를 가져옵니다",
          "parameters": {
            "type": "object",
            "properties": {
              "location": {
                "type": "string",
                "description": "도시명, 예: 서울"
              }
            },
            "required": ["location"]
          }
        }
      }
    ]
  },
  {
    "role": "user",
    "content": "오늘 서울 날씨 알려줘"
  }
]

● gpt-oss 출력 예시

모델은 다음처럼 호출을 요청합니다:

{
  "tool_calls": [
    {
      "function": {
        "name": "get_weather",
        "arguments": "{\"location\": \"서울\"}"
      }
    }
  ]
}

➡ 이후 외부 시스템에서 get_weather("서울")을 실행한 후, 그 결과를 assistant 메시지로 반환하면 됩니다.

✅ vLLM이나 Responses API 기반 서버와 함께 사용 시 자동으로 동작 가능
✅ Harmony response format을 따르는 응답 포맷 필수

참고 저장소 및 문서

항목 설명
Transformers 사용 Python 코드로 빠르게 모델 호출 가능
vLLM OpenAI API 완전 호환, 빠른 추론 서버
Ollama 로컬 PC에서 GUI 없이 쉽게 실행
함수 호출 도구/에이전트 활용에 최적화된 구조, Harmony 응답 포맷 필요
728x90
그리드형(광고전용)

댓글