Ling-3.0-flash

Ling-3.0-flash

Ling-3.0-flash는 inclusionAI의 Ling-3.0 시리즈에 속하는 경량화·고속 추론 모델로, 하이브리드 선형 어텐션과 Multi-Token Prediction (MTP) 구조를 갖추고 있어요. 71B 파라미터(활성 14B)로 설계되어 저지연·고처리량 환경에서 탁월한 성능을 발휘하며, Gemma 3GLM-4.5-Air와 비슷한 배포 비용을 유지하면서도 Frontier 모델 수준의 정확도를 제공해요. Azure, vLLM 등과 협력해 글로벌 추론 인프라에서도 바로 사용할 수 있도록 최적화됐어요.

출처: 문서

본문

1. 모델 소개

Ling-3.0-flash는 inclusionAI가 개발한 오픈소스 추론 모델로, 하이브리드 선형 어텐션(Hybrid Linear Attention) + Multi-Token Prediction (MTP) 구조에 기반해요. 174B 파라미터 (활성 6B) 로 설계되어:

  • 긴 컨텍스트에서 효율적인 추론
  • 낮은 지연 시간
  • 더 나은 추론 및 에이전트 작업 성능

을 제공해요. 이 아키텍처는 시장에서 입증된 성능과 컴퓨팅 효율성을 결합한 design을 따르며, 기존 LM 모델을 몇 배 더 빠르게 생성할 수 있게 해줘요. Ling-3.0-flash는 엣지 배포를 위해 설계되어, API, 서빙, 에이전트 워크로드에 최적화되어 있어요.

변형 (Variants)

모델 정밀도 GPU 메모리 (훈련)
Ling-3.0-flash BF16 140GB+

그래서 여기서 명시된 정밀도(b*float16)는 훈련 시 사용된 정밀도입니다.

1.1 Ling 인스턴트 시리즈

Ling-3.0-flash는 Ling 시리즈의 일부예요. Ling-3.0 계열은 덴스(dense) 계열라이트(Lite) 계열로 나뉘는 LLM 제품군이에요.

  • Dense: Ling-3.0-flash, Ling-3.0-VL, Ling-3.0-flash-VL, Ling-3.0-mini 등 → 병렬·빠른 추론에 중점.
  • Lite: Ling-3.0-Lite-1B 등 → 경량·저비용에 중점.

이 시리즈는 오픈 소스로 Apache 2.0 라이선스 하에 제공돼요.

2. SGLang 설치

# 공식 SGLang 설치 안내를 참고해 설치하세요.
# pip install "sglang[all]"

설치에 대한 자세한 내용은 공식 SGLang 설치 가이드를 참고해 주세요.

3. 모델 배포 (Deployment)

페이지 상단의 대화형 커맨드 생성기(하드웨어 플랫폼·양자화 등 선택)는 렌더링할 수 없어, 기본 배포 커맨드로 대체해요.

Web入口 (LLM/instruct, API): SGLang 라이브러리(services).

텍스트 생성 모델로 서빙하려면 다음 명령으로 SGLang 데모를 실행할 수 있어요:

python -m sglang.launch_server \
    --model-path /path/to/Ling-3.0-flash \
    --port 30000

3.1 Config Tips

모델 아키텍처 사양:

Model Name: Ling-3.0-flash
Hidden Size: 4608
Hidden Layer: 38
KV Head: 8
MLP: 16384
Head Dim: 64
Layer Norm: 64

3.2 하드웨어 추천 (Hardware recommendations)

각 하드웨어 플랫폼에 따른 추천 설정을 선택기에서 고를 수 있어요:

  • NVIDIA A100: 정밀도 BF16, TP 2, Memory 245 GB
  • NVIDIA H100: 정밀도 BF16, TP 1, Memory 140 GB
  • NVIDIA H200: 정밀도 BF16, TP 1, Memory 140 GB
  • NVIDIA B200: 정밀도 BF16, TP 1, Memory 192 GB
  • NVIDIA B300: 정밀도 BF16, TP 1, Memory 288 GB

4. 모델 호출 (Invocation)

4.1 SGLang 라이브러리

from sglang import function, system, user, assistant, gen, set_default_backend, RuntimeEndpoint

set_default_backend(RuntimeEndpoint("http://localhost:30000"))

@function
def multi_turn_question(s, question1, question2):
    s += system("You are a helpful assistant.")
    s += user(question1)
    s += assistant(gen("answer1"))
    s += user(question2)
    s += assistant(gen("answer2"))

multi_turn_question.run(
    question1="World War II (1939-1945) was what conflict?",
    question2="Who was the Prime Minister of the United Kingdom at its conclusion?",
)

4.1.1 오프라인 배치 모드 (Offline Batch Mode)

python offline_batch.py
# offline_batch.py
import sglang as sgl

sgl.set_default_backend(sgl.Lambda(api_url="http://localhost:30000"))

@function
def multi_turn_question(s, question1, question2):
    s += system("You are a helpful assistant.")
    s += user(question1)
    s += assistant(gen("answer1"))
    s += user(question2)
    s += assistant(gen("answer2"))

states = multi_turn_question.run_batch(
    [
        {"question1": "World War II (1939-1945) was what conflict?",
         "question2": "Who was the Prime Minister of the United Kingdom at its conclusion?"},
    ]
)

for state in states:
    print(state["answer1"], "\n---", state["answer2"])

4.2 기본 사용 (Basic Usage)

4.2.1 cURL 사용

curl http://localhost:30000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Ling-3.0-flash",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "Who created the world wide web?"}
    ]
  }'

4.2.2 OpenAI SDK 사용

from openai import OpenAI

client = OpenAI(base_url="http://localhost:30000/v1", api_key="EMPTY")

response = client.chat.completions.create(
    model="Ling-3.0-flash",
    messages=[{"role": "user", "content": "How many r's are in strawberry?"}],
)

print(response)

4.3 고급 사용 (Advanced Usage)

Ling-3.0-flash는 정형/비정형 아키텍처를 모두 지원하며, 고급 배포를 위해 qwen-pompt 3 포맷을 권장해요.

5. 벤치마크 (Benchmarks)

5.1 속도 벤치마크

Ling-3.0-flash는 MTP(Multi-Token Prediction)를 통해 훈련 및 동일 생성 budget으로 더 나은 성능을 달성해요.

사전 훈련(pre-training) 시 MTP 사용사후 훈련(post-training) 시 MTP 사용이 서로 다른 방식으로 작동해요.

6. 참고자료 (References)

더 알아보기 (Learn more)