악마는 채팅 템플릿에 있습니다 ========================= 감자와 포타토는 피비 버페이가 믿게 하는 것과는 달리 같은 것이 아닙니다. AGI 때문에 잠을 못 이루는 분이나 오픈 소스 AI 모델 구현에 관심이 있는 분이라면 꼭 읽어야 할 블로그입니다. "AI 보안" 분야의 지식인으로서 이 블로그를 이해하지 못한다면, 이 주제에 대해 논평할 자격이 없습니다. 흔히 말하듯이 책을 읽어보세요. 이제 잔소리는 그만하고, 이 블로그를 통해 여러분의 프런티어 모델을 "멍청하게" 만들 수 있는 모든 일이 잘못될 수 있다는 것을 알려드리고 싶습니다. LLM 추론은 매우 취약합니다. 추론 엔진은 입력을 엄격한 형식(채팅 템플릿)으로 LLM에 제시해야 합니다. 조금만 벗어나도 출력 결과가 좋지 않습니다. 그렇지 않더라도 AGI에 대한 불안감을 줄일 수 있습니다. 기술이 스카이넷이 되지는 않을 테니까요. @vllm_project와 Lilian Weng에게 감사드립니다. 이 글에서는 Kimi 팀의 피드백을 바탕으로 vLLM에서 실행되는 Kimi k2 모델의 툴 호출 성공률을 거의 100%까지 개선하는 방법을 설명합니다. 피드백을 받은 후 정말 빠르게 처리해 주셨네요. 칭찬합니다. 지역 사회 봉사에 진심으로 감사드립니다 🧡💕 핵심 교훈(인용) 채팅 템플릿에 문제가 있습니다. chat_template은 모델과 서비스 제공 프레임워크 간의 중요한 핸드셰이크입니다. 새 모델을 통합할 때는 프레임워크의 특정 동작 및 가정을 기준으로 모든 템플릿 로직을 꼼꼼하게 검증해야 합니다. 추상화 계층을 벗겨내세요. /chat/completions와 같은 고수준 API는 편리하지만 근본 원인을 파악하기 어려울 수 있습니다. 디버깅할 때는 /completions와 같은 저수준 엔드포인트로 바로 내려가는 것을 주저하지 마세요. 입력을 수동으로 빌드하는 것은 문제를 격리하는 강력한 방법입니다. 전문가 팁: 토큰 ID는 궁극적인 Ground Truth입니다. 가장 미묘한 문제의 경우, 모델에 전송된 토큰 ID의 최종 시퀀스를 검사하는 것이 확실한 방법입니다. 위의 문제에서는 이 방법을 사용할 필요가 없었지만, 툴박스에서 매우 중요한 도구입니다. OpenAI 호환 API를 사용하여 토큰 ID를 반환하는 것과 같은 기술은 매우 유용합니다. 관심 있는 분들을 위해 Agent Lightning 게시물에서도 이 방법을 강조했습니다. 프레임워크 설계 철학 이해: vLLM의 **kwargs에 대한 엄격한 처리는 버그가 아니라 의도적인 보안 선택입니다. 이러한 설계 결정을 이해하면 예상치 못한 동작에 갇히지 않고 근본 원인을 신속하게 파악하는 데 도움이 됩니다. 오픈 생태계 과제: "Enforcer"라는 툴 호출과 같은 고급 기능은 세련된 독점 서비스의 특징입니다. vLLM과 같은 오픈소스 프로젝트에서 이러한 기능을 견고하고 우아하게 구현하는 것은 커뮤니티가 해결해야 할 중요한 과제입니다.
스레드를 불러오는 중
깔끔한 읽기 화면을 위해 X에서 원본 트윗을 가져오고 있어요.
보통 몇 초면 완료되니 잠시만 기다려 주세요.