▲GN⁺ 12달전 | parent | ★ favorite | on: RealtimeVoiceChat - 약 500ms 지연 시간의 실시간 AI 음성 채팅(github.com/KoljaB)Hacker News 의견 RealtimeVoiceChat을 개발한 이유는 대부분의 음성 AI 상호작용에서 지연 시간이 불만족스러웠기 때문임. 이 시스템은 실시간, 로컬 음성 대화를 위해 설계된 오픈 소스 시스템임 자연스러운 대화 속도에 가까워지는 것이 목표임 WebSockets를 통한 오디오 청크 스트리밍, Whisper 기반의 RealtimeSTT, Coqui XTTSv2/Kokoro 같은 엔진을 지원하는 RealtimeTTS를 사용하여 약 500ms의 응답 지연 시간을 달성함 Ollama를 통해 24B Mistral과 같은 더 큰 로컬 모델을 실행할 때도 가능함 주요 특징: 로컬 LLMs를 위해 설계됨 (주로 Ollama, OpenAI 커넥터 포함), 대화 중단 가능, 사용자의 생각을 끊지 않기 위한 스마트 턴 감지, 의존성 관리를 쉽게 하기 위한 Dockerized 설정 제공 STT/TTS 모델로 인해 성능을 위해 CUDA 지원 GPU가 필요함 접근 방식, 성능, 잠재적 최적화 또는 좋은 로컬 음성 AI 경험을 위한 필수 기능에 대한 피드백을 듣고 싶음 코드: https://github.com/KoljaB/RealtimeVoiceChat 이러한 도구의 사용자로서, 빠르긴 하지만 자연스럽게 말할 때의 멈춤을 허용하지 않음 대화 중 우리는 생각하거나 다른 이유로 긴 멈춤과 짧은 멈춤을 가짐 이러한 도구에서는 우리가 멈추면 AI가 바로 말을 시작함 몇 주 전 트위터에서 AI가 사람이 실제로 말을 끝낼 때까지 기다리는 데모를 봄. 멈춤 길이는 문제가 되지 않음 이 문제가 얼마나 복잡한지는 모르겠음. 아마도 또 다른 AI가 입력을 분석하여 멈춤인지 아닌지를 결정해야 할 것임 매우 멋짐! 중단 기능이 "와우" 순간이었음 (새로운 것은 아니지만 오픈 소스에서 이렇게 잘 구현된 것을 보는 것은 놀라움) 중단 기능에 대한 질문: "Mmk", "Yes", "Of course", "기침" 등은 어떻게 처리하는지 궁금함 OpenAI의 음성 채팅에서의 아첨 외에도, 소음이 AI의 응답을 멈추게 하고 다시 시작할 좋은 방법이 없다는 점이 싫음 빠르게 응답을 멈추고 좋은 이유로 멈추는 것이 어려운 문제임 약 1년 전 이 주제에 대해 연구를 했음. 몇 가지 재미있는 사실을 배움 인간 간의 대화에서 화자 간의 중간 지연 시간은 0밀리초임. 즉, 약 절반의 시간 동안 한 화자가 다른 화자를 중단하여 지연이 음수가 됨 인간은 알려진 AI와 대화할 때 지연에 신경 쓰지 않음. AI가 생각할 시간이 필요하다고 가정함. 대부분의 사용자는 1000ms 지연을 허용 가능하다고 보고 500ms 지연을 예외적으로 여김 모든 음성 비서는 약 300ms의 최소 지연 시간을 가짐. 이는 모두 침묵 감지를 사용하여 응답을 시작할 때를 결정하기 때문이며, 약 300ms의 침묵이 화자의 일반적인 멈춤과 확실히 구별되기 위해 필요함 Alexa는 느린 화자를 위해 이 대기 시간을 늘리는 설정을 가지고 있음 이 데모 비디오에서 AI가 그를 중단하지 않는 것을 볼 수 있음. 이는 인간과의 상호작용처럼 느껴지지 않게 만듦 (음성의 어색한 억양도 포함) 인간은 문장을 실시간으로 처리하며, 문장의 의미를 이해할 만큼 충분히 들었다고 확신할 때 응답함 훌륭함. 소스를 살펴보니, 저자가 Silero VAD 대신 맞춤형 턴 감지 전략을 구현한 것이 흥미로움. 왜 이렇게 했는지, 어떤 이점을 관찰했는지 궁금함 음성 에이전트 공간의 상태에 대해 궁금한 사람들을 위해 Daily(웹RTC 회사)가 훌륭한 가이드와 많은 유틸리티가 포함된 오픈 소스 프레임워크를 제공함 참고: 나는 Cartesia에서 일하며, 많은 음성 에이전트 사용 사례를 서비스하고 있음. Daily는 친구임 LLMs가 더 짧은 응답을 위해 조정되어야 한다고 느끼기 시작함. 짧은 문장을 입력하면 긴 문단의 텍스트를 출력함 때로는 좋은 텍스트이지만, 모든 입력 문장이 미니 에세이 응답을 필요로 하지는 않음 매우 멋진 프로젝트임. AI의 대화 성향을 변경하기 위해 프롬프트를 미세 조정할 수 있을 것임 아무도 언급하지 않은 것이 놀라움. 인간처럼 상호작용하며, 충분한 컨텍스트가 있을 때 많은 상황에서 나를 중단함. 매우 낮은 지연 시간을 가짐 처음 사용했을 때 꽤 충격적인 경험이었음 꽤 좋음. SOTA 음성으로 들리면 훨씬 더 좋을 것임 인상적임! 현재 사용 가능한 오픈 소스 중 최고의 음성 합성 품질이라고 생각함 최종 목표는 텍스트 토큰이 전혀 없는, 계속 실행되는 파형 대 파형 모델일 것임 비슷한 것을 작업 중이었는데 이것을 발견함. 훌륭한 작업임. 데모를 좋아함
Hacker News 의견
RealtimeVoiceChat을 개발한 이유는 대부분의 음성 AI 상호작용에서 지연 시간이 불만족스러웠기 때문임. 이 시스템은 실시간, 로컬 음성 대화를 위해 설계된 오픈 소스 시스템임
이러한 도구의 사용자로서, 빠르긴 하지만 자연스럽게 말할 때의 멈춤을 허용하지 않음
매우 멋짐! 중단 기능이 "와우" 순간이었음 (새로운 것은 아니지만 오픈 소스에서 이렇게 잘 구현된 것을 보는 것은 놀라움)
약 1년 전 이 주제에 대해 연구를 했음. 몇 가지 재미있는 사실을 배움
훌륭함. 소스를 살펴보니, 저자가 Silero VAD 대신 맞춤형 턴 감지 전략을 구현한 것이 흥미로움. 왜 이렇게 했는지, 어떤 이점을 관찰했는지 궁금함
LLMs가 더 짧은 응답을 위해 조정되어야 한다고 느끼기 시작함. 짧은 문장을 입력하면 긴 문단의 텍스트를 출력함
아무도 언급하지 않은 것이 놀라움. 인간처럼 상호작용하며, 충분한 컨텍스트가 있을 때 많은 상황에서 나를 중단함. 매우 낮은 지연 시간을 가짐
꽤 좋음. SOTA 음성으로 들리면 훨씬 더 좋을 것임
인상적임! 현재 사용 가능한 오픈 소스 중 최고의 음성 합성 품질이라고 생각함
비슷한 것을 작업 중이었는데 이것을 발견함. 훌륭한 작업임. 데모를 좋아함