Epsilla
HomeDiscordTwitterGithubEmail
  • Welcome
    • Register and Login
    • Explore App Portal
  • Build Your First AI Agent
    • Create a Knowledge Base
    • Set Up Your AI Agent
    • Publish Your AI Agent
  • Knowledge Base
    • Local Files
    • Website
    • Google Drive
    • S3
    • Notion
    • Share Point
    • Google Cloud Storage
    • Azure Blob Storage
    • Confluence
    • Jira
    • Advanced Settings
      • Auto Sync
      • Embedding
      • Data Parsing
      • Data Chunking
      • Hypothetical Questions
      • Webhook
      • Meta Data
    • Data Storage
    • Programmatically Manage Knowledge Bases
  • Application
    • Create New AI Agent
    • Basic Chat Agent Config
    • Basic Smart Search Agent Config
    • Advanced Workflow Customization
    • Publish and Deployment
    • User Engagement Analytics
  • Evaluation
    • Create New Evaluation
    • Run Evaluation
    • Evaluation Run History
  • Integration
  • Team Member Management
  • Project Management
  • Billing Management
  • Release Notes
  • Epsilla Vector Database
    • Overview
    • Quick Start
      • Run with Docker
      • Epsilla Cloud
    • User Manual
      • Connect to a database
      • Create a new table
      • Drop a table
      • Delete a database
      • Insert records
      • Upsert records
      • Search the top K semantically similar records
      • Retrieve records (with filters and pagination)
      • Delete records
      • Performance Tuning
    • Advanced Topics
      • Embeddings
      • Dense vector vs. sparse vector
      • Hybrid Search
    • Integrations
      • OpenAI
      • Mistral AI
      • Jina AI
      • Voyage AI
      • Mixedbread AI
      • Nomic AI
    • Roadmap
Powered by GitBook
On this page
  • 1. Sign up Epsilla Cloud
  • 2. Get your project API Key
  • 3. Create a vector database, then create a table
  • 4. Use GUI to CRUD data to the table.
  • 5. Connect to Epsilla
  • 6. Insert new records
  • 6. Search
  • 7. Delete a table and delete a database
  1. Epsilla Vector Database
  2. Quick Start

Epsilla Cloud

Get your cloud hosted Epsilla vector database up and running within 1 minute.

PreviousRun with DockerNextUser Manual

Last updated 4 months ago

1. Sign up Epsilla Cloud

Create an Epsilla Cloud account at , then sign in.

2. Get your project API Key

Navigate to the 'Configurations' tab within the project, create a new API Key, and keep it at a secure place.

3. Create a vector database, then create a table

Navigate to the 'Resource' tab, and click 'Create Vector Database'.

Give the database a name, and click 'Create'. It takes a few seconds to spin up a vector database.

Within the newly created database, create a new table. Give the table a name. Adjust the table schema according to your business logic, then click 'Create'.

4. Use GUI to CRUD data to the table.

Epsilla automatically generates sample queries for the table. Start with inserting some sample data:

Then query the table with top K semantic similarity search.

Switch between Shell, Python, and JavaScript tags, and click the 'Copy' button to copy the curl command, Python code snippet, and JavaScript code snippet of the query.

Copying the code snippet is the easiest way to integrate with your application as it already has the project_id and db_id prefilled.

Remember to replace "YOUR-API-KEY" part with the API Key you get earlier.

5. Connect to Epsilla

First, install Epsilla Python/JavaScript client.

pip3 install --upgrade pyepsilla
npm install epsillajs

Then connect to the created database.

from pyepsilla import cloud
client = cloud.Client(
  project_id="PROJECT-ID",     # Copied from the GUI code snippet
  api_key="YOUR-API-KEY"       # Replace with your API Key
)
db = client.vectordb(db_id="DB-ID") # Copied from the GUI code snippet
const epsillajs = require('epsillajs');
const client = new epsillajs.EpsillaCloud({
  projectID: 'PROJECT-ID',  // Copied from the GUI code snippet
  apiKey: 'YOUR-API-KEY'    // Replace with your API Key
});
const db = new epsillajs.VectorDB(
  'DB-ID',                  // Copied from the GUI code snippet
   client
 ); 
await db.connect();

6. Insert new records

You can insert multiple records in a batch.

status_code, response = db.insert(table_name="MyTable", 
  records=[
    {"ID": 1, "Doc": "Berlin", "Embedding": [0.05, 0.61, 0.76, 0.74]},
    {"ID": 2, "Doc": "London", "Embedding": [0.19, 0.81, 0.75, 0.11]},
    {"ID": 3, "Doc": "Moscow", "Embedding": [0.36, 0.55, 0.47, 0.94]},
    {"ID": 4, "Doc": "San Francisco", "Embedding": [0.18, 0.01, 0.85, 0.80]},
    {"ID": 5, "Doc": "Shanghai", "Embedding": [0.24, 0.18, 0.22, 0.44]}
  ]
)
await db.insert('MyTable',
  [
    {"ID": 1, "Doc": "Berlin", "Embedding": [0.05, 0.61, 0.76, 0.74]},
    {"ID": 2, "Doc": "London", "Embedding": [0.19, 0.81, 0.75, 0.11]},
    {"ID": 3, "Doc": "Moscow", "Embedding": [0.36, 0.55, 0.47, 0.94]},
    {"ID": 4, "Doc": "San Francisco", "Embedding": [0.18, 0.01, 0.85, 0.80]},
    {"ID": 5, "Doc": "Shanghai", "Embedding": [0.24, 0.18, 0.22, 0.44]}
  ]
);
curl -X POST 'https://api-us-east-1-1-aws.epsilla.com/api/v2/project/<PROJECT-ID>/vectordb/<DB-ID>/data/insert' \
    -H "X-API-Key: Your-API-Key-Here" \
    -H "Content-Type: application/json" \
    -d '{
        "table": "MyTable",
        "data": [
            {
              "ID": 1,
              "Doc": "Berlin",
              "Embedding": [0.05, 0.61, 0.76, 0.74]
            },
            {
              "ID": 2,
              "Doc": "London",
              "Embedding": [0.19, 0.81, 0.75, 0.11]
            },
            {
              "ID": 3,
              "Doc": "Moscow",
              "Embedding": [0.36, 0.55, 0.47, 0.94]
            },
            {
              "ID": 4,
              "Doc": "San Francisco",
              "Embedding": [0.18, 0.01, 0.85, 0.80]
            },
            {
              "ID": 5,
              "Doc": "Shanghai",
              "Embedding": [0.24, 0.18, 0.22, 0.44]
            }
         ]
     }'

6. Search

status_code, response = db.query(
  table_name="MyTable",
  query_field="Embedding",
  query_vector=[0.35, 0.55, 0.47, 0.94],
  limit=2
)
// search
const query = await db.query(
  'MyTable',
  {
    queryField: "Embedding",                 // query field
    queryVector: [0.35, 0.55, 0.47, 0.94],   // query vector
    limit: 2                                 // top K
  }
);
curl -X POST 'https://api-us-east-1-1-aws.epsilla.com/api/v2/project/<PROJECT-ID>/vectordb/<DB-ID>/data/query' \
    -H "X-API-Key: Your-API-Key-Here" \
    -H "Content-Type: application/json" \
    -d '{
        "table": "MyTable",
        "queryField": "Embedding",
        "queryVector": [0.35, 0.55, 0.47, 0.94],
        "limit": 2
     }'        

7. Delete a table and delete a database

Use the GUI to delete a table and delete a database.

https://cloud.epsilla.com/