# task-1540.1 완료 보고서: GLM 모델 업그레이드 실적용 + 활용 방안 리서치

**작업 ID**: task-1540.1
**팀**: dev7-team (이참나 팀장)
**작업일**: 2026-04-08

---

## SCQA

**S**: GLM MCP 서버와 CLI 도구들이 구형 모델(glm-4.7-flash)을 사용 중이며, 8팀 dispatch 프롬프트의 테스터 이름이 조직도와 불일치(토트 vs 소베크)하는 상태다.

**C**: GLM-5.1(최신 모델)이 Z.ai API에서 이미 지원되고 있으나 코드에 반영되지 않아, 최신 모델의 성능 향상(reasoning 기능 포함)을 활용하지 못하고 있다. 또한 GLM이 8팀에서만 제한적으로 사용되어 활용도가 낮다.

**Q**: GLM 모델 업그레이드를 전체 코드베이스에 반영하고, GLM을 더 폭넓게 활용할 방법이 있는가?

**A**: Phase 1 — 5개 파일에서 모델명 업그레이드 + 테스터명 수정 완료. 테스트 48건 전체 통과(test_server.py 30건 + test_team_prompts.py 18건). Phase 2 — VS Code Continue 연동(즉시 가능), 1~7팀 확장(GLM-4.7-Flash 무료 활용 가능), 셀프호스팅(GLM-5.1은 불가, Flash는 가능) 등 4개 방안 리서치 완료.

---

## Phase 1: 모델 업그레이드 코드 변경

### 변경 내역

#### 1. `tools/glm-mcp/server.py` — MCP 서버 모델 변경
- `glm_backend()` line 246: `glm-5` → `glm-5.1` (아누비스)
- `glm_frontend()` line 268: `glm-4.7-flash` → `glm-5` (호루스)
- `glm_uxui()` line 290: `glm-4.7-flash` → `glm-5` (바스테트)
- `glm_tester()` line 312: `glm-4.7-flash` → `glm-5` (소베크)

#### 2. `tools/glm-call.py` — CLI 모델 목록
- line 63: VALID_MODELS에 `glm-5.1` 맨 앞 추가 → `["glm-5.1", "glm-5", "glm-4.7", "glm-4.7-flash", "glm-4.7-flashx"]`

#### 3. `glm-coder.py` — 기본 모델 업데이트
- line 25: `glm-4.7-flash` → `glm-5`
- line 38: print 출력 `[GLM-4.7-flash]` → `[GLM-5]`

#### 4. `prompts/team_prompts.py` — dispatch 프롬프트 동기화
- 모델명: glm_backend→glm-5.1, glm_frontend→glm-5, glm_uxui→glm-5, glm_tester→glm-5, glm_generate→glm-5
- 테스터 이름: 토트 → 소베크 (line 88, 170, 890, 900 — dev8 팀 한정)
- 출판 센터장 토트(Thoth)는 변경하지 않음 (line 103, 440)

#### 5. `tools/glm-mcp/tests/test_server.py` — 테스트 assertions 업데이트
- `TestGlmBackendModel`: assert `glm-5` → `glm-5.1`
- `TestGlmFrontendModel`: assert `glm-4.7-flash` → `glm-5`

### API 검증 결과
- `glm-5.1`: HTTP 200 성공 (일시적 429 가능, 재시도 로직으로 처리됨). reasoning_content 필드 확인 — 추론 기능 포함 모델.
- `glm-5`: HTTP 200 성공. 안정적 응답.

### 테스트 결과
- `tools/glm-mcp/tests/test_server.py`: **30/30 PASS** (0.97초)
- `prompts/test_team_prompts.py`: **18/18 PASS** (0.07초)

---

## Phase 2: GLM 추가 활용 방안 리서치

### 1. VS Code Continue 확장 연동 — 가능, 추천

Z.ai API가 OpenAI 호환이므로 Continue 확장에서 즉시 사용 가능.

설정 방법 (`~/.continue/config.yaml`):
```yaml
models:
  - name: GLM-4.7
    provider: openai
    model: glm-4.7
    apiBase: https://api.z.ai/api/paas/v4
    apiKey: {Z_AI_API_KEY}
    roles: [chat, edit]
  - name: GLM-4.7-Flash (자동완성)
    provider: openai
    model: glm-4.7-flash
    apiBase: https://api.z.ai/api/paas/v4
    apiKey: {Z_AI_API_KEY}
    roles: [autocomplete]
```

채팅, 인라인 편집, 탭 자동완성 모두 지원. Flash 모델 무료이므로 자동완성에 비용 없이 활용 가능.

### 2. GLM Coding Plan — 개인 개발자에게만 유리

- Coding Lite: $10/월 (5시간 내 ~120 메시지)
- Coding Pro: ~$30/월 (GLM-5.1 접근)
- 우리처럼 팀 공유 API 방식이면 종량제가 더 유연함
- 판정: **팀 환경에서는 비추천**

### 3. 셀프호스팅 가능성

- **GLM-5.1 (754B)**: 불가. FP8 기준 ~860GB VRAM 필요 (A100 80GB x8 = 640GB로 부족). H200 x8 이상 필요.
- **GLM-4.7-Flash (9B)**: 가능. Q4 양자화 시 ~15-18GB VRAM, RTX 3080 1대로 운영 가능. 60-220 토큰/초.
- 라이선스: MIT (상업적 사용 가능)
- 판정: GLM-5.1 셀프호스팅 **비추천**, Flash 셀프호스팅 **조건부 추천**

### 4. 1~7팀 확장 활용 — 강력 추천

활용 시나리오:
- 코드 리뷰 보조: GLM-4.7 ($0.6/1M입력) vs Claude Sonnet ($3.0/1M) — 5배 저렴
- 번역/문서 초안: GLM-4.7-Flash 무료
- 테스트 케이스 생성: 반복적 작업에 GLM, 복잡한 작업에 Claude

역할 분담 권장:
- 복잡한 설계/아키텍처 → Claude (유지)
- 코드 리뷰/리팩터링 → GLM-4.7
- 번역/문서/자동완성 → GLM-4.7-Flash (무료)

### Phase 2 종합 추천

| 방안 | 판정 | 우선순위 |
|------|------|---------|
| VS Code Continue 연동 | 즉시 가능 | 높음 |
| 1~7팀 확장 (Flash 무료) | 강력 추천 | 높음 |
| GLM Coding Plan | 팀 환경 부적합 | 낮음 |
| GLM-5.1 셀프호스팅 | 하드웨어 부족 | 불필요 |
| GLM-4.7-Flash 셀프호스팅 | 16GB GPU 시 가능 | 중간 |

---

## 발견 이슈 및 해결

### 자체 해결 (3건)
1. **test_server.py 모델 assertions 불일치** — 모델 변경에 맞춰 테스트 기대값 업데이트 (line 301: glm-5→glm-5.1, line 319: glm-4.7-flash→glm-5)
2. **glm-coder.py print문 모델명 불일치** — `[GLM-4.7-flash]` → `[GLM-5]`로 동기화
3. **glm-5.1 API 429 일시 과부하** — 기존 재시도 로직(MAX_RETRIES=2, RETRY_INTERVAL=5초)이 정상 처리함을 확인

### 범위 외 미해결 (1건)
1. **glm-coder.py:29 pyright 타입 경고** — `response.choices[0].message.content`가 `str | None` 반환 가능하나 함수 리턴 타입이 `str`. 범위 외 사유: 기존 코드 이슈이며 본 작업(모델명 변경)과 무관

---

## 산출물 파일

- `/home/jay/workspace/tools/glm-mcp/server.py`
- `/home/jay/workspace/tools/glm-call.py`
- `/home/jay/workspace/glm-coder.py`
- `/home/jay/workspace/prompts/team_prompts.py`
- `/home/jay/workspace/tools/glm-mcp/tests/test_server.py`
- `/home/jay/workspace/memory/reports/task-1540.1.md`

---

## 모델 사용 기록

- 팀원: 쿠쿨칸(백엔드) / 작업: server.py + glm-call.py + glm-coder.py + test_server.py 모델 변경 / 사용 모델: sonnet
- 팀원: 이쉬첼(프론트엔드) / 작업: team_prompts.py 모델명 동기화 + 테스터명 수정 / 사용 모델: sonnet
- 팀원: 카마소츠(테스터) / 작업: Z.ai API glm-5.1/glm-5 모델 지원 검증 / 사용 모델: sonnet
- 팀원: 리서치 에이전트 / 작업: Phase 2 GLM 활용 방안 리서치 / 사용 모델: sonnet

---

## QC 검증 결과

(아래에 qc_verify.py 결과 첨부)
