Qwen 3.5 도구 호출 에이전트 사용 개선: 서버 상태 및 클라이언트 측 해결 방법

✍️ OpenClawRadar📅 게시일: April 15, 2026🔗 Source
Qwen 3.5 도구 호출 에이전트 사용 개선: 서버 상태 및 클라이언트 측 해결 방법
Ad

Qwen 3.5 에이전트 환경에서의 도구 호출 버그

코딩 에이전트나 함수 호출 루프와 같은 에이전트 환경에서 Qwen 3.5 모델을 실행할 때, 네 가지 특정 버그로 인해 도구 호출이 완전히 실패할 수 있습니다.

네 가지 핵심 버그

  • XML 도구 호출이 일반 텍스트로 유출됨: Qwen 3.5는 도구 호출을 XML 형식(예: <function=bash><parameter=command>ls</parameter></function>)으로 출력합니다. 서버가 이를 파싱하지 못할 때—특히 텍스트가 XML 앞에 있거나 사고 기능이 활성화된 경우—도구 호출이 finish_reason: stop과 함께 원시 텍스트로 도착하여 에이전트가 실행하지 못합니다.
  • <think> 태그가 텍스트로 유출되어 컨텍스트를 오염시킴: llama.cpp는 enable_thinking: false 설정과 관계없이 내부적으로 thinking=1을 강제 적용하여, 태그가 여러 턴에 걸쳐 누적되고 다중 턴 세션을 파괴합니다.
  • 잘못된 finish_reason: 서버가 도구 호출이 존재할 때 "stop"을 전송하여 에이전트가 이를 최종 응답으로 처리하게 합니다.
  • 비표준 finish_reason: 일부 서버는 "eos_token", "", 또는 null을 반환하여, 대부분의 프레임워크가 도구 호출 존재 여부를 확인하기 전에 알 수 없는 값으로 인해 충돌합니다.

서버 상태 (2026년 4월)

원본은 주요 추론 서버에 대한 상세 상태 표를 제공합니다:

  • LM Studio 0.4.9: XML 파싱을 위한 최고의 로컬 옵션(v0.4.7에서 수정됨), 사고 유출 처리 개선, 일반적으로 정확한 finish_reason.
  • vLLM 0.19.0: --tool-call-parser qwen3_coder 플래그와 함께 작동, 스트리밍 버그 존재, 사고 유출 수정됨, 일반적으로 정확한 finish_reason.
  • Ollama 0.20.2: 닫히지 않은 </think> 버그 수정 이후 개선됨, XML 파싱에서 여전히 불안정, 때때로 잘못된 finish_reason.
  • llama.cpp b8664: 파서가 존재하지만 사고 기능이 활성화된 경우 실패, 사고 유출 고장, 파서 실패 시 잘못된 finish_reason.
Ad

권장 솔루션

도구 인수에서 |items 필터 실패와 같은 알려진 문제가 있는 기본 Qwen 3.5 Jinja 템플릿 대신 Unsloth GGUFs를 사용하세요. Unsloth는 21개의 템플릿 수정 사항을 포함합니다.

서버가 놓친 부분을 포착하는 세 가지 작은 함수로 클라이언트 측 안전망을 추가하세요. 원본은 첫 번째 함수를 제공합니다:

import re, json, uuid

1. 텍스트 콘텐츠에서 Qwen XML 도구 호출 파싱

def parse_qwen_xml_tools(text): results = [] for m in re.finditer(r'<function=([\w.-]+)>([\s\S]?)</function>', text): args = {} for p in re.finditer(r'<parameter=([\w.-]+)>([\s\S]?)</parameter>', m.group(2)): k, v = p.group(1).strip(), p.group(2).strip() try: v = json.loads(v) except: pass args[k] = v

이 함수는 서버가 XML을 제대로 파싱하지 못할 때 텍스트 콘텐츠에서 도구 호출을 추출하여, 에이전트 워크플로우를 위한 대체 메커니즘을 제공합니다.

📖 전체 원본 읽기: r/LocalLLaMA

Ad

👀 See Also

OpenClaw 설정 시 흔히 하는 가지 실수와 해결 방법
Guides

OpenClaw 설정 시 흔히 하는 가지 실수와 해결 방법

OpenClaw 설정에서 가장 흔히 저지르는 다섯 가지 실수와 해결 방법: 영구 메모리 부재, 외부 접근 차단, 시스템 프롬프트 과부하, 폴백 동작 누락, 단일 모델 사용.

OpenClawRadar
로컬 AI 코딩 에이전트 설정을 위한 OpenCode 시작하기
Guides

로컬 AI 코딩 에이전트 설정을 위한 OpenCode 시작하기

초보자 가이드는 Mac, Linux, Windows(WSL2)에서 LM Studio, llama.cpp 또는 Ollama를 통해 ByteShape의 최적화된 모델을 사용하여 OpenCode를 완전히 로컬 AI 코딩 에이전트로 설정하는 과정을 안내합니다.

OpenClawRadar
레딧 분석을 통한 OpenClaw 설정 가이드: 하드웨어, 비용, 메모리 및 보안 관행
Guides

레딧 분석을 통한 OpenClaw 설정 가이드: 하드웨어, 비용, 메모리 및 보안 관행

레딧 사용자가 OpenClaw의 흔한 실수를 분석하고, 하드웨어 요구사항, 비용을 월 10달러로 최적화하는 방법, MEMORY.md 파일을 이용한 메모리 관리, 프롬프트 인젝션 공격을 방지하는 보안 관행을 다루는 설정 가이드를 만들었습니다.

OpenClawRadar
6GB VRAM에서 Qwen3.6 27B 및 35B를 ik_llama로 실행하기: 실용 설정 및 벤치마크
Guides

6GB VRAM에서 Qwen3.6 27B 및 35B를 ik_llama로 실행하기: 실용 설정 및 벤치마크

한 사용자가 RTX2060 mobile(6GB VRAM, 32GB RAM)에서 Qwen3.6 27B 및 35B A3B 모델을 실행하기 위한 상세한 ik_llama 설정과 성능 수치를 공유합니다. 프리필 속도는 40-100 t/s, 생성 속도는 최대 11 t/s입니다.

OpenClawRadar