Getting Started: Create Your First Project
In this guide, we’ll walk you through building your first project with Unbody, step by step.
Prerequisites
- An Unbody account: Sign up at Unbody dashboard.
- A Data source: For this guide, we’ll use a Google Drive folder with a few files (e.g., Markdown, PDFs, images, or a short video under 1 minute). Unbody also supports many other prebuilt integrations (like Discord or GitHub and custom data ingestion.
- Freemium plan: Unbody’s free plan is great for testing but has limits on file count and size, so keep your test folder small. Learn more about pricing.
Once ready, let’s get started.
Overview
A project in Unbody is your workspace. It includes:
- A dedicated database to store and manage AI-ready data.
- Configurable AI tools like vectorizers, enhancers, and generative modules.
- One or more data sources, defining where your data comes from.
When you set up a project, you’re defining the tools and processes that transform raw data into actionable knowledge. Once the data is ingested, Unbody processes, vectorizes, and enriches it. Afterward, you can query and interact with the AI-ready data through the Content API.
Step 1: Create a Project and configure it
Create your project and configure the AI tools it will use. Configurations include:
- Vectorizers: Convert data into embeddings for tasks like semantic search.
- Enhancers: Enrich data by summarizing, tagging, or extracting metadata.
- Generative Modules: Enable AI-driven content creation.
For this guide, we use a vectorizer for processing text and two built in enhancers: AutoVision for enhancing images and AutoSummary for text documents.
First Log in to Unbody and then click on New Project
.
You’ll find these options in the Project Configuration -> ADVANCED
section during project setup.
-
Let’s choose
text-embedding-3-small
fromOpenAI
. -
Set up
Generative Search
->Command R+
fromGenerative Cohere
. -
Enable
AutoVision
->OpenAi GPT-4o
for enhancing Image. -
Select
AutoSummary
->OpenAI GPT-4o
for automatic text summarization.
Step 2: Add a Data Source
Data sources define where your project gets its data. Unbody supports both prebuilt integrations (e.g., Google Drive, Discord) and custom data providers.
At this point, Unbody will ingest, process, vectorize, and enrich the data automatically. This process will take a while, and you can monitor the progress in the logs section:
At this point you have nothing to do on dashboard and can move to next step which is about start building. The following will be provided in SDK (typeScript) and Graphql. Each project has a graphql playground where you can play around with the given queries.
Step 3: Interact with Your Data
Once your data is ready, use the Content API to perform tasks like semantic search or content generation.
Fetch google docs
const { data: {payload} } = await unbody.get
.googleDoc
.select("title", "autoSummary", "text", "toc")
.exec();
Now lets get all text documents that are markdown
const { data: {payload} } = await unbody.get
.textDocument
.where({ mimeType: "text/markdown" })
.select("title", "autoSummary", "text")
.exec();
Fetch all images
const { data: {payload} } = await unbody.get
.imageBlock
.select("url", "originalName")
.exec();
Semantic search on images
const { data: {payload} } = await unbody.get
.imageBlock
.search
.about("Flight tickets")
.select("url", "originalName")
.exec();
Simple rag on text files (generative)
const { data: {payload} } = await unbody.get
.textDocument
.generate
.fromMany("Create a summary:", ["text", "title"])
.select("title", "text", "autoSummary")
.exec();
Simple rag on images (generative)
const { data: {payload} } = await unbody.get
.imageBlock
.search
.about("Documents")
.generate
.fromMany("Create a summary and analysis of the images found:", [
"originalName",
"autoCaption",
"autoOCR"
])
.exec();
Next Steps
Congratulations! Your first project is now set up. You can:
- Experiment with semantic search or generative tasks.
- Add more data providers.
- Build AI-native features and applications with your processed data.