인공지능 기반 음성 채팅
Eng | 繁中 | 日本語 | 한국어 | 简中 |
AI Powered Voice Chat
Key features
- OpenAI, 로컬 또는 원격 텍스트 생성 웹UI를 AI 서비스로 사용하는 옵션
- AI 생성된 메시지를 음성으로 변환하는 내장 TTS 엔진
- 말하는 동안 캐릭터의 얼굴을 자동으로 애니메이션하는 내장 립싱크
- 음성 인식을 통해 음성을 텍스트로 변환하고 AI로 전송
- 선택할 수 있는 900개 이상의 영어 음성이 포함되어 있으며, 각 캐릭터마다 고유한 음성을 가질 수 있음
제한 사항
- 음성 엔진은 Windows 전용입니다. 다른 플랫폼에서는 음성 인식을 사용하여 대화할 수 있지만 응답은 텍스트만 됨.
AI 서비스
캐릭터에 지능을 부여하기 위해 사용할 수 있는 다양한 AI 서비스 옵션이 있습니다. 각 옵션의 장단점을 아래에서 설명하겠습니다.
OpenAI (ChatGPT)
현재 가장 지능적인 옵션입니다.
장점:
- 스마트
- 빠름
- 다른 원격 옵션과 비교하여 비용 효율적
단점:
- 검열됨
설정: DanceXR에서 OpenAI 서비스를 사용하려면 OpenAI API 키가 필요합니다.
- OpenAI 계정에 등록하고 로그인합니다.
- 페이지 오른쪽 상단의 프로필 아이콘을 클릭합니다.
- API 페이지를 열려면 “API 키 보기”를 선택합니다.
- “새 비밀 키 생성”을 클릭하고 나타나면 키를 복사합니다. 키는 여기서 한 번만 표시되므로 나중에 전체 키를 검색할 수 없으므로 분실하지 마십시오.
- DanceXR을 열고 채팅 메뉴에서 Config 아이콘을 클릭합니다.
- AI 서비스로 이동하여 “OpenAI API 키” 상자에 키를 붙여넣습니다.
- 그런 다음 “AI 서비스” 드롭다운에서 “OpenAI (ChatGPT)”를 선택하면 됩니다.
- 채팅 설정에서 사용할 모델을 선택할 수 있습니다.
로컬에서 LLM 실행 (LM Studio, OobaBooga 등)
컴퓨터가 충분히 강력하다면 LLM을 로컬에서 실행할 수도 있습니다. 예를 들어 최신 Llama3 8b는 롤플레이에 충분합니다. OobaBooga와 LM Studio를 테스트했으며 DanceXR과 잘 작동합니다.
AI 공간이 매우 빠르게 발전하고 있으며 새로운 도구와 모델이 계속 출시됩니다. 여기서의 권장 사항은 작성 시 알고 있는 내용을 기반으로 하며, 독자가 읽을 때는 최신 정보가 아닐 수 있습니다. 자신만의 옵션을 탐색해보세요. OpenAI API 사양을 지원하는 모든 LLM 도구도 DanceXR에서 작동해야 합니다.
장점:
- 개인 정보 보호, 아무 것도 전송되지 않고 모든 것이 로컬에서 처리됨.
- 검열되지 않은 모델을 포함하여 모든 모델을 선택할 수 있음.
- 무료
단점:
- 온라인 모델보다 똑똑하지 않음
- 약간의 설정이 필요함
- DanceXR과 LLM을 동일한 기기에서 실행할 계획이라면 LLM을 로컬에서 실행하는 것은 자원을 많이 소비할 수 있음.
설정: 현재 LM Studio는 명령 줄 도구와 손댈 필요가 없다면 더 나은 선택입니다. LM Studio의 경우, 다음 지침을 따를 수 있습니다:
- 웹 사이트 https://lmstudio.ai/에서 LM Studio를 다운로드하고 설치합니다.
- LM Studio 내에서 LLM 모델을 선택하고 다운로드합니다. 현재는 Llama3 8b를 사용하는 것을 권장합니다.
- 채팅 탭으로 전환하고 다운로드한 모델을 로드합니다.
- “Local Server” 탭으로 이동하고 “Start Server”를 클릭합니다. 포트 번호를 기억하세요 (기본값은 1234입니다).
OobaBooga의 경우, 다음 지침을 따를 수 있습니다:
- 다음 지침을 따라 다운로드하고 설치하십시오. https://github.com/oobabooga/text-generation-webui
- DanceXR에서 WebUI가 작동하도록하려면 API를 켜야합니다. 이를 위해 CMD_FLAGS.txt 파일을 열고 “–listen –api”를 추가한 다음 다시 시작하십시오.
- 실행 중이면 모델 탭으로 이동하고 이미 모델이 없는 경우 모델을 다운로드하십시오.
- 다음 2개 모델 중 하나를 사용하는 것을 권장합니다: https://huggingface.co/TheBloke/Luna-AI-Llama2-Uncensored-GPTQ (7b, 실행이 쉬움) https://huggingface.co/TheBloke/Nous-Hermes-Llama2-GPTQ (13b, 더 똑똑함)
- 모델 목록을 새로 고치고 로드하십시오. 기본 포트 번호는 5000입니다.
DanceXR의 설정:
- DanceXR에서 AI 서비스 -> 서비스 선택에서 “Local WebUI”를 선택하십시오.
- 서버 URL 및 포트 번호를 입력하십시오. 예를 들어 “http://127.0.0.1:1234”(LM Studio) 또는 “http://127.0.0.1:5000”(OobaBooga)입니다.
Runpod과 같은 원격 서비스 사용하여 WebUI 실행
GPU를 렌트하고 AI 모델을 실행할 수 있는 서비스가 있습니다. Runpod가 그 중 하나입니다. 그들은 WebUI용 템플릿을 가지고 있으며 로컬에서 실행하는 것보다 설정하기 쉽습니다.
장점:
- 빠르고 쉬움
- 실행할 수 없는 모델도 선택할 수 있음
단점:
- OpenAI보다 약간 더 비싸다
- 모델을 실행할 때마다 다운로드해야 합니다. 그러나 몇 분 정도 소요됩니다.
설정:
- “Community Cloud”에서 GPU를 선택하고 “Deploy”를 클릭하십시오. 3080ti는 13b 모델을 실행하는 데 충분합니다. 시간당 26센트가 듭니다.
- 템플릿 드롭다운에서 “RunPod TheBloke LLMs”를 선택하십시오.
- 실행 중이면 연결을 클릭하고 WebUI 및 API에 대한 링크를 제공합니다. API의 URL을 복사하여 DanceXR의 “Remote WebUI URL” 상자에 붙여넣으십시오.
- WebUI 링크를 클릭하고 모델 탭으로 이동하여 모델을 다운로드하십시오.
- 다음 2개 모델 중 하나를 사용하는 것을 권장합니다: https://huggingface.co/TheBloke/Luna-AI-Llama2-Uncensored-GPTQ (7b, 실행이 쉬움) https://huggingface.co/TheBloke/Nous-Hermes-Llama2-GPTQ (13b, 더 똑똑함)
- 모델 목록을 새로 고치고 로드하십시오.
채팅 제어
템플릿
템플릿은 각 캐릭터에 대한 채팅 메시지를 생성하는 AI 모델을 구동하는 것입니다. 복잡하다고 생각할 수 있지만 실제로 매우 간단합니다. 기본 템플릿을 열어서 어떻게 작동하는지 확인하려면 채팅/templates 폴더를 열 수 있습니다.
기본 템플릿을 수정하고 다른 이름으로 저장하여 채팅 내용에 어떤 영향을 미치는지 확인할 수 있습니다. 예를 들어 환경에 대한 설명을 추가하여 채팅 시나리오를 설정할 수 있습니다.
DanceXR에서 채팅 설정 -> 템플릿으로 이동하여 생성한 템플릿을 선택할 수 있습니다.
캐릭터
캐릭터는 배우 모델의 이름에서 파생됩니다. 예를 들어 “Koharu Bouquet Cattleya Hair B Side Ponytail”에서 “Koharu”는 캐릭터 이름으로 해석되고 나머지 “Bouquet Cattleya Hair B Side Ponytail”은 그녀의 의상에 대한 설명으로 사용됩니다.
캐릭터 설정에서 캐릭터에 대한 설명과 성격을 입력할 수 있으며, 이는 채팅에서 어떻게 행동하는지에 큰 영향을 미칩니다. 예를 들어 자랑스럽고 거만한 캐릭터를 “순종적이고 기꺼이 도와주는” 캐릭터로 바꿀 수 있습니다.
“Player”도 기술적으로 캐릭터이며, 자신을 위해 이름, 설명 및 성격을 변경할 수 있으며 원하는 대로 할 수 있습니다.
페르소나
캐릭터 설정에는 페르소나 드롭다운이 있습니다. 이를 사용하면 TavernAI와 같은 AI 롤플레이 프로그램에서 다운로드한 캐릭터를 사용할 수 있습니다. 이들은 일반적으로 PNG 형식으로 제공됩니다. PNG 이미지의 메타데이터에는 캐릭터에 대한 설명이 포함되어 있습니다.
이 온라인 캐릭터 편집기를 사용하여 PNG 캐릭터를 json 형식으로 변환하십시오. https://zoltanai.github.io/character-editor/
그런 다음 json을 “chat/personas” 폴더에 넣으면 캐릭터 설정의 페르소나 드롭다운에 나타납니다. 이렇게 하면 페르소나의 설명이 캐릭터 설명을 덮어씁니다.
채팅 기록
채팅 기록은 새로운 콘텐츠를 생성할 때마다 AI에 전송되어 컨텍스트를 유지합니다. 다른 시나리오나 주제로 전환하려면 먼저 기록을 지워서 이전 채팅 컨텍스트에 영향을 받지 않도록 해야 합니다. 또한 이를 사용하여 환경을 조작하고 채팅을 이끌 수 있습니다. 메시지에서 일어난 일을 설명하면 AI가 해당 컨텍스트에서 계속됩니다.
프롬프트 제한에 도달하면 가장 오래된 메시지가 무시되고 컨텍스트에 포함되지 않습니다. 따라서 AI는 기록에서 너무 오래된 것을 잊을 수 있습니다.
채팅 인터페이스에서 채팅 메시지 옆의 아이콘을 클릭하여 채팅 기록을 조작할 수 있습니다. 옵션에는 다음이 포함됩니다:
- 재생성: 아래의 모든 메시지를 삭제하고 AI가이 메시지를 다시 생성하도록 함
- 다시 작성: 메시지를 가져와 직접 다시 작성합니다. 이렇게하면 메시지 앞에 이름과 콜론을 유지해야하며 그렇지 않으면 시스템이 이 메시지가 누구의 것인지 알 수 없습니다.
- 재생: 이 메시지부터 채팅 기록을 다시 재생합니다
- 항목 삭제: 이 메시지를 삭제합니다
- 위 삭제: 이 메시지 위의 모든 메시지를 삭제합니다
- 아래 삭제: 이 메시지 아래의 모든 메시지를 삭제합니다
온도
이 값은 AI 모델이 채팅 메시지를 생성할 때 얼마나 자유롭게 할 수 있는지를 제어합니다. 이미지 생성과 마찬가지로 동일한 입력으로도 각 생성마다 약간 다를 수 있으며 온도는 그 변동폭을 제어합니다.
존재 벌칙 및 빈도 벌칙
이 값을 높이면 AI가 반복되는 콘텐츠를 생성할 확률이 줄어듭니다.
최대 생성 토큰 및 최대 프롬프트 길이
LLM에는 토큰 제한이 있으며 이 제한을 초과하는 콘텐츠는 올바르게 생성되지 않습니다.
자동 생성 및 플레이어용 생성
“다음 자동 생성”을 켜면 타이머가 종료되면 AI가 자동으로 다음 메시지를 생성할 수 있습니다.
“플레이어용 생성”을 켜면 AI가 플레이어를 위해 메시지를 생성할 수 있습니다.
텍스트 음성 변환
추가 음성
DanceXR은 Piper라는 TTS 엔진을 사용합니다. 여기에서 DanceXR에서 사용할 수 있는 추가 음성 모델을 듣고 다운로드할 수 있습니다.
https://rhasspy.github.io/piper-samples/
다운로드한 후, 이를 chat\voices\piper 폴더에 넣으십시오. onnx 및 onnx.json 파일이 모두 필요합니다.
음성 관리자
내장 음성 모델에는 900개 이상의 다른 음성이 포함되어 있습니다. 기본적으로 처음 20개만 활성화되어 있습니다. 사용자가 선택할 수 있는 음성이 너무 많기 때문에 다른 음성을 활성화하려면 채팅 설정에서 Voice -> Voice Manager로 이동하여 목록에서 음성 중 하나를 선택하고 듣고 “선택됨”을 선택하여 음성 목록에 추가할 수 있습니다.
시스템, 플레이어 및 각 캐릭터에 대해 다른 음성을 선택할 수 있습니다.
언어 일치 및 대체
AI 모델은 다른 언어 메시지를 생성할 수 있지만 음성 모델은 그렇지 않습니다. DanceXR은 메시지의 언어가 무