바이촨 오디오: 실시간 음성 상호작용을 지원하는 엔드투엔드 오디오 모델

최신 AI 리소스5개월 전에 게시 됨 AI 공유 서클
2.6K 00

일반 소개

바이촨-오디오는 바이촨 인텔리전스(baichuan-inc)가 개발한 오픈 소스 프로젝트로, 엔드투엔드 음성 상호작용 기술에 중점을 두고 GitHub에서 호스팅됩니다. 이 프로젝트는 음성 입력을 개별 오디오 토큰으로 변환한 다음 대형 모델을 통해 해당 텍스트와 오디오 출력을 생성하여 고품질 실시간 대화를 구현할 수 있는 완벽한 오디오 처리 프레임워크를 제공합니다. 중국어 및 영어 이중 언어 지원, 지능형 비서, 음성 채팅 로봇 등과 같은 음성 이해 및 장면 생성의 필요성에 적용 할 수 있습니다. 또한 이 프로젝트는 개발자에게 강력한 연구 및 개발 지원을 제공하기 위해 기본 모델인 Baichuan-Audio-Base와 평가 벤치마크인 OpenAudio-Bench를 오픈소스화했습니다. 이 프로젝트는 특정 조건 하에서 학술 연구 및 상업적 애플리케이션에 적합한 Apache 2.0 라이선스를 따릅니다.

Baichuan-Audio:支持实时语音交互的端到端音频模型

 

기능 목록

  • 음성-음성 태깅입력된 음성은 정보 보존을 위해 12.5Hz 프레임 속도 설계를 지원하는 바이촨-오디오 토큰라이저를 통해 개별 오디오 토큰으로 변환됩니다.
  • 실시간 음성 상호작용오디오 LLM과 결합하여 영어와 중국어 이중 언어 대화를 지원하여 고품질의 음성 및 텍스트 응답을 생성합니다.
  • 오디오 생성흐름 매칭 오디오 디코더를 사용하여 오디오 마커에서 고음질 멜 스펙트로그램과 파형을 생성합니다.
  • 오픈 소스(컴퓨팅) 모델기본 모델인 바이촨-오디오-베이스는 인스트럭션 미세 조정 없이 제공되며, 개발자는 필요에 따라 교육을 사용자 지정할 수 있습니다.
  • 벤치마크2701개의 데이터 포인트가 포함된 오디오 이해력 및 생성 평가 도구인 OpenAudio-Bench가 포함되어 있습니다.
  • 멀티모달 지원원활한 모드 간 전환을 위해 혼합 텍스트 및 오디오 입력을 지원합니다.

 

도움말 사용

설치 프로세스

Baichuan-Audio를 로컬에서 사용하려면 개발 환경을 설정하고 관련 모델 파일을 다운로드해야 합니다. 자세한 설치 단계는 다음과 같습니다:

  1. 환경 준비
    • 시스템에 Python 3.12와 Conda가 설치되어 있는지 확인하세요.
    • 가상 환경을 만들고 활성화합니다:
      conda create -n baichuan_audio python=3.12
      conda activate baichuan_audio
      
    • 필요한 종속성 라이브러리를 설치합니다:
      pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cu124
      pip install -r requirements.txt
      pip install accelerate flash_attn==2.6.3 speechbrain==1.0.0 deepspeed==0.14.4
      
    • 시스템 도구 설치:
      apt install llvm ffmpeg
      
  2. 모델 다운로드
    • GitHub 리포지토리(https://github.com/baichuan-inc/Baichuan-Audio)에서 코드를 복제합니다:
      git clone https://github.com/baichuan-inc/Baichuan-Audio.git
      cd Baichuan-Audio
      
    • 수정 web_demo/constants.py 정곡을 찌르세요 MODEL_PATH로컬 모델의 경로입니다(예를 들어 모델 가중치를 가져오려면 수동으로 다운로드하거나 허깅 페이스를 사용해야 합니다). baichuan-inc/Baichuan-Audio).
  3. 데모 실행
    • 음성 인식 데모를 시작하세요:
      cd web_demo
      python base_asr_demo.py
      
    • 음성 합성 데모를 시작합니다:
      python base_tts_demo.py
      
    • 다자간 대화 데모를 시작하세요:
      python s2s_gradio_demo_cosy_multiturn.py
      

기능 작동 흐름

1. 음성-음성 토큰화(바이촨-오디오 토큰라이저)

  • 기능 설명수신 음성 파일 또는 라이브 마이크 입력을 후속 처리를 위해 개별 오디오 토큰으로 변환합니다.
  • 절차::
    1. 오디오 파일(WAV 형식 지원)을 준비하거나 마이크 장치를 연결합니다.
    2. 실행 중 base_asr_demo.py 그 후 인터페이스에서 오디오를 업로드하거나 마이크를 켜라는 메시지가 표시됩니다.
    3. 시스템이 자동으로 Whisper 대형 인코더는 8개의 레이어 RVQ(잔여 벡터 양자화)를 통해 특징을 추출하고 오디오 토큰을 생성합니다.
    4. 출력은 콘솔에서 일련의 개별 마커 형식으로 볼 수 있습니다.
  • 주의인식 정확도를 높이려면 오디오가 선명하고 배경 소음이 적은지 확인하세요.

2. 실시간 음성 상호작용(오디오 LLM)

  • 기능 설명음성 또는 텍스트 입력을 통해 영어와 중국어로 모델과 실시간으로 대화할 수 있도록 지원합니다.
  • 절차::
    1. 움직여야 합니다. s2s_gradio_demo_cosy_multiturn.py이렇게 하려면 Gradio 인터페이스를 엽니다.
    2. "녹음" 버튼을 클릭하여 음성 입력을 시작합니다(예: "오늘 날씨를 중국어로 알려주세요").
    3. 시스템이 음성을 태그로 변환하고 오디오 LLM이 텍스트 및 음성 응답을 생성합니다.
    4. 응답은 동시에 텍스트로 표시되고 스피커를 통해 재생됩니다.
  • 주요 사용법::
    • 혼합 모달 콘텐츠 입력(예: "안녕하세요"라는 텍스트를 입력한 다음 음성으로 "영어로 계속하세요"라고 말하는 것).
    • 이 시스템은 특수 마커를 통해 모달 전환을 지원하여 대화의 일관성을 유지합니다.

3. 오디오 생성(플로우 매칭 오디오 디코더)

  • 기능 설명텍스트 또는 오디오 입력을 기반으로 고품질 음성 출력을 생성합니다.
  • 절차::
    1. 움직여야 합니다. base_tts_demo.py를 클릭하고 텍스트 음성 변환 인터페이스로 들어갑니다.
    2. 텍스트 상자에 무언가를 입력합니다(예: "안녕하세요, 금요일입니다").
    3. '생성' 버튼을 클릭하면 시스템이 텍스트를 오디오 토큰으로 변환한 다음 스트림 매칭 디코더를 통해 멜 스펙트로그램을 생성합니다.
    4. 내장된 보코더를 사용하여 스펙트로그램을 WAV 파일로 변환하여 자동 재생 또는 다운로드할 수 있습니다.
  • 고급 기능음성 속도 및 음높이 조정 지원, 특정 매개 변수는 코드에서 수정할 수 있습니다.

4. 벤치마크 사용(OpenAudio-Bench)

  • 기능 설명모델의 오디오 이해도 및 생성 능력을 평가합니다.
  • 절차::
    1. OpenAudio-Bench 데이터 세트(GitHub 리포지토리에 있음)를 다운로드하세요.
    2. 평가 스크립트를 로컬에서 실행합니다(직접 작성하거나 리포지토리 문서를 참조해야 합니다).
    3. 테스트 오디오 또는 텍스트를 입력하여 5개의 하위 평가 세트에서 모델의 성능 점수를 얻습니다.
  • 애플리케이션 시나리오개발자는 이를 사용하여 다양한 모델의 성능을 비교하고 교육 전략을 최적화할 수 있습니다.

주의

  • 하드웨어 요구 사항CPU가 느리게 실행될 수 있으므로 CUDA 지원 GPU(예: NVIDIA 카드)를 사용하는 것이 좋습니다.
  • 네트워크 종속성첫 번째 실행을 위한 모델 가중치를 다운로드하려면 인터넷 접속이 필요하며, 이후 오프라인 사용이 가능합니다.
  • 상업적 사용Apache 2.0 프로토콜을 준수하고 일일 활성 사용자 수(DAU)가 1백만 명 미만인지 확인해야 합니다.
© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...