> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fim.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 권장 모델

> FIM One 배포에 적합한 LLM을 선택하세요.

FIM One은 **공급자 독립적**입니다 — 모든 OpenAI 호환 엔드포인트가 작동합니다. 이 페이지는 사용 사례에 맞는 최적의 모델 조합을 선택하는 데 도움을 줍니다. 구성 세부 정보는 [환경 변수](/configuration/environment-variables)를 참조하세요.

## FIM One가 모델을 사용하는 방식

FIM One에는 세 가지 모델 역할이 있습니다:

| 역할            | 환경 변수                 | 용도                             |
| ------------- | --------------------- | ------------------------------ |
| **General**   | `LLM_MODEL`           | 계획, 분석, ReAct 에이전트, 복잡한 추론     |
| **Fast**      | `FAST_LLM_MODEL`      | DAG 단계 실행, 컨텍스트 압축 (더 저렴하고 빠름) |
| **Reasoning** | `REASONING_LLM_MODEL` | 심층 분석, 복잡한 계획, 수학적 증명          |

Fast와 Reasoning이 구성되지 않으면 General로 폴백됩니다. 프로덕션 배포의 경우, 최소한 두 개의 모델(General + Fast)로 분할하면 최고의 비용/품질 균형을 얻을 수 있습니다.

이러한 역할은 ENV 변수를 통해 또는 관리자 UI의 **Model Groups** 기능을 통해 구성할 수 있으며, 이를 통해 모델 세트 간에 한 번의 클릭으로 전환할 수 있습니다. 전체 관리자 UI 가이드는 [Model Management](/configuration/model-management)를 참조하세요.

***

## 빠른 선택 매트릭스

| 제공자                 | 메인 LLM                                      | 빠른 LLM                                        | 추론                               | 비전          | 참고                                                     |
| ------------------- | ------------------------------------------- | --------------------------------------------- | -------------------------------- | ----------- | ------------------------------------------------------ |
| **OpenAI**          | `gpt-5.4`                                   | `gpt-5.4-mini` / `gpt-5.4-nano`               | ✅ `reasoning_effort`             | ✅ 모두        | 최고의 네이티브 도구 호출; GPT-5.4는 최신 플래그십 (2026년 3월)            |
| **Anthropic**       | `claude-sonnet-4-6`                         | `claude-haiku-4-5`                            | ✅ LiteLLM 경유                     | ✅ 모두        | 네이티브 API 라우팅; 완전한 `reasoning_content` 지원; 1M 컨텍스트 GA   |
| **Google Gemini**   | `gemini-2.5-pro` / `gemini-3.1-pro-preview` | `gemini-2.5-flash` / `gemini-3-flash-preview` | ✅ `reasoning_effort`             | ✅ 모두        | 2.5는 안정적 GA; 3.x는 프리뷰; `gemini-3-pro-preview` 3월 9일 종료 |
| **DeepSeek**        | `deepseek-chat` (V3.2)                      | `deepseek-chat`                               | ✅ `deepseek-reasoner`            | ❌           | 텍스트 전용; V4 (2026년 4월)에서 비전 추가 예정                       |
| **Qwen (알리바바)**     | `qwen3.5-plus` / `qwen3-max`                | `qwen3.5-flash` / `qwen-turbo`                | ✅ `qwen3-max`의 `enable_thinking` | ⚠️ qwen3.5만 | 가장 강력한 중국어; qwq/추론은 텍스트 전용                             |
| **ChatGLM (Zhipu)** | `glm-4.7`                                   | `glm-4.7-flash`                               | `glm-5`                          | ⚠️ GLM-4.6V | 강제 FC 미지원; 비전은 별도 VLM 모델 필요                            |
| **MiniMax**         | `MiniMax-M2.7`                              | `MiniMax-M2.5`                                | ❌                                | ❌           | 텍스트 전용; M2.7 최신 (2026년 3월); SWE-Bench 80.2%            |
| **Kimi (Moonshot)** | `kimi-k2.5`                                 | `kimi-k2`                                     | ✅ `kimi-k2-thinking`             | ⚠️ K2.5만    | K2-thinking 텍스트 전용; 강제 FC는 thinking과 미지원               |
| **Ollama (로컬)**     | `qwen3.5` / `llama4`                        | `qwen3.5:9b`                                  | ❌                                | 다양함         | 완전 오프라인, API 키 불필요; Llama 4는 비전 지원                     |

<Tip>
  **비전**은 모델이 이미지 입력을 수용하는지 여부를 나타냅니다. 이는 [지능형 문서 처리 (IDP)](/features/idp)에 필수적입니다 — 모델이 비전을 지원하지 않으면 IDP는 텍스트 전용 추출로 폴백됩니다. ⚠️로 표시된 제공자는 일부 모델에서만 비전을 지원합니다. 사용 중인 특정 모델을 확인하세요.
</Tip>

***

## 구조화된 출력 호환성

FIM One의 DAG 플래너는 모델이 유효한 구조화된 JSON을 반환해야 합니다. 내부적으로 다음 세 가지 추출 수준을 순서대로 시도합니다:

1. **Native Function Calling** — 도구 호출 API를 통해 스키마와 일치하는 JSON 출력을 강제합니다. 가장 신뢰할 수 있습니다.
2. **JSON Mode** — `response_format: json_object`를 요청합니다. 유효한 JSON을 보장하지만 스키마 준수를 강제하지는 않습니다.
3. **Plain Text Extraction** — 최후의 수단으로 자유 형식 텍스트에서 JSON을 파싱합니다.

Level 1을 지원하는 모델(강제된 `tool_choice`를 사용한 네이티브 FC)이 최고의 계획 신뢰성을 제공합니다. 모델이 Level 2에만 도달하면 출력 품질은 프롬프트 지시를 얼마나 잘 따르는지에 따라 달라집니다. 약한 모델은 예상된 구조와 일치하지 않는 유효한 JSON을 생성할 수 있습니다.

| 제공자                         | 강제 Function Calling                                  | JSON Mode | 계획 신뢰성                  |
| --------------------------- | ---------------------------------------------------- | --------- | ----------------------- |
| **OpenAI** (GPT-5.x, o3)    | ✅ 완전 지원                                              | ✅         | ⭐⭐⭐ 우수                  |
| **Anthropic** (Claude 4.x)  | ⚠️ 사고 모드와 충돌                                         | ✅         | ⭐⭐⭐ 우수 (강력한 지시 준수로 보완)  |
| **Google Gemini** (2.5/3.x) | ✅ 완전 지원                                              | ✅         | ⭐⭐⭐ 우수                  |
| **Mistral**                 | ✅ 완전 지원                                              | ✅         | ⭐⭐ 좋음                   |
| **DeepSeek** (V3.2)         | ⚠️ 불안정 (`tool_choice="required"`는 작동, `"auto"`는 불안정) | ✅         | ⭐⭐ 좋음                   |
| **Qwen** (3.x)              | ⚠️ 부분 지원                                             | ✅         | ⭐⭐ 좋음                   |
| **Kimi** (K2.5)             | ⚠️ 부분 지원 — 사고 활성화 시에만 `auto`                         | ✅         | ⭐ 보통 — 잘못된 형식의 계획 생성 가능 |
| **ChatGLM** (GLM-4.7/5)     | ❌ 지원 안 함 (`auto`만 가능)                                | ✅         | ⭐ 보통                    |
| **MiniMax** (M2.5/M2.7)     | ✅ 완전 지원                                              | ✅         | ⭐⭐ 좋음                   |
| **Local (Ollama)**          | 모델에 따라 다름                                            | 모델에 따라 다름 | ⭐ 보통 — 32B 이상 권장        |

<Tip>
  "failed to generate a valid task plan" 오류가 표시되면 모델의 구조화된 출력 기능이 DAG 계획에 부족합니다. **Main LLM**을 ⭐⭐⭐ 또는 ⭐⭐ 이상으로 평가된 모델로 전환하거나, DAG 모드를 비활성화하고 더 간단한 ReAct 에이전트를 대신 사용하세요.
</Tip>

## 사고 / 추론 호환성

다양한 제공자들은 "사고"(연쇄 추론)를 근본적으로 다른 방식으로 구현합니다. 이는 사고 모드가 도구 호출과 충돌할 수 있고, 제공자에 따라 출력이 다른 위치에 나타나기 때문에 중요합니다. FIM One은 이 모든 것을 투명하게 처리합니다 — 이 표는 내부에서 무엇이 일어나고 있는지 이해하는 데 도움이 됩니다.

### 주요 개념

* **선택적 활성화** — 사고 기능은 기본적으로 비활성화되어 있으며, API 매개변수(예: `reasoning_effort`)를 통해 활성화합니다. 호출별로 선택적으로 비활성화할 수 있습니다.
* **항상 활성화** — 모델이 항상 사고합니다. 이를 끌 수 있는 API 매개변수가 없습니다. 사고 기능을 피하려면 사고하지 않는 모델 변형으로 전환해야 합니다.
* **모델 수준** — 사고는 매개변수가 아닌 선택한 모델 ID(예: `deepseek-reasoner` vs `deepseek-chat`)에 의해 결정됩니다.

### 호환성 매트릭스

| 제공자                         | 활성화 방법                          | 비활성화 가능? | 사고 출력                              | 강제 FC 충돌?                             |
| --------------------------- | ------------------------------- | -------- | ---------------------------------- | ------------------------------------- |
| **OpenAI** (GPT-5.x)        | `reasoning_effort` 매개변수         | ✅ 선택 사항  | 내부 (사용자에게 표시되지 않음)                 | ⚠️ API가 도구 존재 시 `reasoning_effort` 제거 |
| **OpenAI** (o-series)       | 항상 활성화                          | ❌        | 내부 (토큰 계산됨, 반환되지 않음)               | ✅ 충돌 없음                               |
| **Anthropic** (Claude 4.x)  | `reasoning_effort` → `thinking` | ✅ 선택 사항  | API `reasoning_content` 필드 → 사고 패널 | ❌ 강제 FC + 사고 = **400 오류**             |
| **Google Gemini** (2.5/3.x) | `reasoning_effort` 매개변수         | ✅ 선택 사항  | 내부                                 | ✅ 충돌 없음                               |
| **DeepSeek**                | 모델 변형 (`deepseek-reasoner`)     | 모델 수준    | API `reasoning_content` 필드 → 사고 패널 | ⚠️ 강제 FC 신뢰성 낮음                       |
| **Qwen** (3.x)              | `enable_thinking` 매개변수          | ✅ 선택 사항  | 콘텐츠의 `<think>` 태그                  | ⚠️ 부분 FC 지원                           |
| **MiniMax** (M2.7)          | 항상 활성화                          | ❌        | 콘텐츠의 `<think>` 태그                  | ✅ 충돌 없음                               |
| **ChatGLM** (GLM-5)         | 모델 변형                           | 모델 수준    | 외부화되지 않음                           | N/A — 강제 FC 미지원                       |
| **Kimi** (K2-thinking)      | 모델 변형                           | 모델 수준    | API 필드                             | ❌ 강제 FC + 사고 = 충돌                     |

### FIM One가 각 경우를 처리하는 방식

**API 수준 `reasoning_content`** (Claude, DeepSeek): 추론 필드는 API 응답에서 직접 읽혀 UI의 추론 패널에 표시됩니다. 후처리가 필요하지 않습니다.

**콘텐츠의 `<think>` 태그** (MiniMax, Qwen, QwQ 및 기타 오픈소스 파생 모델): FIM One은 콘텐츠 필드에서 `<think>...</think>` 태그를 자동으로 제거하고 사고 텍스트를 추론 패널로 재라우팅합니다. 이는 스트리밍 및 비스트리밍 응답 모두에서 작동합니다.

**강제 FC + 사고 충돌** (Claude, Kimi): FIM One이 강제 함수 호출이 필요한 경우(예: DAG 계획의 구조화된 출력 추출 중), `reasoning_effort=None`을 전달하여 해당 특정 호출에 대해 사고를 일시적으로 비활성화합니다. 이는 Claude의 사고가 선택적이기 때문에 작동합니다 — 매개변수를 보내지 않으면 사고가 없으므로 400 오류를 피합니다. 사고를 비활성화할 수 없는 공급자(MiniMax)의 경우, 이러한 공급자가 조합을 거부하지 않으므로 강제 FC가 정상적으로 작동합니다.

**폴백 체인**: 어떤 이유로든 강제 함수 호출이 실패하면 FIM One은 자동으로 폴백합니다: 기본 FC → JSON 모드 → 일반 텍스트 추출. 이 3단계 접근 방식은 도구 호출 지원이 부분적인 공급자에서도 계획이 작동하도록 보장합니다.

<Note>
  항상 사고하는 모델(MiniMax M2.7, DeepSeek R1)을 메인 LLM으로 사용하는 경우, 사고 출력이 모든 에이전트 반복의 추론 패널에 나타납니다. 이는 정상입니다 — 기능에 영향을 주지 않으며, 모델의 추론 과정을 볼 수 있습니다.
</Note>

## 제공자 세부 정보

### OpenAI

가장 검증된 옵션입니다. OpenAI 모델은 최고 수준의 네이티브 함수 호출(도구 호출) 지원을 제공하며, 이는 에이전트 안정성에 직접적인 영향을 미칩니다. GPT-5 계열(2025년 8월 이후)은 GPT-4에 비해 주요 세대 도약입니다.

**권장 모델:**

* 메인: `gpt-5.4` (최신 플래그십, 2026년 3월 — 1M+ 컨텍스트, 컴퓨터 사용) 또는 `o3` (최고의 추론 정확도)
* 빠름: `gpt-5.4-mini` ($0.75/$4.50 per MTok) 또는 `gpt-5.4-nano` (최저가 $0.20/$1.25 per MTok)
* 예산 빠름: `gpt-5-mini` ($0.25/$2.00) 및 `gpt-5-nano` ($0.05/$0.40)는 더 낮은 가격으로 계속 사용 가능
* 레거시: `gpt-4.1` (여전히 API에 있음, 1M 컨텍스트, 코딩에 적합)

**추론:** `LLM_REASONING_EFFORT=medium`으로 설정 — o 시리즈 및 GPT-5.x 모델과 기본적으로 작동합니다. GPT-5.4는 `reasoning_effort`를 `none`, `low`, `medium`, `high`, `xhigh` 수준으로 지원합니다. o 시리즈는 `max_tokens` 대신 `max_completion_tokens`이 필요하며, LiteLLM이 자동으로 처리합니다. 참고: GPT-5.x는 여전히 `/v1/chat/completions`에서 도구가 있을 때 `reasoning_effort`를 제거합니다 — FIM One은 에이전트 도구 사용 단계에서 자동으로 제거하여 워크플로우가 중단 없이 실행됩니다. GPT-5.4는 `temperature=1`이 필요합니다 — FIM One은 LiteLLM의 매개변수 필터링(`drop_params`)을 통해 자동으로 처리합니다.

| 모델             | 입력 \$/MTok | 출력 \$/MTok | 컨텍스트                     |
| -------------- | ---------- | ---------- | ------------------------ |
| `gpt-5.4`      | \$2.50     | \$15.00    | 1,050K (272K 초과 시 추가 요금) |
| `gpt-5.4-mini` | \$0.75     | \$4.50     | 400K                     |
| `gpt-5.4-nano` | \$0.20     | \$1.25     | 400K                     |
| `o3`           | \$2.00     | \$8.00     | 200K                     |
| `o4-mini`      | \$1.10     | \$4.40     | 200K                     |
| `gpt-5-mini`   | \$0.25     | \$2.00     | 400K                     |
| `gpt-5-nano`   | \$0.05     | \$0.40     | 400K                     |

```bash theme={null}
# .env — OpenAI (production with reasoning)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://api.openai.com/v1
LLM_MODEL=gpt-5.4
FAST_LLM_MODEL=gpt-5.4-nano
LLM_REASONING_EFFORT=medium
```

```bash theme={null}
# .env — OpenAI (budget reasoning)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://api.openai.com/v1
LLM_MODEL=o3
FAST_LLM_MODEL=gpt-5.4-nano
LLM_REASONING_EFFORT=medium
```

### Anthropic (Claude)

Claude는 미묘한 추론과 복잡한 다단계 작업에 뛰어납니다. FIM One은 [LiteLLM](https://github.com/BerriAI/litellm)을 통해 연결되며, Anthropic 모델을 자동으로 네이티브 API를 통해 라우팅합니다. 현재 세대는 Claude 4.6(2026년 2월)입니다.

**권장 모델:**

* Main: `claude-sonnet-4-6` (기능과 비용의 최적 균형 — $3/$15 per MTok)
* Fast: `claude-haiku-4-5` (빠르고 저렴함 — $1/$5 per MTok)
* Premium: `claude-opus-4-6` (가장 강력함, 최대 128K 출력 — $5/$25 per MTok)

**Base URL:** `https://api.anthropic.com/v1/`

Opus 4.6과 Sonnet 4.6은 1M 컨텍스트 윈도우를 가지고 있습니다(2026년 3월 13일부터 GA — 베타 헤더 불필요). Haiku 4.5는 200K 컨텍스트 윈도우를 가지고 있습니다.

**추론:** `LLM_REASONING_EFFORT=medium`을 설정하세요 — LiteLLM은 Anthropic 모델을 네이티브 API를 통해 라우팅하므로, `reasoning_content`(확장 사고)가 완전히 반환되고 UI "thinking" 단계에서 볼 수 있습니다. Claude 4.6 모델은 Adaptive Thinking(`thinking: {type: "adaptive"}`)을 지원하며, 이는 수동 `budget_tokens`을 대체합니다 — LiteLLM이 자동으로 변환을 처리합니다. 확장 사고가 활성화되면 Anthropic은 `temperature=1`을 요구합니다 — `.env` 또는 모델 구성에서 `LLM_TEMPERATURE=1`을 설정하세요. 자세한 내용은 [Extended Thinking](/configuration/environment-variables#extended-thinking-reasoning)을 참조하세요.

```bash theme={null}
# .env — Anthropic Claude
LLM_API_KEY=sk-ant-...
LLM_BASE_URL=https://api.anthropic.com/v1/
LLM_MODEL=claude-sonnet-4-6
FAST_LLM_MODEL=claude-haiku-4-5
LLM_REASONING_EFFORT=medium
```

***

### Google Gemini

Gemini 모델은 Google의 OpenAI 호환 엔드포인트를 통해 경쟁력 있는 가격으로 강력한 성능을 제공합니다. 3.x 세대(2025년 말 이후)는 큰 도약입니다 — Gemini 3 Flash는 2.5 Pro를 능가하면서 3배 더 빠릅니다. 참고: `gemini-3-pro-preview`는 2026년 3월 9일에 종료되었습니다 — 대신 `gemini-3.1-pro-preview`를 사용하세요.

**권장 모델:**

* 안정화(GA): `gemini-2.5-pro` (메인) + `gemini-2.5-flash` (빠름) — 프로덕션 준비 완료
* 최신(미리보기): `gemini-3.1-pro-preview` (메인) + `gemini-3-flash-preview` (빠름) + `gemini-3.1-flash-lite-preview` (예산 빠름) — 최고 성능, 하지만 미리보기 상태

**기본 URL:** `https://generativelanguage.googleapis.com/v1beta/openai/`

**추론:** `reasoning_effort`는 호환성 엔드포인트에서 지원됩니다 — `LLM_REASONING_EFFORT=medium`을 설정하면 기본적으로 작동합니다.

| 모델                              | 입력 \$/MTok | 출력 \$/MTok | 상태              |
| ------------------------------- | ---------- | ---------- | --------------- |
| `gemini-3.1-pro-preview`        | \$2.00     | \$12.00    | 미리보기            |
| `gemini-3-flash-preview`        | \$0.50     | \$3.00     | 미리보기            |
| `gemini-3.1-flash-lite-preview` | \$0.25     | \$1.50     | 미리보기 (2026년 3월) |
| `gemini-2.5-pro`                | \$1.25     | \$10.00    | 안정화 GA          |
| `gemini-2.5-flash`              | \$0.30     | \$2.50     | 안정화 GA          |
| `gemini-2.5-flash-lite`         | \$0.10     | \$0.40     | 안정화 GA          |

```bash theme={null}
# .env — Gemini (stable)
LLM_API_KEY=AIza...
LLM_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openai/
LLM_MODEL=gemini-2.5-pro
FAST_LLM_MODEL=gemini-2.5-flash
LLM_REASONING_EFFORT=medium
```

```bash theme={null}
# .env — Gemini (latest preview)
LLM_API_KEY=AIza...
LLM_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openai/
LLM_MODEL=gemini-3.1-pro-preview
FAST_LLM_MODEL=gemini-3-flash-preview
LLM_REASONING_EFFORT=medium
```

***

### DeepSeek

DeepSeek는 시장에서 최고의 비용/성능 비율을 제공합니다. V3.2(2025년 12월)는 채팅과 추론 라인을 단일 모델로 통합했으며, 매우 저렴한 가격을 제공합니다.

**모델 ID** (모두 V3.2로 지원됨):

* `deepseek-chat` — 범용 (비사고 모드)
* `deepseek-reasoner` — 사고의 연쇄 추론 모드, `reasoning_content` 반환

**기본 URL:** `https://api.deepseek.com`

**가격:** MTok당 $0.28/$0.42 (캐시 히트: \$0.028) — 지금까지 가장 저렴한 최첨단 API입니다.

**출력 제한:** `deepseek-chat` 최대 출력은 8K 토큰입니다(`max_tokens`를 통해 명시적으로 설정해야 함). `deepseek-reasoner` 최대 출력은 64K 토큰입니다(사고의 연쇄 포함).

> **V4 예상 2026년 4월**: 1M 컨텍스트 윈도우를 가진 조 단위 매개변수 멀티모달 모델. 출시 시 새로운 모델 ID를 기대하세요.

```bash theme={null}
# .env — DeepSeek (budget-friendly)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://api.deepseek.com
LLM_MODEL=deepseek-chat
FAST_LLM_MODEL=deepseek-chat
```

```bash theme={null}
# .env — DeepSeek (with reasoning)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://api.deepseek.com
LLM_MODEL=deepseek-reasoner
FAST_LLM_MODEL=deepseek-chat
```

***

### 중국 국내 모델

모든 주요 중국 모델 제공업체는 OpenAI 호환 엔드포인트를 제공합니다. 이들은 중국어 작업에 특히 강력하며 경쟁력 있는 로컬 가격을 제공합니다.

#### Qwen / 通义千问 (Alibaba Cloud)

Qwen 3.5 (2026년 2월)는 최신 세대입니다 — 397B MoE 플래그십은 MMLU-Pro에서 GPT-5.2를 능가합니다. 가장 강력한 중국어 지원과 가장 저렴한 프론티어급 가격(\~\$0.11/MTok 입력)을 제공합니다.

* **Base URL (중국):** `https://dashscope.aliyuncs.com/compatible-mode/v1`
* **Base URL (글로벌):** `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`
* **메인:** `qwen3.5-plus` (플래그십, 1M 컨텍스트, $0.11/$0.66 per MTok) 또는 `qwen3-max` (256K, 가장 강력)
* **빠른 속도:** `qwen3.5-flash` ($0.055/$0.22 per MTok) 또는 `qwen-turbo` ($0.04/$0.08 per MTok)
* **추론:** `enable_thinking: true` 파라미터가 있는 `qwen3-max` (별도의 `qwen3-max-thinking` 모델 ID는 없음)

```bash theme={null}
# .env — Qwen (China)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_MODEL=qwen3.5-plus
FAST_LLM_MODEL=qwen3.5-flash
```

```bash theme={null}
# .env — Qwen (Global)
LLM_API_KEY=sk-...
LLM_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1
LLM_MODEL=qwen3.5-plus
FAST_LLM_MODEL=qwen3.5-flash
```

#### ChatGLM / 智谱

GLM-4.7 및 GLM-5 (2026)는 최신 모델입니다. GLM-5는 코딩/에이전트 작업에서 Claude Opus 수준에 접근하는 745B MoE 플래그십입니다.

* **Base URL (국내):** `https://open.bigmodel.cn/api/paas/v4`
* **Base URL (Z.AI 국제):** `https://api.z.ai/api/paas/v4`
* **Main:** `glm-4.7` (강력한 코딩, Z.AI에서 $0.60/$2.20)
* **Fast:** `glm-4.7-flash` (무료 티어!) 또는 `glm-4.7-flashx` ($0.07/$0.40, 높은 처리량)
* **Reasoning:** `glm-5` (745B MoE 플래그십, $1.00/$3.20)

강제 `tool_choice`는 지원되지 않습니다 — `"auto"`만 작동합니다.

<Warning>
  일부 HTTP 클라이언트는 base URL에 `/v1`을 자동으로 추가합니다. Zhipu는 `/v4`를 사용합니다 — 클라이언트가 OpenAI 스타일의 경로 접미사를 강제하지 않도록 하십시오. 그렇지 않으면 404 오류가 발생합니다.
</Warning>

```bash theme={null}
# .env — ChatGLM (domestic)
LLM_API_KEY=...
LLM_BASE_URL=https://open.bigmodel.cn/api/paas/v4
LLM_MODEL=glm-4.7
FAST_LLM_MODEL=glm-4.7-flash
```

```bash theme={null}
# .env — ChatGLM (Z.AI international)
LLM_API_KEY=...
LLM_BASE_URL=https://api.z.ai/api/paas/v4
LLM_MODEL=glm-4.7
FAST_LLM_MODEL=glm-4.7-flash
```

#### MiniMax

MiniMax M2.7 (2026년 3월 18일)는 최신 모델이며, 오픈 가중치이고 SWE-Bench에서 80.2%의 점수를 획득했습니다. M2.5는 빠르고 저렴한 옵션으로 계속 사용 가능합니다.

MiniMax는 다양한 지역을 위해 두 개의 별도 API 엔드포인트를 제공합니다:

* **Base URL (Global/해외판):** `https://api.minimax.io/v1` -- 중국 본토 외 사용자용
* **Base URL (China/국내판):** `https://api.minimaxi.com/v1` -- 중국 본토 사용자용 (참고: `minimaxi`에 추가 `i` 포함)
* **Main:** `MiniMax-M2.7`
* **Fast:** `MiniMax-M2.5`
* **Speed:** `MiniMax-M2.7-highspeed` (2배 비용, 낮은 지연시간)

| 모델                       | 입력 \$/MTok | 출력 \$/MTok |
| ------------------------ | ---------- | ---------- |
| `MiniMax-M2.7`           | \$0.30     | \$1.20     |
| `MiniMax-M2.7-highspeed` | \$0.60     | \$2.40     |
| `MiniMax-M2.5`           | \$0.30     | \$1.20     |
| `MiniMax-M2.5-highspeed` | \$0.60     | \$2.40     |

```bash theme={null}
# .env — MiniMax (global endpoint)
LLM_API_KEY=...
LLM_BASE_URL=https://api.minimax.io/v1
LLM_MODEL=MiniMax-M2.7
FAST_LLM_MODEL=MiniMax-M2.5
```

```bash theme={null}
# .env — MiniMax (China mainland endpoint)
LLM_API_KEY=...
LLM_BASE_URL=https://api.minimaxi.com/v1
LLM_MODEL=MiniMax-M2.7
FAST_LLM_MODEL=MiniMax-M2.5
```

#### Kimi / 월지암면 (Moonshot)

Kimi K2.5 (2026년 1월)는 256K 컨텍스트를 가지고 있으며 강력한 코딩 성능(오픈소스 모델 중 SWE-Bench 76.8%)을 제공합니다.

* **Base URL (Global):** `https://api.moonshot.ai/v1`
* **Base URL (China):** `https://api.moonshot.cn/v1`
* **Main:** `kimi-k2.5`
* **Fast:** `kimi-k2` (non-thinking, function calling works)
* **Reasoning:** `kimi-k2-thinking` ($0.47/$2.00 per MTok)

강제 `tool_choice`는 thinking 모드가 꺼져 있을 때만 작동합니다. thinking이 활성화되면 `"auto"`만 지원됩니다.

```bash theme={null}
# .env — Kimi (Global)
LLM_API_KEY=...
LLM_BASE_URL=https://api.moonshot.ai/v1
LLM_MODEL=kimi-k2.5
FAST_LLM_MODEL=kimi-k2
```

```bash theme={null}
# .env — Kimi (China)
LLM_API_KEY=...
LLM_BASE_URL=https://api.moonshot.cn/v1
LLM_MODEL=kimi-k2.5
FAST_LLM_MODEL=kimi-k2
```

***

### 로컬 모델 (Ollama)

자신의 하드웨어에서 모델을 완전히 실행하세요 — API 키가 필요 없고, 완전히 오프라인입니다. Ollama는 기본적으로 OpenAI 호환 엔드포인트를 제공합니다. 오픈소스 환경이 극적으로 변했습니다 — Qwen 3.5, Llama 4, GPT-OSS (OpenAI의 첫 오픈 가중치 모델)이 모두 사용 가능합니다.

**기본 URL:** `http://localhost:11434/v1`

**VRAM별 권장 모델:**

| VRAM   | 주요 LLM                            | 빠른 LLM        | 참고                     |
| ------ | --------------------------------- | ------------- | ---------------------- |
| 8 GB   | `qwen3.5:9b` / `gemma3:4b`        | `qwen3.5:4b`  | Qwen 3.5 9B는 이 계층에서 최고 |
| 16 GB  | `gpt-oss:20b` / `deepseek-r1:14b` | `qwen3.5:9b`  | GPT-OSS 20B는 에이전트 최적화됨 |
| 24 GB  | `qwen3:32b` / `deepseek-r1:32b`   | `qwen3.5:9b`  | Qwen 3 32B는 도구 호출에 최적  |
| 48 GB+ | `llama3.3:70b` / `gpt-oss:120b`   | `qwen3.5:14b` | 최신 수준의 품질              |

**도구 호출에 최적:** Qwen 3/3.5 (32B+), GLM-4.7, GPT-OSS, Mistral — 이들은 명시적 함수 호출 학습을 받았습니다. 14B+ 파라미터를 가진 모델이 안정적인 도구 호출의 최소 요구사항이며, 32B+ 이상이 강력히 권장됩니다.

<Warning>
  **도구 호출 품질은 로컬 모델 간에 크게 다릅니다.** 모든 모델이 유효한 함수 호출을 안정적으로 생성하는 것은 아닙니다. 프로덕션에서 사용하기 전에 에이전트 워크플로우로 선택한 모델을 테스트하세요. 일반적인 규칙: 최소 14B, 에이전트 작업에는 32B+ 권장.
</Warning>

```bash theme={null}
# .env — Ollama (balanced, 16GB VRAM)
LLM_API_KEY=ollama
LLM_BASE_URL=http://localhost:11434/v1
LLM_MODEL=gpt-oss:20b
FAST_LLM_MODEL=qwen3.5:9b
LLM_CONTEXT_SIZE=32768
LLM_MAX_OUTPUT_TOKENS=8192
```

```bash theme={null}
# .env — Ollama (agent-optimized, 24GB VRAM)
LLM_API_KEY=ollama
LLM_BASE_URL=http://localhost:11434/v1
LLM_MODEL=qwen3:32b
FAST_LLM_MODEL=qwen3.5:9b
LLM_CONTEXT_SIZE=32768
LLM_MAX_OUTPUT_TOKENS=8192
```

***

## 제3자 릴레이 플랫폼

많은 사용자가 단일 릴레이(프록시) 서비스를 통해 여러 모델 제공자에 액세스합니다. FIM One은 URL 경로 패턴을 기반으로 올바른 API 프로토콜을 자동으로 감지합니다 — `LLM_BASE_URL`을 입력하기만 하면 작동합니다.

### 작동 방식

기본 URL이 타사 릴레이를 가리킬 때, FIM One은 URL 경로를 검사하여 사용할 프로토콜을 결정합니다:

| URL 경로 포함                 | 감지된 프로토콜       | 인증 헤더                   | 주요 이점                             |
| ------------------------- | -------------- | ----------------------- | --------------------------------- |
| `/v1` (또는 일치 없음)          | OpenAI 호환      | `Authorization: Bearer` | 범용 폴백, 대부분의 릴레이와 호환               |
| `/claude` 또는 `/anthropic` | Anthropic 네이티브 | `x-api-key`             | 전체 `reasoning_content` (확장 사고) 지원 |
| `/gemini`                 | Google 네이티브    | `x-goog-api-key`        | 네이티브 Gemini 파라미터 변환               |

**해결 순서:** 명시적 DB 제공자 필드 > 도메인 일치 (공식 API) > URL 경로 힌트 (릴레이 플랫폼) > OpenAI 호환 폴백.

### 예제: 하나의 릴레이, 세 가지 프로토콜

단일 릴레이 계정으로 기본 URL 경로를 변경하기만 하면 다양한 공급자에 액세스할 수 있습니다:

```bash theme={null}
# .env — Claude via relay (Anthropic native protocol)
LLM_API_KEY=your-relay-key
LLM_BASE_URL=https://relay.example.com/anthropic
LLM_MODEL=claude-sonnet-4-6
```

```bash theme={null}
# .env — Gemini via relay (Google native protocol)
LLM_API_KEY=your-relay-key
LLM_BASE_URL=https://relay.example.com/gemini
LLM_MODEL=gemini-2.5-pro
```

```bash theme={null}
# .env — GPT via relay (OpenAI compatible protocol)
LLM_API_KEY=your-relay-key
LLM_BASE_URL=https://relay.example.com/v1
LLM_MODEL=gpt-5.4
```

추가 구성이 필요 없습니다 — 인증 헤더, 매개변수 형식 및 응답 파싱이 모두 자동으로 전환됩니다.

### 단계별: 경로 감지 작동 방식

릴레이를 구성할 때 내부적으로 어떤 일이 발생하는지 보여주는 구체적인 예시입니다:

```bash theme={null}
# .env — Claude via a relay platform
LLM_API_KEY=your-relay-key
LLM_BASE_URL=https://my-relay.example.com/claude
LLM_MODEL=claude-sonnet-4-6
LLM_REASONING_EFFORT=medium
```

1. FIM One이 URL 경로에서 `/claude`를 감지 → **Anthropic 네이티브** 프로토콜 감지
2. 모델이 LiteLLM 라우팅을 위해 `anthropic/claude-sonnet-4-6`으로 접두사 지정
3. 요청이 Anthropic의 `/v1/messages` 형식을 `x-api-key` 인증 헤더와 함께 사용
4. `reasoning_effort=medium`이 Anthropic의 네이티브 `thinking` 파라미터로 변환됨 (OpenAI의 `reasoning_effort`가 아님)

<Warning>
  동일한 릴레이 URL이 `https://my-relay.example.com/v1`이었다면, `/claude` 힌트가 누락되어 FIM One이 OpenAI 호환 프로토콜로 폴백되어 Claude 네이티브 엔드포인트에 `/v1/chat/completions` 요청을 보내게 되어 실패합니다. **URL 경로가 중요합니다.**
</Warning>

### 왜 이것이 중요한가

* **Anthropic 네이티브 엔드포인트**는 적절한 `reasoning_content` 지원(UI에서 확장 사고 가시화), 올바른 도구 호출 형식, `x-api-key` 인증을 제공합니다 — OpenAI 호환 변환을 사용할 때 손실되는 기능입니다.
* **Google 네이티브 엔드포인트**는 네이티브 Gemini 매개변수와 `x-goog-api-key` 인증을 제공합니다.
* **OpenAI 호환**은 범용 폴백이며 모든 릴레이에서 작동하지만, 공급자별 기능(예: 확장 사고 출력)은 사용할 수 없을 수 있습니다.

<Note>
  릴레이 플랫폼이 비표준 경로 규칙을 사용하는 경우(예: URL에 `/claude` 또는 `/anthropic`이 없음), FIM One은 OpenAI 호환 프로토콜로 폴백됩니다 — 대부분의 사용 사례에서 작동합니다. 완전한 네이티브 프로토콜 지원을 위해 관리자 모델 구성 UI를 통해 `provider` 필드를 명시적으로 설정할 수 있습니다.
</Note>

## 구성 전략

### Main vs Fast: 언제 분할할지

* **분할** 메인 모델이 비싸거나 느릴 때 (예: `gpt-5.4` + `gpt-5.4-nano`). DAG 모드는 많은 병렬 단계를 실행합니다 — 더 저렴한 빠른 모델을 사용하면 상당한 비용을 절감할 수 있습니다.
* **동일 모델** 모델이 이미 저렴할 때 (예: 둘 다 `deepseek-chat`). 두 모델을 관리하는 오버헤드는 그만한 가치가 없습니다.

### 추론을 활성화하는 시기

* **활성화**: 복잡한 분석 작업, 다단계 계획, 신중한 판단이 필요한 작업
* **비활성화** (기본값): 일상적인 작업, 간단한 Q\&A, 비용에 민감한 배포
* 추론은 일반적으로 요청당 비용을 2-5배 증가시킵니다 — `medium` 수준의 노력이 좋은 시작점입니다

### 컨텍스트 윈도우 크기 조정

`LLM_CONTEXT_SIZE`를 모델의 실제 윈도우와 일치하도록 설정하세요:

| 모델                | 컨텍스트 윈도우                 |
| ----------------- | ------------------------ |
| GPT-5.4           | 1,050K (272K 초과 시 추가 요금) |
| o3 / o4-mini      | 200K                     |
| Claude Opus 4.6   | 1M                       |
| Claude Sonnet 4.6 | 1M                       |
| Claude Haiku 4.5  | 200K                     |
| Gemini 2.5 Pro    | 1M                       |
| Gemini 3.1 Pro    | 1M                       |
| DeepSeek V3.2     | 128K                     |
| Qwen 3.5 Plus     | 1M                       |
| Local (Ollama)    | 4K–128K (다양함)            |

로컬 모델의 경우 `LLM_CONTEXT_SIZE`와 `LLM_MAX_OUTPUT_TOKENS`를 명시적으로 설정하세요. 기본값은 로컬 모델이 지원할 수 없는 클라우드 규모의 컨텍스트 윈도우를 가정합니다.
