Agnaistic is a user interface you can install on your computer (or use the production website) that allows you to interact with text generation AIs and chat/roleplay with the characters you or the community create. Agnaistic is forked from the official Pygmalion website UI, Galatea UI.
If this guide doesn't answer your questions there's also the official one at https://agnai.guide/
You must install Docker onto your system to install Agnaistic via
docker compose
.
Clone the Agnaistic repository by copying the following line into a Terminal instance:
git clone -b dev https://github.com/luminai-companion/agn-ai && cd agn-ai
Once the repository has been cloned, copy the following line:
docker compose -p agnai -f self-host.docker-compose.yml up -d
You must install Node.js onto your system to install Agnaistic via
npm
.
Agnaistic is bundled as an NPM package and can be installed globally using the following commands
# Install or update:
> npm install agnai -g
> agnai
# View launch options:
> agnai help
The side bar is how you navigate agnaistic. You can see your chats and characters. Also there is a hidden page if you go to /chub.
In the characters tab you have your characters, you can favorite characters. You import characters with the button in the top right, you can select multiple characters and import as many as you want at once.
Each chat has a preset. Each preset has a service (OpenAI, NovelAI, Claude, etc). There is a special service called Self-host/3rd party for using stuff like aphrodite, kobold, or textgen webui. This service is also how you use proxies.
you have tabs at the top for different settings in a preset
For aphrodite just put the link into Third Party URL and the password and it will work. It will find the model automatically but if you want to specify it yourself put it into model override.
claude proxy example
By default a preset uses basic prompting, this is basic and will work for almost all local models.
If you want more control or if you're using a corporate model like gpt4/claude you can change it to advanced where you have a lot of options and placeholders
You can find some common advanced prompts like chatml with the "Use Library Template" button
There isn't one for llama-3 but this works
<|begin_of_text|><|start_header_id|>system<|end_header_id|>{{#if system}}<|begin_of_text|><|start_header_id|>system<|end_header_id|>{{system}}<|eot_id|>{{/if}}Write {{char}}'s next reply in a fictional roleplay chat between {{#each bot}}{{.name}}, {{/each}}{{char}} and {{user}}. Be markdown. Be proactive, creative, and drive the plot and conversation forward. Write at least 1 paragraph, up to 4. Always stay in character and avoid repetition.
{{char}}'s Persona: {{personality}}
{{#if memory}}
Important details:
{{memory}}
{{/if}}
{{#if example_dialogue}}
This is how {{char}} should talk:
{{example_dialogue}}
{{/if}}
{{#if scenario}}
This scenario of the conversation: {{scenario}}
{{/if}}
Then the roleplay chat between {{#each bot}}{{.name}}, {{/each}}{{char}} and {{user}} begins.<|eot_id|>
{{#each msg}}{{#if .isbot}}<|start_header_id|>response<|end_header_id|>{{/if}}{{#if .isuser}}<|start_header_id|>user<|end_header_id|>{{/if}}{{.name}}: {{.msg}}<|eot_id|>
{{/each}}
{{#if ujb}}<|begin_of_text|><|start_header_id|>system<|end_header_id|>{{ujb}}<|eot_id|>{{/if}}
<|start_header_id|>response<|end_header_id|>{{post}}