Milvus
Zilliz
  • Home
  • Blog
  • GLM-5 대 MiniMax M2.5 대 Gemini 3 깊이 생각하기: 어떤 모델이 귀사의 AI 에이전트 스택에 적합할까요?

GLM-5 대 MiniMax M2.5 대 Gemini 3 깊이 생각하기: 어떤 모델이 귀사의 AI 에이전트 스택에 적합할까요?

  • Engineering
February 14, 2026
Lumina Wang, Julie Xia

불과 이틀 만에 세 가지 주요 모델이 연달아 출시되었습니다: GLM-5, MiniMax M2.5, Gemini 3 Deep Think입니다. 세 제품 모두 코딩, 심층 추론, 에이전트 워크플로우라는 동일한 기능을 표방합니다 . 세 제품 모두 최첨단 성능을 자랑합니다. 사양표를 자세히 들여다보면 세 제품 모두에서 동일한 핵심 사항을 찾아내는 매칭 게임을 할 수 있을 정도입니다.

더 무서운 생각은? 상사가 이미 발표 내용을 보고 이번 주가 끝나기도 전에 세 가지 모델을 사용하여 9개의 사내 앱을 구축해 달라고 요청하고 있을지도 모릅니다.

그렇다면 실제로 이 모델들의 차이점은 무엇일까요? 이 중에서 어떻게 선택해야 할까요? 그리고 (항상 그렇듯이) 내부 지식창고를 제공하기 위해 Milvus와 어떻게 연결할 수 있을까요? 이 페이지를 북마크에 추가하세요. 필요한 모든 것이 있습니다.

GLM-5, MiniMax M2.5 및 Gemini 3 심층적 사고 한눈에 보기

복잡한 시스템 엔지니어링 및 장시간 에이전트 작업을 선도하는 GLM-5

지푸는 2월 12일 복잡한 시스템 엔지니어링과 장기적인 상담원 워크플로우에 탁월한 GLM-5를 공식 출시했습니다.

이 모델은 28.5T 토큰으로 학습된 355B-744B 매개변수(40B 활성)를 보유하고 있습니다. 이 모델은 희소 주의 메커니즘과 비동기 강화 학습 프레임워크인 Slime을 통합하여 배포 비용을 낮추면서 품질 손실 없이 매우 긴 컨텍스트를 처리할 수 있습니다.

GLM-5는 주요 벤치마크에서 오픈 소스 팩을 주도하며 SWE 벤치 검증에서 1위(77.8점), 터미널 벤치 2.0에서 1위(56.2점)를 차지하여 MiniMax 2.5와 Gemini 3 Deep Think를 앞질렀습니다. 하지만 여전히 Claude Opus 4.5 및 GPT-5.2와 같은 최고의 비공개 소스 모델에 뒤처지는 점수를 기록했습니다. 비즈니스 시뮬레이션 평가인 벤딩 벤치 2에서 GLM-5는 시뮬레이션 연간 수익으로 4,432달러를 창출하여 오픈 소스 시스템과 거의 동일한 범위를 기록했습니다.

또한 GLM-5는 시스템 엔지니어링 및 장거리 에이전트 기능을 대폭 업그레이드했습니다. 이제 텍스트나 원시 자료를 .docx, .pdf, .xlsx 파일로 직접 변환하고 제품 요구 사항 문서, 강의 계획, 시험, 스프레드시트, 재무 보고서, 순서도 및 메뉴와 같은 특정 결과물을 생성할 수 있습니다.

과학적 추론의 새로운 기준을 제시하는 Gemini 3 Deep Think

2026년 2월 13일 새벽, Google은 (잠정적으로) 지구상에서 가장 강력한 연구 및 추론 모델이라고 할 수 있는 주요 업그레이드 버전인 Gemini 3 Deep Think를 공식적으로 출시했습니다. 결국 Gemini는 세차 테스트를 통과한 유일한 모델이었죠: "세차를 하려고 하는데 세차장이 불과 50m 거리에 있습니다. 시동을 걸어서 갈까, 아니면 그냥 걸어갈까?"라는 질문을 던졌습니다.

이 모델의 핵심 강점은 최고 수준의 추론 및 경쟁 성능으로, 코드포스에서 세계 8위 수준의 경쟁 프로그래머와 맞먹는 3455엘로를 기록했습니다. 2025년 국제 물리, 화학, 수학 올림피아드에서 필기 부문 금메달을 획득하기도 했습니다. 비용 효율성은 또 다른 혁신입니다. ARC-AGI-1은 작업당 7.17달러로 실행되며, 이는 14개월 전 OpenAI의 o3-프리뷰에 비해 280배에서 420배까지 절감된 비용입니다. 응용 측면에서 딥씽크의 가장 큰 이점은 과학 연구 분야입니다. 전문가들은 이미 전문 수학 논문의 동료 검토와 복잡한 결정 성장 준비 워크플로우를 최적화하는 데 사용하고 있습니다.

생산 워크로드에서 비용과 속도 면에서 경쟁력이 있는 MiniMax M2.5

같은 날 MiniMax는 M2.5를 출시하여 생산 사용 사례를 위한 비용 및 효율성 챔피언으로 자리매김했습니다.

업계에서 가장 빠르게 반복되는 모델 제품군 중 하나인 M2.5는 코딩, 도구 호출, 검색 및 사무실 생산성 전반에 걸쳐 새로운 SOTA 결과를 설정합니다. 고속 버전은 약 100 TPS로 실행되며, 입력 가격은 백만 토큰당 0.30달러, 출력은백만 토큰당 0.30달러 0. ,출력은백만 토큰당 .40달러)로 책정되어 있습니다. 50 TPS 버전은 출력 비용을 절반으로 줄였습니다. 속도는 이전 M2.1에 비해 37% 향상되었으며, 평균 22.8분 만에 SWE 벤치 검증 작업을 완료하여 Claude Opus 4.6과 거의 일치합니다. 기능 측면에서 M2.5는 Go, Rust, Kotlin 등 10개 이상의 언어로 풀스택 개발을 지원하여 제로 투 원 시스템 설계부터 전체 코드 검토까지 모든 것을 포괄합니다. 오피스 워크플로우의 경우 Office 스킬 기능은 Word, PPT, Excel과 긴밀하게 통합됩니다. 재무 및 법률 분야의 도메인 지식과 결합하면 바로 사용할 수 있는 연구 보고서와 재무 모델을 생성할 수 있습니다.

이것이 개략적인 개요입니다. 이제 실제 테스트에서 실제로 어떻게 작동하는지 살펴보겠습니다.

실습 비교

3D 장면 렌더링: 가장 사실적인 결과물을 만들어내는 Gemini 3 Deep Think

사용자가 이미 Gemini 3 Deep Think에서 테스트한 프롬프트를 가져와 GLM-5와 MiniMax M2.5에서 실행하여 직접 비교했습니다. 프롬프트는 박물관의 고전 유화와 구별할 수 없는 완전한 3D 실내 공간을 렌더링하는 단일 HTML 파일로 완전한 Three.js 장면을 빌드하는 것입니다.

Gemini 3 딥 씽크

GLM-5

MiniMax M2.5

Gemini 3 Deep Think는 가장 강력한 결과를 제공했습니다. 프롬프트를 정확하게 해석하고 고품질의 3D 장면을 생성했습니다. 그림자의 방향과 감쇠가 자연스러워 창문을 통해 들어오는 자연광의 공간적 관계를 명확하게 전달하는 등 조명이 돋보였습니다. 양초의 반쯤 녹은 질감과 붉은색 왁스 씰의 재질감 등 세세한 디테일도 인상적이었습니다. 전반적인 시각적 충실도가 높았습니다.

GLM-5는 디테일한 오브젝트 모델링과 텍스처 작업을 구현했지만, 라이팅 시스템에는 눈에 띄는 문제가 있었습니다. 테이블 그림자가 부드러운 전환 없이 딱딱하고 순수한 검정색 블록으로 렌더링되었습니다. 왁스 씰이 테이블 표면 위에 떠 있는 것처럼 보이며 오브젝트와 테이블 상판 사이의 접촉 관계를 올바르게 처리하지 못했습니다. 이러한 아티팩트는 전역 조명과 공간 추론에서 개선의 여지가 있음을 시사합니다.

MiniMax M2.5는 복잡한 씬 디스크립션을 효과적으로 파싱하지 못했습니다. 무질서한 파티클 모션만 출력되어 정확한 시각적 요구 사항이 있는 다계층 시맨틱 지침을 처리할 때 이해와 생성 모두에 상당한 한계가 있음을 보여주었습니다.

SVG 생성: 세 모델 모두 서로 다른 방식으로 처리

프롬프트: 자전거를 타고 있는 캘리포니아 갈색 펠리컨의 SVG를 생성합니다. 자전거에는 스포크와 올바른 모양의 자전거 프레임이 있어야 합니다. 펠리컨은 특징적인 큰 주머니를 가지고 있어야 하며 깃털이 명확하게 표시되어 있어야 합니다. 펠리컨이 자전거 페달을 명확하게 밟고 있어야 합니다. 이미지에는 캘리포니아 갈색 펠리컨의 번식 깃털이 완전히 보여야 합니다.

쌍둥이자리 3 깊은 생각

Gemini 3 Deep Think 제미니 3 깊은 생각

GLM-5

GLM-5 GLM-5

MiniMax M2.5

MiniMax M2.5 MiniMax M2.5

제미니 3 딥 씽크는 전체적으로 가장 완벽한 SVG를 만들었습니다. 펠리칸의 라이딩 자세는 정확합니다. 무게 중심은 자연스럽게 시트에 앉고 발은 페달 위에 놓여 역동적인 사이클링 자세를 취하고 있습니다. 깃털 질감이 섬세하고 겹겹이 쌓여 있습니다. 한 가지 약점은 펠리칸의 시그니처인 목 주머니가 너무 크게 그려져 전체적인 비율이 약간 흐트러진다는 점입니다.

GLM-5에는 눈에 띄는 자세 문제가 있었습니다. 발은 페달 위에 올바르게 놓여 있지만 전체적인 착석 자세가 자연스러운 라이딩 자세에서 멀어지고 몸과 시트의 관계가 어색해 보입니다. 그렇긴 하지만 목 파우치의 비율이 잘 맞고 깃털 질감의 품질이 만족스러울 정도로 디테일 작업이 견고합니다.

미니맥스 M2.5는 미니멀한 스타일로 배경 요소를 완전히 생략했습니다. 자전거에서 펠리칸의 위치는 대략적으로 정확하지만 디테일 작업이 부족합니다. 핸들바의 모양이 잘못되어 있고 깃털 질감이 거의 없고 목이 너무 두껍고 이미지에 없어야 할 흰색 타원형 인공물이 있습니다.

GLM-5, MiniMax M2.5, Gemin 3 딥 씽크 중 선택하는 방법

모든 테스트에서 MiniMax M2.5가 출력 생성 속도가 가장 느려서 사고와 추론에 가장 오랜 시간이 필요했습니다. GLM-5는 일관된 성능을 보였으며 속도 면에서 제미니 3 딥 싱크와 거의 비슷한 수준이었습니다.

다음은 저희가 정리한 간단한 선택 가이드입니다:

핵심 사용 사례추천 모델주요 강점
과학 연구, 고급 추론(물리학, 화학, 수학, 복잡한 알고리즘 설계)Gemini 3 심층적 사고학술 경연 대회에서 금메달을 수상한 경력이 있습니다. 최고 수준의 과학적 데이터 검증. Codeforces에서 세계 최고 수준의 경쟁 프로그래밍. 전문 논문의 논리적 결함을 식별하는 등 입증된 연구 애플리케이션. (현재 Google AI Ultra 구독자와 일부 엔터프라이즈 사용자로 제한되며, 작업당 비용이 상대적으로 높습니다.)
오픈 소스 배포, 엔터프라이즈 인트라넷 사용자 지정, 풀스택 개발, 오피스 기술 통합Zhipu GLM-5최상위 오픈 소스 모델. 강력한 시스템 수준 엔지니어링 기능. 관리 가능한 비용으로 로컬 배포를 지원합니다.
비용에 민감한 워크로드, 다국어 프로그래밍, 크로스 플랫폼 개발(웹/안드로이드/iOS/윈도우), 오피스 호환성.MiniMax M2.5100 TPS 기준: 입력 토큰 100만 개당0. 30,출력 토큰 100만 개당 0. 0. 토큰 100만 개당 2.40. 오피스, 코딩, 도구 호출 벤치마크 전반에서 SOTA. 멀티-SWE 벤치에서 1위를 차지했습니다. 강력한 일반화. Droid/OpenCode의 합격률은 Claude Opus 4.6을 초과합니다.

RAG 튜토리얼: GLM-5와 Milvus를 연결하여 지식 기반 구축하기

GLM-5와 MiniMax M2.5는 모두 OpenRouter를 통해 사용할 수 있습니다. 가입하고 OPENROUTER_API_KEY 에서 시작하세요.

이 튜토리얼에서는 Zhipu의 GLM-5를 예제 LLM으로 사용합니다. 대신 MiniMax를 사용하려면 모델 이름을 minimax/minimax-m2.5 로 바꾸면 됩니다.

종속성 및 환경 설정

pymilvus, openai, requests 및 tqdm을 최신 버전으로 설치하거나 업그레이드합니다:

pip install --upgrade pymilvus openai requests tqdm 

이 튜토리얼에서는 LLM으로 GLM-5를 사용하고 임베딩 모델로 OpenAI의 텍스트 임베딩-3-small을 사용합니다.

import os
os.environ["OPENROUTER_API_KEY"] = "**********" 

데이터 준비

Milvus 2.4.x 문서의 FAQ 페이지를 비공개 지식 베이스로 사용합니다.

zip 파일을 다운로드하고 milvus_docs 폴더에 문서를 압축 해제합니다:

wget https://github.com/milvus-io/milvus-docs/releases/download/v2.4.6-preview/milvus_docs_2.4.x_en.zip
unzip -q milvus_docs_2.4.x_en.zip -d milvus_docs

milvus_docs/en/faq 에서 모든 마크다운 파일을 로드합니다. "# " 에서 각 파일을 분할하여 주요 섹션별로 콘텐츠를 대략적으로 구분합니다:

from glob import glob
text_lines = []
for file_path in glob("milvus_docs/en/faq/*.md", recursive=True):
    with open(file_path, "r") as file:
        file_text = file.read()
    text_lines += file_text.split("# ")

LLM 및 임베딩 모델 설정

LLM으로 GLM-5를 사용하고 임베딩 모델로 텍스트 임베딩-3-small을 사용하겠습니다:

from openai import OpenAI
glm_client = OpenAI(
    api_key=os.environ["OPENROUTER_API_KEY"],
    base_url="https://openrouter.ai/api/v1",
)

테스트 임베딩을 생성하고 치수와 처음 몇 개의 요소를 인쇄합니다:

EMBEDDING_MODEL = "openai/text-embedding-3-small"  # OpenRouter embedding model
resp = glm_client.embeddings.create(
    model=EMBEDDING_MODEL,
    input=["This is a test1", "This is a test2"],
)
test_embeddings = [d.embedding for d in resp.data]
embedding_dim = len(test_embeddings[0])
print(embedding_dim)
print(test_embeddings[0][:10])

출력합니다:

1536
[0.010637564584612846, -0.017222722992300987, 0.05409347265958786, -0.04377825930714607, -0.017545074224472046, -0.04196695610880852, -0.0011963422875851393, 0.03837504982948303, 0.0008855042979121208, 0.015181170776486397]

Milvus에 데이터 로드

컬렉션을 생성합니다:

from pymilvus import MilvusClient
milvus_client = MilvusClient(uri="./milvus_demo.db")
collection_name = "my_rag_collection"

MilvusClient 구성에 대한 참고 사항:

  • URI를 로컬 파일(예: ./milvus.db)로 설정하는 것이 가장 간단한 옵션입니다. 자동으로 Milvus Lite를 사용하여 해당 파일에 모든 데이터를 저장합니다.

  • 대규모 데이터의 경우, 더 성능이 뛰어난 Milvus 서버를 Docker 또는 Kubernetes에 배포할 수 있습니다. 이 경우 서버 URI(예: http://localhost:19530)를 사용합니다.

  • 질리즈 클라우드(Milvus의 완전 관리형 클라우드 버전)를 사용하려면, 질리즈 클라우드 콘솔에서 퍼블릭 엔드포인트와 API 키에 URI와 토큰을 설정합니다.

컬렉션이 이미 존재하는지 확인하고 존재한다면 삭제합니다:

if milvus_client.has_collection(collection_name):
    milvus_client.drop_collection(collection_name)

지정된 파라미터로 새 컬렉션을 생성합니다. 필드 정의를 제공하지 않으면 Milvus는 기본 id 필드를 기본 키로, 벡터 데이터의 경우 vector 필드를 자동으로 생성합니다. 예약 JSON 필드는 스키마에 정의되지 않은 모든 필드와 값을 저장합니다:

milvus_client.create_collection(
    collection_name=collection_name,
    dimension=embedding_dim,
    metric_type="COSINE",
    consistency_level="Strong",
)

데이터 삽입

텍스트 줄을 반복하고 임베딩을 생성한 다음 데이터를 Milvus에 삽입합니다. 여기서 text 필드는 스키마에 정의되어 있지 않습니다. Milvus의 예약된 JSON 필드에 의해 뒷받침되는 동적 필드로 자동 추가됩니다:

from tqdm import tqdm
data = []
resp = glm_client.embeddings.create(model=EMBEDDING_MODEL, input=text_lines)
doc_embeddings = [d.embedding for d in resp.data]
for i, line in enumerate(tqdm(text_lines, desc="Creating embeddings")):
    data.append({"id": i, "vector": doc_embeddings[i], "text": line})
milvus_client.insert(collection_name=collection_name, data=data)

Output:

Creating embeddings: 100%|██████████████████████████| 72/72 [00:00<00:00, 125203.10it/s]
{'insert_count': 72, 'ids': [0, 1, 2, ..., 71], 'cost': 0}

RAG 파이프라인 구축

관련 문서를 검색합니다:

Milvus에 대한 일반적인 질문을 해 봅시다:

question = "How is data stored in milvus?"

컬렉션에서 가장 관련성이 높은 상위 3개의 결과를 검색합니다:

resp = glm_client.embeddings.create(model=EMBEDDING_MODEL, input=[question])
question_embedding = resp.data[0].embedding
search_res = milvus_client.search(
    collection_name=collection_name,
    data=[question_embedding],
    limit=3,
    search_params={"metric_type": "COSINE", "params": {}},
    output_fields=["text"],
)

결과는 거리별로 정렬되며 가장 가까운 것부터 정렬됩니다:

import json

retrieved_lines_with_distances = [ (res[“entity”][“text”], res[“distance”]) for res in search_res[0] ] print(json.dumps(retrieved_lines_with_distances, indent=4))

[ [ " Where does Milvus store data?\n\nMilvus deals with two types of data, inserted data and metadata. \n\nInserted data, including vector data, scalar data, and collection-specific schema, are stored in persistent storage as incremental log. Milvus supports multiple object storage backends, including MinIO, AWS S3, Google Cloud Storage (GCS), Azure Blob Storage, Alibaba Cloud OSS, and Tencent Cloud Object Storage (COS).\n\nMetadata are generated within Milvus. Each Milvus module has its own metadata that are stored in etcd.\n\n###", 0.7826977372169495 ], [ “How does Milvus handle vector data types and precision?\n\nMilvus supports Binary, Float32, Float16, and BFloat16 vector types.\n\n- Binary vectors: Store binary data as sequences of 0s and 1s, used in image processing and information retrieval.\n- Float32 vectors: Default storage with a precision of about 7 decimal digits. Even Float64 values are stored with Float32 precision, leading to potential precision loss upon retrieval.\n- Float16 and BFloat16 vectors: Offer reduced precision and memory usage. Float16 is suitable for applications with limited bandwidth and storage, while BFloat16 balances range and efficiency, commonly used in deep learning to reduce computational requirements without significantly impacting accuracy.\n\n###”, 0.6772387027740479 ], [ “How much does Milvus cost?\n\nMilvus is a 100% free open-source project.\n\nPlease adhere to Apache License 2.0 when using Milvus for production or distribution purposes.\n\nZilliz, the company behind Milvus, also offers a fully managed cloud version of the platform for those that don’t want to build and maintain their own distributed instance. Zilliz Cloud automatically maintains data reliability and allows users to pay only for what they use.\n\n###”, 0.6467022895812988 ] ]

LLM으로 응답을 생성합니다:

검색된 문서를 컨텍스트 문자열로 결합합니다:

context = "\n".join(
    [line_with_distance[0] for line_with_distance in retrieved_lines_with_distances]
)

시스템 및 사용자 프롬프트 설정 사용자 프롬프트는 Milvus에서 검색된 문서를 기반으로 구축됩니다:

SYSTEM_PROMPT = """
Human: You are an AI assistant. You can find answers to the questions in the contextual passage snippets provided.
"""
USER_PROMPT = f"""
Use the following pieces of information enclosed in <context> tags to provide an answer to the question enclosed in <question> tags.
<context>
{context}
</context>
<question>
{question}
</question>
"""

최종 답변을 생성하려면 GLM-5를 호출합니다:

response = glm_client.chat.completions.create(
    model="z-ai/glm-5",
    messages=[
        {"role": "system", "content": SYSTEM_PROMPT},
        {"role": "user", "content": USER_PROMPT},
    ],
)
print(response.choices[0].message.content)

GLM-5는 잘 구조화된 답변을 반환합니다:

Based on the provided context, Milvus stores data in two main ways, depending on the data type:

1. Inserted Data

  • What it includes: vector data, scalar data, and collection-specific schema.
  • How it is stored: in persistent storage as an incremental log.
  • Storage Backends: Milvus supports multiple object storage backends, including MinIO, AWS S3, Google Cloud Storage (GCS), Azure Blob Storage, Alibaba Cloud OSS, and Tencent Cloud Object Storage (COS).
  • Vector Specifics: vector data can be stored as Binary vectors (sequences of 0s and 1s), Float32 vectors (default storage), or Float16 and BFloat16 vectors (offering reduced precision and memory usage).
  1. Metadata
    • What it includes: data generated within Milvus modules.
    • How it is stored: in etcd.

결론: 모델을 선택한 다음 파이프라인 구축하기

세 가지 모델 모두 강점이 있지만 서로 다른 부분에 강점이 있습니다. 비용보다 추론의 깊이가 더 중요할 때는 Gemini 3 Deep Think를 선택하는 것이 좋습니다. GLM-5는 로컬 배포 및 시스템 수준 엔지니어링이 필요한 팀에 가장 적합한 오픈 소스 옵션입니다. 미니맥스 M2.5는 프로덕션 워크로드 전반의 처리량과 예산을 최적화할 때 적합합니다.

어떤 모델을 선택하느냐는 방정식의 절반에 불과합니다. 이 모든 것을 유용한 애플리케이션으로 전환하려면 데이터에 따라 확장할 수 있는 검색 계층이 필요합니다. 바로 여기에 Milvus가 적합합니다. 위의 RAG 튜토리얼은 모든 OpenAI 호환 모델에서 작동하므로 GLM-5, MiniMax M2.5 또는 향후 릴리스 간에 한 줄만 변경하면 교체할 수 있습니다.

로컬 또는 온프레미스 AI 에이전트를 설계 중이고 스토리지 아키텍처, 세션 설계 또는 안전한 롤백에 대해 더 자세히 논의하고 싶다면 언제든지 Slack 채널에 참여하세요. 또한 Milvus 오피스 아워를 통해 20분간 일대일 상담을 예약하여 개인화된 안내를 받을 수도 있습니다.

AI 에이전트 구축에 대해 더 자세히 알아보고 싶다면 시작에 도움이 되는 더 많은 리소스를 참조하세요.

    Try Managed Milvus for Free

    Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

    Get Started

    Like the article? Spread the word

    계속 읽기