As a former voice engineer, I know that providing voice agents with accurate memory in ultra-low latency is the foundation of an intelligent voice product. Today, we're excited to announce a range of updates that helps deliver on our promise of being the best memory solution available for voice AI.
We've introduced Organisations and Team features to foster collaboration in your projects.
Starting today, your organisation owns the account as opposed to any individual user. This means all content uploaded to duohub is owned by an organisation, as well as any graphs created. When you sign up, you'll be asked to create an organisation, and if you've already signed up, the next time you log in you'll be asked to create an organisation and all of your data will be migrated over automatically.
We've also introduced Teams, so that you can invite others users to the organisation with different levels of access:
Administrators can manage billing, users and perform destructive operations like closing the organisation.
Developers can do everything except those actions. For example, developers can upload content, create graphs and manage API keys, but can't invite new users, manage billing or close the organisation.
We've employed a new method of entity resolution which can handle large graphs much faster. You can read more about our approach, which uses FAISS and Sentence Transformers, in our blog post.
The end result is that you receive high-quality graphs much faster, no matter the size of your graph.
We've heard feedback that, to make retrieving memory payloads more useful, additional options were needed. We listened.
All memory payloads now return in a JSON format, regardless of whether you're using graph, vector, or assisted queries.
The example below shows a sample payload shape for a graph assisted query.
{
"payload": [
{
"content": "The capital of France is Paris.",
"score": 1
}
],
"facts": [],
"sources": []
}
For vector memory users, you now have several new features. Firstly, you can specify top_k
to control the number of results that are returned. Secondly, when results are returned, you'll get a score in the content result as well as a new sources object.
The sources object includes the id
, name
, url
and score
. If you are using vector memory for text-based conversations, you'll get a sources object so that you can cite the sources, even if you are using assisted mode.
Lastly, the score allows you to perform reranking yourself if you'd like to do so.
{
"payload": [
{
"content": "The capital of France is Paris.",
"score": 1
}
],
"facts": [
{
"content": "Paris is the capital of France"
},
{
"content": "Paris has been France's capital since 987 CE"
},
{
"content": "Paris is located in northern France"
}
],
"sources": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Wikipedia",
"url": "https://en.wikipedia.org/wiki/Paris",
"score": 1
}
]
}
Until recently, you could use the API to perform some ingestion operations. Now, you can use the API to perform all ingestion operations. This includes uploading files, creating memory, and starting ingestion.
If you're uploading files, it's much more convenient to use the Python client because we employ a three step process. Using the API, you must create a pre-signed URL using the
files/upload
endpoint, then upload the file to the endpoint, then create a record of the file usingfiles/create
. Using the Python client, you can just select the file you want to upload and this is performed for you automatically.
You can review the following examples which show you how to do full ingestion through the API.
I think we've saved the best for last - no more monthly minimums and no more upgrades to get the best features! As soon as you sign up, you get all features and only need to pay for what you use. Using more? Pay less per unit. Learn more about this on our pricing page and use the calculator to get an estimate of how much you'll pay.
We think this pay-as-you-go, graduated pricing will make it easier for you to build voice products with advanced memory no matter where you are in your product development journey.
Additionally, if you need specialised add-ons such as HIPAA-compliance or greater levels of support, you can add whatever you need to your account so you are always equipped to succeed.
We've got many new updates coming to help you and your team build exceptional voice products. Got something you want to see added? We'd love to hear from you. Send us a message or use the chat button in app.