Vicuna: 90%* ChatGPT 품질로 GPT-4를 감동시키는 오픈 소스 챗봇
개요
대규모 언어 모델(LLM)의 급속한 발전은 챗봇 시스템에 혁명을 가져왔고 전례 없는 결과를 가져왔습니다. OpenAI의 ChatGPT에서 볼 수 있는 지능 수준. 그러나 인상적인 성능에도 불구하고 ChatGPT의 교육 및 아키텍처 세부 사항은 불분명하여 이 분야의 연구 및 오픈 소스 혁신을 방해합니다. Meta LLaMA 및 Stanford Alpaca 프로젝트에서 영감을 받아 향상된 데이터 세트와 사용하기 쉽고 확장 가능한 인프라가 지원되는 오픈 소스 챗봇인 Vicuna-13B를 소개합니다. ShareGPT.com에서 수집한 사용자 공유 대화에서 LLaMA 기본 모델을 미세 조정함으로써 Vicuna-13B는 Stanford Alpaca와 같은 다른 오픈 소스 모델에 비해 경쟁력 있는 성능을 보여주었습니다. 이 블로그 게시물은 Vicuna-13B의 성능에 대한 예비 평가를 제공하고 교육 및 서비스 인프라에 대해 설명합니다. 또한 커뮤니티에 온라인 데모를 통해 상호 작용하여 이 챗봇의 기능을 테스트하도록 초대합니다.
Vicuna는 얼마나 좋은가요?
70,000개의 사용자 공유 ChatGPT 대화로 Vicuna를 미세 조정한 후 Vicuna가 능력을 갖추게 되었음을 발견했습니다. ChatGPT와 동등한 품질로 Alpaca에 비해 더 자세하고 잘 구성된 답변을 생성합니다(아래 예 참조).
온라인 데모
여기에서 Vicuna-13B 데모를 사용해 보세요!
교육
Vicuna는 공개 API를 통해 ShareGPT.com에서 수집한 약 70,000개의 사용자 공유 대화를 사용하여 LLaMA 기본 모델을 미세 조정하여 만들어졌습니다. 데이터 품질을 보장하기 위해 HTML을 다시 마크다운으로 변환하고 부적절하거나 품질이 낮은 샘플을 필터링합니다. 또한 긴 대화를 모델의 최대 컨텍스트 길이에 맞는 더 작은 세그먼트로 나눕니다.
- 다단계 대화: 다중 회전 대화를 고려하여 훈련 손실을 조정하고 미세 조정 손실은 챗봇의 출력.
- 메모리 최적화: Vicuna가 긴 컨텍스트를 이해할 수 있도록 최대 컨텍스트 길이를 알파카의 512에서 2048로 확장하여 GPU 메모리 요구 사항을 크게 늘립니다. 우리는 그래디언트 체크포인트와 플래시 어텐션을 활용하여 메모리 압박을 해결합니다.
- 스팟 인스턴스를 통한 비용 절감: 훈련을 위한 40배 더 큰 데이터세트와 4배의 시퀀스 길이는 훈련 비용에 있어 상당한 어려움을 안겨줍니다. 우리는 SkyPilot 관리형 스팟을 사용하여 선점 및 자동 구역 전환을 위한 자동 복구 기능이 있는 저렴한 스팟 인스턴스를 활용하여 비용을 절감합니다. 이 솔루션은 7B 모델의 훈련 비용을 약 140개에서, 13B 모델의 훈련 비용을 약 300개에서 줄였습니다.
서빙
우리는 분산된 모델을 통해 여러 모델을 서빙할 수 있는 서빙 시스템을 구축합니다. 노동자. 온프레미스 클러스터와 클라우드 모두에서 GPU 작업자의 유연한 플러그인을 지원합니다. SkyPilot의 내결함성 컨트롤러 및 관리형 스팟 기능을 활용함으로써 이 서비스 시스템은 여러 클라우드의 저렴한 스팟 인스턴스와 잘 작동하여 서비스 비용을 줄일 수 있습니다. 이는 현재 경량 구현이며 최신 연구를 더 많이 통합하기 위해 노력하고 있습니다.
챗봇을 평가하는 방법
AI 챗봇을 평가하는 것은 언어 이해, 추론, 그리고 상황 인식. AI 챗봇이 더욱 발전함에 따라 현재의 공개 벤치마크로는 더 이상 충분하지 않을 수 있습니다. 예를 들어, 스탠포드의 알파카(Self-Instruct)에 사용된 평가 데이터 세트는 SOTA 챗봇을 통해 효과적으로 답변할 수 있어 인간이 성능 차이를 식별하기 어렵게 만듭니다. 더 많은 제한 사항에는 훈련/테스트 데이터 오염과 새로운 벤치마크 생성에 따른 잠재적으로 높은 비용이 포함됩니다. 이러한 문제를 해결하기 위해 우리는 챗봇 성능 평가를 자동화하는 GPT-4 기반의 평가 프레임워크를 제안합니다.
제한 사항
우리는 다른 대규모 언어 모델과 마찬가지로 Vicuna에도 특정 제한 사항이 있음을 확인했습니다. 예를 들어 추론이나 수학적 작업을 잘 하지 못하며, 자신을 정확하게 식별하거나 출력의 사실적 정확성을 보장하는 데 한계가 있을 수 있습니다. 또한 안전성을 보장하거나 잠재적인 독성이나 편견을 완화할 만큼 충분히 최적화되지 않았습니다. 안전 문제를 해결하기 위해 OpenAI 중재 API를 사용하여 온라인 데모에서 부적절한 사용자 입력을 필터링합니다. 그럼에도 불구하고 우리는 Vicuna가 이러한 제한 사항을 해결하기 위한 향후 연구의 열린 출발점이 될 수 있을 것으로 기대합니다.
릴리스
첫 번째 릴리스에서는 GitHub 저장소에서 교육, 제공 및 평가 코드를 공유할 것입니다. https://github.com/lm-sys/FastChat. 우리는 또한 Vicuna-13B 모델 무게를 출시했습니다. 데이터세트를 공개할 계획은 없습니다. Discord 서버에 가입하고 Twitter를 팔로우하여 최신 업데이트를 받으세요.
Vicuna는 얼마나 좋은가요?
70,000개의 사용자 공유 ChatGPT 대화로 Vicuna를 미세 조정한 후 Vicuna가 Alpaca에 비해 더 자세하고 잘 구조화된 답변을 생성할 수 있다는 사실을 발견했습니다(아래 예 참조). ), ChatGPT와 동등한 품질을 제공합니다.
온라인 데모
여기
<에서 vicuna-13b="Vicuna-13B" 데모를="데모를" 사용해="사용해" 보세요.="보세요." a="a">!에서>
개요
대규모 언어 모델(LLM)의 급속한 발전은 챗봇 시스템에 혁명을 일으켰고, OpenAI의 ChatGPT에서 볼 수 있듯이 전례 없는 수준의 지능을 가져왔습니다. 그러나 인상적인 성능에도 불구하고 ChatGPT의 교육 및 아키텍처 세부 사항은 불분명하여 이 분야의 연구 및 오픈 소스 혁신을 방해합니다. Meta LLaMA 및 Stanford Alpaca 프로젝트에서 영감을 받아 향상된 데이터 세트와 사용하기 쉽고 확장 가능한 인프라가 지원되는 오픈 소스 챗봇인 Vicuna-13B를 소개합니다. ShareGPT.com에서 수집한 사용자 공유 대화에서 LLaMA 기본 모델을 미세 조정함으로써 Vicuna-13B는 Stanford Alpaca와 같은 다른 오픈 소스 모델에 비해 경쟁력 있는 성능을 보여주었습니다. 이 블로그 게시물은 Vicuna-13B의 성능에 대한 예비 평가를 제공하고 교육 및 서비스 인프라에 대해 설명합니다. 또한 커뮤니티가 온라인 데모를 통해 상호 작용하여 이 챗봇의 기능을 테스트하도록 초대합니다.
교육
Vicuna는 약 70,000명의 사용자를 사용하여 LLaMA 기본 모델을 미세 조정하여 생성됩니다. 공개 API를 사용하여 ShareGPT.com에서 수집한 공유 대화. 데이터 품질을 보장하기 위해 HTML을 다시 마크다운으로 변환하고 부적절하거나 품질이 낮은 샘플을 필터링합니다. 또한, 긴 대화를 모델의 최대 컨텍스트 길이에 맞는 작은 세그먼트로 나눕니다.
제공
우리는 분산된 작업자를 사용하여 여러 모델을 제공할 수 있는 제공 시스템을 구축합니다. 온프레미스 클러스터와 클라우드 모두에서 GPU 작업자의 유연한 플러그인을 지원합니다. SkyPilot의 내결함성 컨트롤러 및 관리형 스팟 기능을 활용함으로써 이 서비스 시스템은 여러 클라우드의 저렴한 스팟 인스턴스와 잘 작동하여 서비스 비용을 줄일 수 있습니다. 현재는 경량 구현이며 최신
연구를 여기에 통합하기 위해 노력하고 있습니다.
방법 챗봇을 평가하려면?
AI 챗봇을 평가하는 것은 언어 이해, 추론, 상황 인식을 검토해야 하기 때문에 어려운 작업입니다. AI 챗봇이 더욱 발전함에 따라 현재의 공개 벤치마크로는 더 이상 충분하지 않을 수 있습니다. 예를 들어 Stanford의 Alpaca에서 사용되는 평가 데이터 세트인
self-instruct는 다음과 같이 효과적으로 답변할 수 있습니다. SOTA 챗봇은 인간이 성능 차이를 식별하기 어렵게 만듭니다. 더 많은 제한 사항에는 훈련/테스트 데이터 오염과 새로운 벤치마크 생성에 따른 잠재적으로 높은 비용이 포함됩니다. 이러한 문제를 해결하기 위해 우리는 챗봇 성능 평가를 자동화하는 GPT-4 기반의 평가 프레임워크를 제안합니다.
제한 사항
우리는 다른 대규모 언어 모델과 유사하게 Vicuna가 특정 제한 사항. 예를 들어 추론이나 수학적 작업을 잘 하지 못하며, 자신을 정확하게 식별하거나 출력의 사실적 정확성을 보장하는 데 한계가 있을 수 있습니다. 또한 안전성을 보장하거나 잠재적인 독성이나 편견을 완화할 만큼 충분히 최적화되지 않았습니다. 안전 문제를 해결하기 위해 OpenAI
조정
API를 사용하여 온라인 데모에서 부적절한 사용자 입력을 필터링합니다. . 그럼에도 불구하고, 우리는 Vicuna가 이러한 한계를 해결하기 위한 향후 연구의 열린 출발점이 될 수 있을 것으로 기대합니다.