Personalities
At the heart of the OpenHome ecosystem are Personalities—customizable AI voice characters or agents designed for specific tasks and applications. Each Personality is characterized by several key attributes, including:
-
Description and Purpose: Defines the Personality’s role and how it behaves within the chosen LLM.
-
Voice: You can tailor the voice to best represent the Personality, aligning with your preferences or project needs.
-
Dynamic Feedback: Personalities evolve based on user interactions, learning from conversations to provide more personalized responses over time. OpenHome’s DynamicPersonalityConstructor enables Personalities to evolve with every conversation. They adapt to your conversation history, preferences, and personal style, creating an ever-improving interaction experience. This ensures that the conversation isn’t just accurate but also deeply personalized, making every interaction feel more intuitive.
How Personalities Work
The core architecture revolves around three key modules: STT Transcription (Speech-to-Text), TTT Processing (Text-to-Text), and Voice TTS (Text-to-Speech). These modules work together to create rich, adaptive experiences powered by customizable “Personalities”.
Workflow
- Speech Input: The system listens for voice commands, initiated by a cold start message.
- STT Transcription: The Speech-to-Text (STT) module converts speech into text.
- LLM Processing: The transcribed text is processed by the designated LLM (the “brains” of the assistant, the large language model), which generates a relevant response based on the user’s input and conversation history. OpenHome supports over 20 different LLMs.
- TTS Synthesis: Once a response is generated, it’s converted back into speech using customizable voices, creating a natural, interactive experience. This module brings the conversation to life with fluent, human-like speech.
How to Create & Manage Personalities
The Personalities dashboard allows you to view, manage, and create custom AI Personalities. You can also customize the interaction experience by adding new voices.
Creating New Personality
To get started, visit the Personalities dashboard, and select the button at the top right of the page and input the following information:
Personality Information
-
Name: Enter the name of your Personality (We suggest something unique and identifiable). This is the name that will be used to identify your Personality in the dashboard and marketplace. Note that your Personality will be aware of this name as an identifier.
-
Marketplace Information: Write a concise, engaging summary to highlight your personality in the marketplace. This will not impact personality behavior and is intended for informational purposes only.
-
Image: Upload an image to represent this Personality. This image will be used in the marketplace to represent your Personality.
-
Key Features: List the unique abilities or functions the Personality is equipped with. These features provide insight into what the Personality can do, such as specific commands or tasks it is optimized for.
Note: These tags are for labeling use. It does not inject any additional context into your Personality.
Personality Behavior
-
Starting Message: Personalities can optionally be configured with an opening message or greeting. This first message will be spoken by your Personality when you first start a new conversation. Certain use cases require a first message, while others do not.
-
Personality Templates: Choose template to use a pre-define purpose and description prompts for your personality. Available templates include:
-
Description Prompt: The description serves as the first System Prompt for your Personality. It is the first prompt in the message list fed to the LLM, and it sets the foundation for how the Personality behaves. Use the description to define the context, role, personality traits, and specific instructions, shaping the way the Personality responds and interacts.
-
Purpose Prompt: Specify the Personality’s intended role or function, further refining your description. By adding additional context, you help the LLM understand the job or role associated with the Personality, ensuring it behaves in a more accurate and relevant way based on its function. When creating a prompt, the AI-generated button helps refine your prompt by suggesting improvements for clarity and detail. It guides you in crafting precise, focused prompts to enhance the AI’s response.
-
Disable prompt modification: Enabling this option will prevent OpenHome Builders from making any modifications to your prompt.
Pick a Voice
-
Language: Select the language the Personality will use for communication. This setting determines the language in which the Personality will respond. You can interact with your Personality in any of the supported languages, and it will respond in the language selected.
-
Voice Identity: Select a voice from the list to determine how the Personality will sound. Use a pre-installed voice or add your own Voice ID.
Note: Optionally, test the voice before finalizing it.
-
Gender: Choose the gender identity for the Personality. This helps customize how the AI agent interacts, particularly if the voice or tone needs to reflect specific characteristics.
Once the required fields are filled:
- Select the button to finalize and create the new Personality.
- If you change your mind, select the button to discard the process.
Managing Personalities
The Personality page allows you to view, manage, and organize all the Personalities you have created or installed from the Marketplace. Each Personality is displayed as a card, showing key details such as its description, last updated timestamp, and options for further customization or interaction.
- Search: Use the search bar at the top to quickly find a specific Personality by name.
- Status Filter: The dropdown menu in the top right allows you to filter Personalities by status, including Published, Unpublished, Default, and Installed.
- Start Conversation: Open a conversation with the selected personality.
- Share: Share this Personality with someone, allowing them to interact with it.
- Edit:Click the Edit button to modify your personality.
- Delete: Delete any created or installed personalities.
- Ratings & Review: Review and rate the personality on the marketplace.
Adding a New Voice
To add your own custom voice, visit the Personalities dashboard, and select the button at the top right of the page and input the following information:
- Name: Enter the name of the new voice you want to create. This helps identify the voice within your list of options.
- Description: Provide a brief description of the voice, including details like its tone, accent, or intended use. This helps others understand what the voice is designed for when interacting with it.
- Voice ID: Input the Voice ID provided by your chosen TTS (Text-to-Speech) provider. This ID links the voice you’ve uploaded to the provider.
- Select to finalize and add the new voice.
- If you change your mind, select to discard your voice.
Uploading Your Voice
- Generating a Voice ID: Before adding a new voice in OpenHome, you’ll need to upload your custom voice to your preferred TTS provider (e.g., Eleven Labs). Once uploaded, you’ll receive a Voice ID from the provider, which you can enter in the Voice ID field here.
- Updating API Key: Ensure your API key for the TTS provider is up to date. This key is necessary for OpenHome to communicate with the TTS service and use your custom voice for Personalities. You can update or manage your API key in the API Keys settings section.