? AIVISSPEECH: Ai Voice I Matting System - Texto para o software de fala
Aivisspeech é o software de síntese de fala japonesa com base na interface do editor do VoiceVox.
Ele incorpora o mecanismo de síntese de fala japonês AIVISSPeech Engine, que permite gerar facilmente vozes emocionais.
Se você deseja usar o AIVISSPEECH, visite o site oficial do AIVISSPEECH.
Esta página contém informações principalmente para desenvolvedores.
Abaixo está um documento para os usuários:
Compatível com PCs com Windows e MacOS.
Para iniciar o AIVISSPEECH, seu PC precisa de pelo menos 3 GB de memória livre (RAM).
Observação
Não verificamos ativamente a operação em Macs com CPUs Intel.
Os Macs com CPUs Intel já estão fora de produção e está se tornando mais difícil preparar um ambiente de verificação e construção. Recomendamos o uso deste produto em um Mac com Apple Silicon o máximo possível.
Aviso
No Windows 10, verificamos apenas a operação da versão 22H2.
Houve relatos de casos em que o AIVISSPeech Engine falha e não começa em versões mais antigas do Windows 10 que não têm suporte.
Do ponto de vista da segurança, recomendamos fortemente que você use o Windows 10 Ambientes apenas atualize para a versão mínima 22H2 antes de usar o serviço.
O mecanismo AIVISSPEECH, incorporado ao AIVISSPEECH, suporta arquivos de modelo de síntese de fala no formato AIVMX ( Ai Vis Voice Model para Onn X ) ( .aivmx ).
AIVM ( Ai Vis Voice M odel) / AIVMX ( Ai Vis Voice Model para Onn X ) é um formato de arquivo aberto para modelos de síntese de fala de IA que combinam modelos pré-treinados, hiperparameters, vetores de estilo, metadados de alto-falantes (nomes, lojas, licencios, icons, amostras de voz etc.), em filmes .
Para obter mais informações sobre as especificações do AIVM e os arquivos AIVM/AIVMX, consulte as especificações do AIVM desenvolvidas no projeto AIVIS.
Observação
"AIVM" também é um termo geral para as especificações do formato AIVM/AIVMX e especificações de metadados.
Especificamente, o arquivo AIVM é um arquivo de modelo no "Formato SafeTetenss com metadados AIVM adicionado", e o arquivo AIVMX é um arquivo de modelo em "Formato OnNX com metadados AIVM adicionados".
"Metadados AIVM" refere -se a vários metadados que estão ligados a um modelo treinado, conforme definido na especificação do AIVM.
Importante
O mecanismo AIVISSPEECH também é uma implementação de referência da especificação AIVM, mas é deliberadamente projetada para suportar apenas arquivos AIVMX.
Isso elimina a dependência do Pytorch, reduz o tamanho da instalação e fornece uma inferência rápida da CPU com o tempo de execução do ONNX.
Dica
O gerador AIVM permite gerar arquivos AIVM/AIVMX dos modelos de síntese de fala existentes e editar os metadados dos arquivos AIVM/AIVMX existentes!
Os arquivos AIVMX para as seguintes arquiteturas de modelo estão disponíveis:
Style-Bert-VITS2Style-Bert-VITS2 (JP-Extra) Observação
A especificação de metadados do AIVM permite definir alto -falantes multilíngues, mas o motor AIVISSPEECH, como o motor VoiceVox, suporta apenas a síntese de fala japonesa.
Portanto, mesmo se você usar um modelo de síntese de fala que suporta inglês ou chinês, a síntese de fala diferente de japonês não pode ser realizada.
Coloque os arquivos AIVMX nas seguintes pastas para cada sistema operacional:
C:Users(ユーザー名)AppDataRoamingAivisSpeech-EngineModels~/Library/Application Support/AivisSpeech-Engine/Models~/.local/share/AivisSpeech-Engine/Models O caminho da pasta real será exibido como Models directory: nos logs imediatamente após o início do mecanismo AIVISSPEECH.
Dica
Ao usar o AIVISSPEECH, você pode adicionar facilmente modelos de síntese de fala da tela da interface do usuário do AIVISSPEECH!
Para usuários finais, recomendamos que você adicione um modelo de síntese de fala usando esse método.
Importante
A pasta de implantação para a versão de desenvolvimento (se você estiver executando o mecanismo AIVISSPEECH enquanto não estiver construído com o PyInstaller) não é AivisSpeech-Engine ou abaixo AivisSpeech-Engine-Dev .
O VoiceVox é um software enorme que ainda está ativamente desenvolvido hoje.
Portanto, o Aivisspeech está desenvolvendo a versão mais recente do VoiceVox sob a seguinte política:
As etapas diferem do VoiceVox original.
Node.js 20.12.2 deve ser instalado com antecedência.
# 依存関係をすべてインストール
npm ci
# .env.development を .env にコピー
# # コピーした .env を編集する必要はない
cp .env.development .env
# macOS のみ、.env.production を編集
nano .env.production
--------------------
# executionFilePath を "AivisSpeech-Engine/run.exe" から "../Resources/AivisSpeech-Engine/run" に書き換える
# # executionFilePath は、npm run electron:build でビルドした製品ビルドの AivisSpeech の起動時に使用される
...
VITE_DEFAULT_ENGINE_INFOS= ` [
{
" uuid " : " 1b4a5014-d9fd-11ee-b97d-83c170a68ed3 " ,
" name " : " AivisSpeech Engine " ,
" executionEnabled " : true,
" executionFilePath " : " ../Resources/AivisSpeech-Engine/run " ,
" executionArgs " : [],
" host " : " http://127.0.0.1:10101 "
}
] `
...
--------------------
# 事前に別のターミナルで AivisSpeech Engine を起動しておく
# # AivisSpeech Engine の開発環境は別途構築する必要がある
cd ../AivisSpeech-Engine
poetry run task serveAs etapas diferem do VoiceVox original.
# 開発環境で Electron 版 AivisSpeech を起動
npm run electron:serve
# 開発環境でブラウザ版 AivisSpeech を起動
npm run browser:serve
# Electron 版 AivisSpeech をビルド
npm run electron:build
# ブラウザ版 AivisSpeech (WIP) をビルド
npm run browser:build
# コードフォーマットを自動修正
npm run format
# コードフォーマットをチェック
npm run lint
# OpenAPI Generator による自動生成コードを更新
npm run openapi:generate
# 依存ライブラリのライセンス情報を生成
# # VOICEVOX と異なり、音声合成エンジンとのライセンス情報との統合は行わない
# # エディタ側で別途エンジンマニフェストから取得したライセンス情報を表示できるようにしているため不要
npm run license:generateDas licenças duplas do mecanismo básico VoiceVox/VoiceVox, apenas LGPL-3.0 será herdado de forma independente.
O seguinte e documentos/ os documentos a seguir carregam o documento VoiceVox original sem modificação. Não é garantido que o conteúdo desses documentos também se aplique ao AIVISSPEECH.
Este é o editor da VoiceVox.
(O motor é o motor VoiceVox, o núcleo é o núcleo do VoiceVox e a estrutura geral pode ser encontrada aqui.)
Esta é uma página de desenvolvimento. Para obter informações sobre como usá -lo, visite o site oficial do VoiceVox.
O projeto VoiceVox recebe os participantes interessados. Temos um guia explicando o procedimento de contribuição.
Quando você pensa em contribuições, pode pensar em criar um programa, mas existem várias maneiras de participar, como escrever um documento, gerar testes e participar de discussões em propostas de melhorias. Também oferecemos tarefas que bem -vindos iniciantes, por isso estamos ansiosos pela sua participação.
Os editores da VoiceVox usam elétrons, tipadas, vue, vuex e muito mais, dificultando a compreensão da estrutura geral.
Introduziremos a estrutura em como andar no código, por isso esperamos que isso o ajude a desenvolvê -lo.
Ao criar uma solicitação de tração para resolver um problema, informe o problema de que você começou a trabalhar nele ou crie uma solicitação de tração do rascunho primeiro para evitar trabalhar no mesmo problema que outra pessoa.
Discussões e bate -papos de desenvolvimento são mantidos no servidor Discord não oficial Voicevox. Por favor, sinta -se à vontade para se juntar a nós.
Consulte a política de design de UX/UI.
Instale a versão do Node.js listada em .Node-Version.
As ferramentas de gerenciamento Node.js (como NVs e Volta) facilitam a instalação e a troca automaticamente de node.js.
Depois de instalar o Node.js, bifurque este repositório e git clone .
Execute o seguinte comando para instalar e atualizar as bibliotecas dependentes:
npm ci Cópia .env.production para criar .env e especificar vv-engegine/run.exe na versão do produto do VoiceVox na executionFilePath em VITE_DEFAULT_ENGINE_INFOS para vv-engine/run.exe na versão do produto do VoiceVox para executar.
Se você não alterou o local da instalação no Windows, especifique C:/Users/(ユーザー名)/AppData/Local/Programs/VOICEVOX/vv-engine/run.exe .
Observe que o delimitador do caminho não é /
Se você estiver usando VOICEVOX.app para macOS, especifique /path/to/VOICEVOX.app/Resources/MacOS/vv-engine/run .
Para o Linux, especifique vv-engine/run incluído na versão Tar.gz disponível nas versões. Para a versão do Appimage, você pode montar o sistema de arquivos usando $ /path/to/VOICEVOX.AppImage --appimage-mount .
Se você estiver executando um servidor de API do mecanismo separadamente da execução do editor VoiceVox, não precisará especificar executionFilePath , mas, em vez disso, defina executionEnabled como false . Isso se aplica mesmo se você estiver executando a versão do produto do VoiceVox.
Se você deseja alterar o terminal de destino da API do mecanismo, altere host em VITE_DEFAULT_ENGINE_INFOS .
# 開発しやすい環境で実行
npm run electron:serve
# ビルド時に近い環境で実行
npm run electron:serve -- --mode productionO repositório do motor de síntese de voz está aqui: https://github.com/voicevox/voicevox_engine
Você pode desenvolver componentes usando livros de histórias.
npm run storybook Você pode visualizar o livro de histórias para a filial principal da VoiceVox/Visualize-Pages.
https://voicevox.github.io/preview-pages/preview/branch-main/storybook/index.html
Inicie o mecanismo de síntese de fala separado e execute o seguinte para acessar a localhost exibida:
npm run browser:serve Além disso, os resultados da compilação para a filial principal foram implantados em VoiceVox/Visualize-Pages.
https://voicevox.github.io/preview-pages/preview/branch-main/editor/index.html
Agora você precisa iniciar o mecanismo de síntese de fala no seu PC local.
npm run electron:build Você pode construir ativando ações no repositório que você bifurou e iniciando build.yml com o Workflow_dispatch. As entregas serão enviadas para ser lançada.
Execute os testes em ./tests/unit/ e nos testes do livro de histórias.
npm run test:unit
npm run test-watch:unit # 監視モード
npm run test-ui:unit # VitestのUIを表示
npm run test:unit -- --update # スナップショットの更新Observação
Os testes em ./tests/unit alteram o ambiente em que o teste é executado, dependendo do nome do arquivo.
.node.spec.ts : ambiente node.js.browser.spec.ts : Ambiente do navegador (Chromium).spec.ts : Ambiente do navegador (emulatório usando happy-dom)Execute testes de ponta a ponta, como interface do usuário e síntese de fala, que não requerem funcionalidade de elétrons.
Observação
Os testes que reescrevem as configurações de alguns motores agora são realizados apenas no CI (ações do GitHub).
npm run test:browser-e2e
npm run test-watch:browser-e2e # 監視モード
npm run test-watch:browser-e2e -- --headed # テスト中の UI を表示
npm run test-ui:browser-e2e # Playwright の UI を表示Você também pode gerar padrões de teste porque usa dramaturgo. Execute o seguinte comando enquanto a versão do navegador estiver em execução :
npx playwright codegen http://localhost:5173/ --viewport-size=1024,630Para mais informações, consulte o gerador de teste na documentação do dramaturgo.
Compare capturas de tela dos componentes do livro de histórias e mostre diferenças se alguma alteração for feita.
Observação
Este teste só pode ser executado no Windows.
npm run test:storybook-vrt
npm run test-watch:storybook-vrt # 監視モード
npm run test-ui:storybook-vrt # Playwright の UI を表示Os testes e livros de histórias de ponta a ponta do navegador fornecem testes de regressão visual. Atualmente, o teste VRT é realizado apenas no Windows. Você pode atualizar sua captura de tela seguindo as etapas abaixo:
Ativar ações do GitHub nas configurações do repositório bifurcado.
Em Ações> Geral> Permissões de fluxo de trabalho nas configurações do repositório, selecione Permissões de leitura e gravação.
Comprometa a string [update snapshots] na mensagem Commit.
git commit -m " UIを変更 [update snapshots] "Depois que o fluxo de trabalho do GitHub estiver concluído, a captura de tela atualizada será comprometida.
Depois de puxar, empurre uma confirmação vazia e execute o teste novamente.
git commit --allow-empty -m " (テストを再実行) "
git pushObservação
Você pode executar novamente o teste automaticamente criando um token e adicionando -o aos segredos.
ユーザー名/voicevox e, em permissões de repositório, selecione Leia e gravar com conteúdo.
ユーザー名/voicevox .PUSH_TOKEN no nome, cole a string acima e adicione segredos. Somente aqueles que suportam o sistema operacional do PC local serão atualizados.
npm run test:browser-e2e -- --update-snapshotsExecute os testes de ponta a ponta que requerem funcionalidade de elétrons, incluindo inicialização e terminação do motor.
npm run test:electron-e2e
npm run test-watch:electron-e2e # 監視モードAs informações de licenciamento para bibliotecas dependentes são geradas automaticamente ao criar com o fluxo de trabalho do GitHub. Você pode gerá -lo com o seguinte comando:
# get licenses.json from voicevox_engine as engine_licenses.json
npm run license:generate -- -o voicevox_licenses.json
npm run license:merge -- -o public/licenses.json -i engine_licenses.json -i voicevox_licenses.jsonFormate o código. Execute -o antes de enviar uma solicitação de tração.
npm run fmtAnálise estática do seu código para evitar bugs. Execute -o antes de enviar uma solicitação de tração.
npm run lintEu uso erros de digitação para verificar meus erros de digitação.
npm run typos Você pode verificar o tipo. Se houver arquivos que devem ser excluídos de falsos julgamentos ou cheques, siga as instruções no arquivo de configuração para editar _typos.toml .
Verificação do tipo de datilografia.
npm run typecheckExecuta uma verificação de gramática em Markdown.
npm run markdownlintFaça uma verificação de gramática do ShellScript. Para instruções de instalação, consulte aqui.
shellcheck ./build/ * .shExecute o seguinte comando enquanto o mecanismo de síntese de fala estiver em execução.
curl http://127.0.0.1:50021/openapi.json > openapi.json
npx openapi-generator-cli generate
-i openapi.json
-g typescript-fetch
-o src/openapi/
--additional-properties " modelPropertyNaming=camelCase,supportsES6=true,withInterfaces=true,typescriptThreePlus=true "
npm run fmtVocê pode verificar e instalar uma nova versão usando o seguinte comando:
npx openapi-generator-cli version-manager list Em desenvolvimento, as compilações como scripts NPM serve e electron:serve , o SourCemap é emitido no vite usado para a compilação; portanto, o código -fonte e o código de saída são mapeados.
Copiando .vscode/launch.template.json para criar .vscode/launch.json e .vscode/tasks.template.json .vscode/tasks.json ativar tarefas que permitem a depuração executando o desenvolvimento construídos do código VS.
É uma licença dupla com LGPL V3 e licenças separadas que não exigem a publicação do código -fonte. Se você deseja obter uma licença separada, pergunte a Heho.
X Conta: @Hiho_Karuta