|
|
%!s(int64=2) %!d(string=hai) anos | |
|---|---|---|
| .. | ||
| README.md | %!s(int64=2) %!d(string=hai) anos | |
| local-setup.md | %!s(int64=2) %!d(string=hai) anos | |
Read the Local Setup guide if you are interested in getting everything running locally quickly.
You can download any VRM file and set it as your avatar in the settings. If you would like this file to persist, you must place the file inside the public/vrms folder. You can then set the avatar in the settings.
Here are some websites where you can download new avatars:
You can use VRoid Studio to design your own avatar. You can also use VRM to convert your 3D model to VRM format.
Inside the VoiceLab click the "Potion" icon to copy the Voice ID. You can then paste this ID into the settings.
SpeechT5 in browser uses xvector embeddings. You can select a url from this dataset here or generate your own xvector embeddings from audio.
Coqui has a public API which allows you to create and clone voices. You can find more information here.
OpenAI has a simple TTS service with a simple api. It is pretty opaque. You could choose this to implement a simple API yourself though, like what basic-openai-api-wrapper does (which uses Coqui local TTS).
This is the default. It runs using transformers.js and works OK, but its a lot slower than running locally.
This can use OpenAI whisper http endpoint or basic-openai-api-wrapper.
LM Studio can be used to run an OpenAI compatible API. Just install, then click the "Local Server" icon. Ensure CORS is enabled. I recommend installing TheBloke/dolphin-2.1-mistral-7B-GGUF.
It is possible to run a local server using llama.cpp. This is a bit more involved, but it is possible to run a server with a custom model. This is the recommended way to run a local server.
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make server
./server -t 4 -c 4096 -m models/mistral-7b-instruct-v0.1.Q6_K.gguf
You can customize the system prompt to give a specific personality to your avatar. The full information on prompting is out of scope of this document, but the following guide should help you.
Look at the existing features and how they are implemented. Try to ensure that your code can be enabled and disabled without impacting anything else, and that it can be easily removed if it is not needed. Ideally all features are able to be done with minimal changes to existing code so that we can keep Amica an easy to extend system. Of course, certain features may require more invasive changes to the codebase. If you are unsure, do not worry about submitting PR.