Users

Hyperspell is a multi-tenant platform, and you can have multiple users in your app. You don’t have to explicitly create users in Hyperspell — you simply pass the user id from your own database or authentication provider to Hyperspell. As we’ll learn in the authentication section, Hyperspell lets you generate user tokens that are specific to a user and can be used to query data from Hyperspell for that user only. However, you can also use an app token and not associate data with a specific user.

Memories, Integrations and Data Sources

Memories are the core concept of Hyperspell. They are a way to store data in Hyperspell, and query it using natural language. Hyperspell lets your users connect their accounts to a variety of services and data sources. Hyperspell transforms that data into memories, and keeps them up to date by automatically updating memories when the data changes.

What is a Memory?

We use the term memory to refer to a wide range of different data — a memory can be an entire Google Doc or a PDF, but it could also be a particular part of a long conversation on Slack, a Person on your team that exists across multiple services, or a specific email.

When your create an app, you can choose which integrations you want to enable. Every time you query hyperspell, you can mix and match different data sources.

Some data sources are available by default without requiring any additional configuration:

  • Vault iconVault searches memories and files that have been manually added to Hyperspell.
  • Crawler iconWeb Crawler retrieves relevant data from websites.

Queries

To search through memories and retrieve data from your data sources, you can use the query API. Internally, there are two different ways of retrieving data, and .

Indexed searches

Indexed searches means that Hyperspell is continuously ingesting data from your data sources, processing it and creating a search index through different vector embeddings. When you run a query against these data sources, Hyperspell will only look in its own search index for the most relevant results.

Live searches

Live searches means that Hyperspell will directly query the data sources for the most relevant results. Since most data sources only support keyword searches and exact matches, Hyperspell will generate a number of different keyword queries and run them in parallel, and then combine and rerank the results.

Some integrations are only available for live searches, and some are only available for indexed searches. When available, Hyperspell will always pick indexed searches for better latency and accuracy. However, there are times when live searches are the preferred option, and you can choose which option you want to use in each query.

Memories, Documents and Structured Data

When we say memories, we really mean any data that you want to index and query. This can be anything from a single text file, an email, a slack channel, a CSV file, an image, or even a PDF or presentation. When you query Hyperspell, you can retrieve data both in structured formats for use in ie. your UI, and in an LLM-ready text representation.