Relevance AI - The ML Platform for Unstructured Data Analysis
🌎 80% of data in the world is unstructured in the form of text, image, audio, videos, and more.
🔥 Use Relevance to unlock the value of your unstructured data:
- ⚡ Quickly analyze unstructured data with pre-trained machine learning models in a few lines of code.
- ✨ Visualize your unstructured data. Text highlights from Named entity recognition, Word cloud from keywords, Bounding box from images.
- 📊 Create charts for both structured and unstructured.
- 🔎 Drilldown with filters and similarity search to explore and find insights.
- 🚀 Share data apps with your team.
Relevance AI also acts as a platform for:
- 🔑 Vectors, storing and querying vectors with flexible vector similarity search, that can be combined with multiple vectors, aggregates and filters.
- 🔮 ML Dataset Evaluation, for debugging dataset labels, model outputs and surfacing edge cases.
🧠 Documentation
| Type | Link |
|---|---|
| Python API | Documentation |
| Python Reference | Documentation |
| Cloud Dashboard | Documentation |
🛠️ Installation
Using pip:
pip install -U relevanceai
Using conda:
conda install -c relevance relevanceai
⏩ Quickstart
Login to relevanceai:
from relevanceai import Client
client = Client()
Prepare your documents for insertion by following the below format:
- Each document should be a dictionary
- Include a field
_idas a primary key, otherwise it's automatically generated - Suffix vector fields with
_vector_
docs = [
{"_id": "1", "example_vector_": [0.1, 0.1, 0.1], "data": "Documentation"},
{"_id": "2", "example_vector_": [0.2, 0.2, 0.2], "data": "Best document!"},
{"_id": "3", "example_vector_": [0.3, 0.3, 0.3], "data": "document example"},
{"_id": "4", "example_vector_": [0.4, 0.4, 0.4], "data": "this is another doc"},
{"_id": "5", "example_vector_": [0.5, 0.5, 0.5], "data": "this is a doc"},
]
Insert data into a dataset
Create a dataset object with the name of the dataset you'd like to use. If it doesn't exist, it'll be created for you.
ds = client.Dataset("quickstart")
ds.insert_documents(docs)
Quick tip! Our Dataset object is compatible with common dataframes methods like
.head(),.shape()and.info().
Perform vector search
query = [
{"vector": [0.2, 0.2, 0.2], "field": "example_vector_"}
]
results = ds.search(
vector_search_query=query,
page_size=3,
)
Learn more about how to flexibly configure your vector search ->
Perform clustering
Generate clusters
clusterop = ds.cluster(vector_fields=["example_vector_"])
clusterop.list_closest()
Generate clusters with sklearn
from sklearn.cluster import AgglomerativeClustering
cluster_model = AgglomerativeClustering()
clusterop = ds.cluster(vector_fields=["example_vector_"], model=cluster_model, alias="agglomerative")
clusterop.list_closest()
Learn more about how to flexibly configure your clustering ->
🧰 Config
The config object contains the adjustable global settings for the SDK. For a description of all the settings, see here.
To view setting options, run the following:
client.config.options
The syntax for selecting an option is section.key. For example, to disable logging, run the following to modify logging.enable_logging:
client.config.set_option('logging.enable_logging', False)
To restore all options to their default, run the following:
Changing the base URL
You can change the base URL as such:
client.base_url = "https://.../latest"
🚧 Development
Getting Started
To get started with development, ensure you have pytest and mypy installed. These will help ensure typechecking and testing.
python -m pip install pytest mypy
Then run testing using:
Don't forget to set your test credentials!
export TEST_PROJECT = xxx
export TEST_API_KEY = xxx
python -m pytest
mypy relevanceai
Set up precommit
pip install precommit
pre-commit install
Metadata
Release files for RelevanceAI-dev 3.0.4.2022.9.1.6.10.2.401207
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| RelevanceAI-dev-3.0.4.2022.9.1.6.10.2.401207.tar.gz | 298.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| RelevanceAI_dev-3.0.4.2022.9.1.6.10.2.401207-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 721.5 kB
Release files / RelevanceAI-dev-3.0.4.2022.9.1.6.10.2.401207.tar.gz
| Download URL | RelevanceAI-dev-3.0.4.2022.9.1.6.10.2.401207.tar.gz |
|---|---|
| Size | 298.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0b72abe048a53ba9f1374bf1875ec2198d4aceabe5701f8b1915842efc094c45
|
|
BLAKE2b-256 checksum How to use checksums |
2314263121f3ac235e238550e47a4e2720102b7b38d9ac50b6fe860de5df1f16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|
Release files / RelevanceAI_dev-3.0.4.2022.9.1.6.10.2.401207-py3-none-any.whl
| Download URL | RelevanceAI_dev-3.0.4.2022.9.1.6.10.2.401207-py3-none-any.whl |
|---|---|
| Size | 423.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5bc9919489572a0867091e2d6dab1cea9cbd4e6023326b80c83f5e0e66091ddc
|
|
BLAKE2b-256 checksum How to use checksums |
5ed9a6f513a6e6c5759d8e0ae3bf41e0ae07def09e0d615e3de3d632bbeb12a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|