DeepSeek의 내장 도구 기피 현상
DeepSeek's aversion to built-in tools
핵심 요약
DeepSeek가 내장 도구 대신 파이썬 스크립트를 남용하여 파일 수정 시 diff 확인이 어려운 문제를 해결하고자 하는 논의입니다.
- 도구 사용 방식 — 모델이 내장 도구 대신 파이썬 스크립트를 선호함
- 사용자 불편 — 파일 수정 시 diff가 생성되지 않아 변경 사항 확인이 어려움
- 해결 방안 — bash 도구 비활성화 또는 시스템 프롬프트로 도구 사용 강제
- 기술적 논쟁 — 범용 코드 실행 도구의 편리함과 제어 가능성 사이의 의견 차이
Pi로 DeepSeek v4.1 Flash를 로컬에서 돌리고 있는데, 좀 짜증 나는 문제가 하나 있네. 이놈이 내장 툴을 쓰는 대신 자꾸 스크립트를 짜서 파일을 수정하거나, 파일을 나열하고 grep을 돌려버려. AGENTS.md를 수정해 봐도 영 신통치가 않네. 혹시 이런 문제 겪어본 사람 있어? 툴 사용 준수율 높이는 프롬프트 좀 만들어둔 거 있으면 공유 좀 해줘. 특히 제일 빡치는 건 파일을 수정할 때 툴을 안 쓰고 파이썬 스크립트를 돌려버리는 건데, 이러면 깔끔하게 diff를 볼 수가 없어서 너무 불편해.
$ cd ... && python3 - <<'EOF'
import re
p = "test/e2e.sh"
s = open(p).read()
s = s.replace("""fail() {
echo "FAIL: $*" >&2
cleanup_keep
exit 1
}""", """fail() {
echo "FAIL: $*" >&2
exit 1
}""")
s = s.replace('''$DOCKER logs "$PROJECT-broker-1" 2>&1 \\
| grep -q "DENY stop llama-swap-test-protected" \\''', '''$DOCKER logs "$(compose ps -q broker)" 2>&1 \\
| grep -q "DENY stop llama-swap-test-protected" \\''')
open(p, "w").write(s)
EOF
