diff --git a/_includes/wcs/wcs-landing-get-started.mdx b/_includes/wcs/wcs-landing-get-started.mdx
index baae663fc..de60ef0e5 100644
--- a/_includes/wcs/wcs-landing-get-started.mdx
+++ b/_includes/wcs/wcs-landing-get-started.mdx
@@ -5,8 +5,9 @@ import CardsSection from "/src/components/CardsSection";
export const nextStepsData = [
{
title: "Weaviate Cloud: Console",
- description: " Go directly to the Weaviate Cloud console and create your first cluster.",
- link: "https://weaviate.io/go/console?utm_source=docs&utm_content=others",
+ description:
+ " Go directly to the Weaviate Cloud console and create your first cluster.",
+ link: "/go/console?utm_content=others",
icon: "fa fa-desktop",
},
{
diff --git a/_includes/wcs/wcs-landing-intro.mdx b/_includes/wcs/wcs-landing-intro.mdx
index 6781c7c86..c0ba0b106 100644
--- a/_includes/wcs/wcs-landing-intro.mdx
+++ b/_includes/wcs/wcs-landing-intro.mdx
@@ -1,3 +1,3 @@
-**[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=others)** is a fully managed vector database in the cloud.
+**[Weaviate Cloud (WCD)](/go/console?utm_content=others)** is a fully managed vector database in the cloud.
Weaviate Cloud manages the infrastructure so you can focus on innovation. Use Weaviate Cloud to simplify development and confidently deploy enterprise-ready AI applications.
diff --git a/_includes/wcs/weaviate-cloud-edit-organization.mdx b/_includes/wcs/weaviate-cloud-edit-organization.mdx
index 59a20b57f..302f7a5a3 100644
--- a/_includes/wcs/weaviate-cloud-edit-organization.mdx
+++ b/_includes/wcs/weaviate-cloud-edit-organization.mdx
@@ -1,12 +1,12 @@
-import Link from '@docusaurus/Link';
-import OrganizationSettings from '/docs/cloud/img/weaviate-cloud-organization-settings.png';
+import Link from "@docusaurus/Link";
+import OrganizationSettings from "/docs/cloud/img/weaviate-cloud-organization-settings.png";
- Open the{' '}
- Weaviate Cloud console.
+ Open the{" "}
+ Weaviate Cloud console.
Open the organization dropdown menu (1).
diff --git a/docs/agents/personalization/tutorial-recipe-recommender.mdx b/docs/agents/personalization/tutorial-recipe-recommender.mdx
index 230dad5c6..a2e60d051 100644
--- a/docs/agents/personalization/tutorial-recipe-recommender.mdx
+++ b/docs/agents/personalization/tutorial-recipe-recommender.mdx
@@ -1,23 +1,23 @@
---
title: Build a recipe recommender with the Personalization Agent
-sidebar_label: 'Tutorial: Recipe recommender'
+sidebar_label: "Tutorial: Recipe recommender"
description: "Tutorial for creating a recipe recommendation system using the Personalization Agent."
sidebar_position: 40
image: og/docs/tutorials.jpg
# tags: ['personalization', 'recommendation']
---
-import Tabs from '@theme/Tabs';
-import TabItem from '@theme/TabItem';
-import FilteredTextBlock from '@site/src/components/Documentation/FilteredTextBlock';
-import PyCode from '!!raw-loader!/docs/agents/_includes/personalization_agent_tutorial_food_recommender.py';
+import Tabs from "@theme/Tabs";
+import TabItem from "@theme/TabItem";
+import FilteredTextBlock from "@site/src/components/Documentation/FilteredTextBlock";
+import PyCode from "!!raw-loader!/docs/agents/_includes/personalization_agent_tutorial_food_recommender.py";
:::caution Technical Preview
-
-
+
+
[Sign up here](https://events.weaviate.io/weaviate-agents) for notifications on Weaviate Agents, or visit [this page](https://weaviateagents.featurebase.app/) to see the latest updates and provide feedback.
@@ -38,7 +38,7 @@ It is available on HuggingFace:
The Weaviate Personalization Agent is a pre-built agentic service designed to retrieve objects from a Weaviate collection in a way that is tailored to individual users. It achieves this by considering a user's defined persona (profile) and their history of interactions with items in the collection.
-import WeaviateAgentsPersonalizationFoodFlowchart from '/docs/agents/_includes/personalization_agent_tutorial_food_recommender_flowchart.png';
+import WeaviateAgentsPersonalizationFoodFlowchart from "/docs/agents/_includes/personalization_agent_tutorial_food_recommender_flowchart.png";
@@ -64,7 +64,7 @@ The Personalization Agent:
## Prerequisites
-To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents)** account.
+To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](/go/console?utm_content=agents)** account.
## Step 1: Set up Weaviate
@@ -106,7 +106,7 @@ pip install datasets
-import ForcePipInstall from '../_includes/_force_pip_install.mdx';
+import ForcePipInstall from "../_includes/_force_pip_install.mdx";
@@ -135,7 +135,7 @@ In the following code blocks, we will pull our demo recipe dataset from Hugging
Below you can see what the objects in the `Recipes` dataset look like.
-import WeaviateAgentsPersonalizationFoodDataset from '/docs/agents/_includes/personalization_agent_tutorial_food_recommender_dataset.png';
+import WeaviateAgentsPersonalizationFoodDataset from "/docs/agents/_includes/personalization_agent_tutorial_food_recommender_dataset.png";
@@ -242,7 +242,7 @@ Feel free to modify the example below to represent your own food preferences\!
Each `PersonaInteraction` links a `persona_id` to an `item_id` (the UUID of an object in the "Recipes" collection) and includes a `weight` from -1.0 (strong dislike) to 1.0 (strong like).
-import WeaviateAgentsPersonalizationFoodUser from '/docs/agents/_includes/personalization_agent_tutorial_food_recommender_user.png';
+import WeaviateAgentsPersonalizationFoodUser from "/docs/agents/_includes/personalization_agent_tutorial_food_recommender_user.png";
@@ -368,6 +368,6 @@ The Personalization Agent allows you to easily add sophisticated, personalized r
The official changelog for Weaviate Agents can be [found here](https://weaviateagents.featurebase.app/changelog). If you have feedback, such as feature requests, bug reports or questions, please [submit them here](https://weaviateagents.featurebase.app/), where you will be able to see the status of your feedback and vote on others' feedback.
:::
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from "/_includes/docs-feedback.mdx";
diff --git a/docs/agents/personalization/usage.md b/docs/agents/personalization/usage.md
index 6f258457d..d6032fc26 100644
--- a/docs/agents/personalization/usage.md
+++ b/docs/agents/personalization/usage.md
@@ -9,7 +9,7 @@ image: og/docs/agents.jpg
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import FilteredTextBlock from '@site/src/components/Documentation/FilteredTextBlock';
-import PyCode from '!!raw-loader!/docs/agents/_includes/personalization_agent.py';
+import PyCode from '!!raw-loader!/docs/agents/\_includes/personalization_agent.py';
# Weaviate Personalization Agent: Usage
@@ -24,7 +24,6 @@ import PyCode from '!!raw-loader!/docs/agents/_includes/personalization_agent.py
:::
-
The Weaviate Personalization Agent is an agentic service designed to return personalized recommendations tailored to each user. The Personalization Agent uses data from the associated Weaviate Cloud instance to provide these recommendations.
:::tip Nomenclature: User vs Developer
@@ -50,7 +49,7 @@ This Agent is available exclusively for use with a Weaviate Cloud instance.
Refer to the [Weaviate Cloud documentation](/cloud/index.mdx) for more information on how to set up a Weaviate Cloud instance.
-You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents).
+You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](/go/console?utm_content=agents).
### Client library
@@ -97,6 +96,7 @@ To use the Personalization Agent, follow the below high-level steps:
- Obtain personalized recommendations
Optionally, the personalization agent can:
+
- Perform reranking of the results
- With a further option of custom instructions for the reranking
@@ -166,14 +166,14 @@ You can delete or update an existing user persona, as well as to check if a user
To delete a user persona, specify the user ID of the persona to be deleted.
-
-
+
-
+
#### Update a user persona
@@ -308,8 +308,8 @@ In addition to the response objects, the response may include the following info
- Rationale for the recommendations
- For each object:
- - Original rank of the item
- - Personalized rank of the item
+ - Original rank of the item
+ - Personalized rank of the item
@@ -395,7 +395,6 @@ The combined Weaviate query and personalization agent query is not available for
The official changelog for Weaviate Agents can be [found here](https://weaviateagents.featurebase.app/changelog). If you have feedback, such as feature requests, bug reports or questions, please [submit them here](https://weaviateagents.featurebase.app/), where you will be able to see the status of your feedback and vote on others' feedback.
:::
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
-
diff --git a/docs/agents/query/tutorial-ecommerce.mdx b/docs/agents/query/tutorial-ecommerce.mdx
index 8bef40a7f..bc48ffbad 100644
--- a/docs/agents/query/tutorial-ecommerce.mdx
+++ b/docs/agents/query/tutorial-ecommerce.mdx
@@ -51,7 +51,7 @@ The Query Agent:
## Prerequisites
-To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents)** account.
+To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](/go/console?utm_content=agents)** account.
## Step 1: Set up Weaviate
diff --git a/docs/agents/query/usage.md b/docs/agents/query/usage.md
index 4f1f8096f..80bf14a56 100644
--- a/docs/agents/query/usage.md
+++ b/docs/agents/query/usage.md
@@ -31,7 +31,7 @@ This page describes how to use the Query Agent to answer natural language querie
This Agent is available exclusively for use with a Weaviate Cloud instance. Refer to the [Weaviate Cloud documentation](/cloud/index.mdx) for more information on how to set up a Weaviate Cloud instance.
-You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents).
+You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](/go/console?utm_content=agents).
### Client library
diff --git a/docs/agents/transformation/tutorial-enrich-dataset.mdx b/docs/agents/transformation/tutorial-enrich-dataset.mdx
index 594ed49dc..3104bf208 100644
--- a/docs/agents/transformation/tutorial-enrich-dataset.mdx
+++ b/docs/agents/transformation/tutorial-enrich-dataset.mdx
@@ -62,7 +62,7 @@ The Transformation Agent:
## Prerequisites
-To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents)** account.
+To use the Weaviate Agents and Weaviate Embedding service, you need to have a **[Weaviate Cloud](/go/console?utm_content=agents)** account.
## Step 1: Set up Weaviate
@@ -337,8 +337,8 @@ import WeaviateAgentsExplorerTool from "/docs/agents/_includes/transformation_ag
Now, you can open the{" "}
- Explorer tool{" "}
- to check the results of the transformation.
+ Explorer tool to
+ check the results of the transformation.
diff --git a/docs/agents/transformation/usage.md b/docs/agents/transformation/usage.md
index 73106435d..e20065544 100644
--- a/docs/agents/transformation/usage.md
+++ b/docs/agents/transformation/usage.md
@@ -9,8 +9,7 @@ image: og/docs/agents.jpg
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import FilteredTextBlock from '@site/src/components/Documentation/FilteredTextBlock';
-import PyCode from '!!raw-loader!/docs/agents/_includes/transformation_agent.py';
-
+import PyCode from '!!raw-loader!/docs/agents/\_includes/transformation_agent.py';
# Weaviate Transformation Agent: Usage
@@ -50,7 +49,7 @@ This Agent is available exclusively for use with a Weaviate Cloud instance.
Refer to the [Weaviate Cloud documentation](/cloud/index.mdx) for more information on how to set up a Weaviate Cloud instance.
-You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=agents).
+You can try this Weaviate Agent with a free Sandbox instance on [Weaviate Cloud](/go/console?utm_content=agents).
### Client library
@@ -233,6 +232,6 @@ This will be addressed in future versions of the Transformation Agent.
The official changelog for Weaviate Agents can be [found here](https://weaviateagents.featurebase.app/changelog). If you have feedback, such as feature requests, bug reports or questions, please [submit them here](https://weaviateagents.featurebase.app/), where you will be able to see the status of your feedback and vote on others' feedback.
:::
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/cloud/embeddings/administration.md b/docs/cloud/embeddings/administration.md
index 4d684f404..1cecf936d 100644
--- a/docs/cloud/embeddings/administration.md
+++ b/docs/cloud/embeddings/administration.md
@@ -7,7 +7,6 @@ image: og/wcd/user_guides.jpg
import Link from '@docusaurus/Link';
-
:::info
Weaviate Embeddings is enabled by default at the organization level and is available to all Weaviate Cloud users.
:::
@@ -22,7 +21,7 @@ import DisableWeaviateEmbeddings from '/docs/cloud/img/weaviate-cloud-disable-em
- Open the Weaviate Cloud console.
+ Open the Weaviate Cloud console.
Click on Weaviate Embeddings in the left sidebar (1).
@@ -47,6 +46,7 @@ import DisableWeaviateEmbeddings from '/docs/cloud/img/weaviate-cloud-disable-em
## Pricing and billing
+
If you would like to learn about the pricing model, you can visit the Weaviate Embeddings [product page](https://weaviate.io/product/embeddings).
The pricing works on a per-token basis. This means that you will only be billed for the tokens that are successfully consumed.
In other words, only requests that result in valid responses from the API are considered.
@@ -62,6 +62,6 @@ More info about billing in Weaviate Cloud can be found on [this page](/cloud/pla
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from '/\_includes/wcs/support-and-troubleshoot.mdx';
diff --git a/docs/cloud/faq.mdx b/docs/cloud/faq.mdx
index e34e25d11..7f8b00d11 100644
--- a/docs/cloud/faq.mdx
+++ b/docs/cloud/faq.mdx
@@ -5,7 +5,7 @@ description: "Frequently asked questions and answers about Weaviate Cloud (WCD)
image: og/wcd/faq.jpg
---
-Frequently asked questions (FAQs) about [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+Frequently asked questions (FAQs) about [Weaviate Cloud (WCD)](/go/console?utm_content=cloud).
## Features
@@ -25,7 +25,7 @@ Using Weaviate Cloud gives you access to a 14-day free sandbox for testing. You
Answer
-Yes. Go to the [Weaviate Cloud login page](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and click the "Log in" button. Then, click **"Forgot Password"** and enter your email. You’ll receive a reset email at that address.
+Yes. Go to the [Weaviate Cloud login page](/go/console?utm_content=cloud) and click the "Log in" button. Then, click **"Forgot Password"** and enter your email. You’ll receive a reset email at that address.
@@ -127,6 +127,6 @@ Weaviate updated it's Cloud offering on October 27th, 2025. Before that, **Share
## Support
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/manage-clusters/authentication.mdx b/docs/cloud/manage-clusters/authentication.mdx
index bf1b24534..2cfd2e79f 100644
--- a/docs/cloud/manage-clusters/authentication.mdx
+++ b/docs/cloud/manage-clusters/authentication.mdx
@@ -56,7 +56,7 @@ If you don't have an existing API key, you'll need to create one. Follow these s
To create an API key, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and [select your cluster](/cloud/manage-clusters/status#select-a-cluster).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud) and [select your cluster](/cloud/manage-clusters/status#select-a-cluster).
2. Navigate to the `API Keys` section, found in the `Cluster details` panel.
3. If you need a new API key, click the `New key` button.
4. In the `Create API Key` form, provide a descriptive name for your key.
@@ -103,7 +103,7 @@ Rotating an API key allows you to generate a new key while invalidating the old
To rotate an API key, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud).
2. [Select your cluster](/cloud/manage-clusters/status#select-a-cluster) and navigate to the `API Keys` section.
3. Locate the API key you want to rotate and click the `Rotate` button next to it.
4. A confirmation dialog will appear, explaining that the old key will be invalidated. Click `Rotate key` to proceed.
@@ -148,7 +148,7 @@ Editing an API key allows you to modify its assigned roles. To edit an API key f
To edit an API key's roles and permissions, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud).
2. [Select your cluster](/cloud/manage-clusters/status#select-a-cluster) and navigate to the `API Keys` section.
3. Locate the API key you want to edit and click the `Edit` button next to it.
4. In the `Edit API key` form, you can modify the key's description/name.
@@ -194,7 +194,7 @@ To delete an API key, follow these steps:
To delete an API key, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud).
2. [Select your cluster](/cloud/manage-clusters/status#select-a-cluster) and navigate to the `API Keys` section.
3. Locate the API key you want to delete and click the `Trash can` button next to it.
4. A confirmation dialog will appear. Enter the necessary text (usually the API key name or a confirmation phrase) to confirm the deletion.
@@ -226,8 +226,7 @@ import Register from "/docs/cloud/img/weaviate-cloud-api-keys.png";
Open the{" "}
- Weaviate Cloud console{" "}
- and{" "}
+ Weaviate Cloud console and{" "}
{" "}
ssselect your cluster
@@ -295,7 +294,7 @@ import NewAPIKey from "/docs/cloud/img/weaviate-cloud-new-api-key.png";
diff --git a/docs/cloud/manage-clusters/authorization.mdx b/docs/cloud/manage-clusters/authorization.mdx
index 6e75127a4..e6ca4e708 100644
--- a/docs/cloud/manage-clusters/authorization.mdx
+++ b/docs/cloud/manage-clusters/authorization.mdx
@@ -5,15 +5,15 @@ description: "Role-Based Access Control (RBAC) configuration guide for Weaviate
image: og/wcd/user_guides.jpg
---
-import Link from '@docusaurus/Link';
-import WCDCreateRole from '/docs/cloud/img/weaviate-cloud-roles-create.png';
-import WCDCreateRoleForm from '/docs/cloud/img/weaviate-cloud-roles-create-form.png';
-import WCDEditRole from '/docs/cloud/img/weaviate-cloud-roles-edit.png';
-import WCDEditRoleForm from '/docs/cloud/img/weaviate-cloud-roles-edit-form.png';
-import WCDDeleteRole from '/docs/cloud/img/weaviate-cloud-roles-delete.png';
-import WCDDeleteRoleForm from '/docs/cloud/img/weaviate-cloud-roles-delete-form.png';
+import Link from "@docusaurus/Link";
+import WCDCreateRole from "/docs/cloud/img/weaviate-cloud-roles-create.png";
+import WCDCreateRoleForm from "/docs/cloud/img/weaviate-cloud-roles-create-form.png";
+import WCDEditRole from "/docs/cloud/img/weaviate-cloud-roles-edit.png";
+import WCDEditRoleForm from "/docs/cloud/img/weaviate-cloud-roles-edit-form.png";
+import WCDDeleteRole from "/docs/cloud/img/weaviate-cloud-roles-delete.png";
+import WCDDeleteRoleForm from "/docs/cloud/img/weaviate-cloud-roles-delete-form.png";
-import RestartTheCluster from '/_includes/wcs/restart-warning.mdx';
+import RestartTheCluster from "/_includes/wcs/restart-warning.mdx";
:::info
@@ -58,13 +58,13 @@ Custom roles allow you to define specific permissions for different users or app
To create a new role, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud).
2. [Select your cluster](/cloud/manage-clusters/status#select-a-cluster) and navigate to the `Roles` section.
3. Click on the `New role` button.
4. Enter a descriptive name for your role in the `Role name` field.
5. In the sections below, configure the permissions:
- * Select which resources the permission applies to (for example, to which collections the role has access to)
- * Choose the appropriate permissions (create, read, update, etc.)
+ - Select which resources the permission applies to (for example, to which collections the role has access to)
+ - Choose the appropriate permissions (create, read, update, etc.)
6. Click the `Create` button to save your new role.
@@ -115,8 +115,8 @@ To edit a role, follow these steps:
1. From the roles management page, locate the role you want to edit.
2. Click the `Pencil` button next to the role you want to modify.
3. In the role editing interface, you can:
- * Update collection permissions by checking or unchecking the appropriate boxes for Create, Read, Update, and Delete operations
- * Add or remove additional constraints from the role's scope using the dropdown menus (e.g. which collections the permissions apply to)
+ - Update collection permissions by checking or unchecking the appropriate boxes for Create, Read, Update, and Delete operations
+ - Add or remove additional constraints from the role's scope using the dropdown menus (e.g. which collections the permissions apply to)
4. After making your changes, click the `Update` button to save the modifications.
5. Changes to role permissions take effect immediately for all API keys assigned to that role.
@@ -185,6 +185,6 @@ You cannot delete the built-in admin and viewer roles, as these are system-defin
## Support
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/manage-clusters/connect.mdx b/docs/cloud/manage-clusters/connect.mdx
index a84e808ab..1a287f942 100644
--- a/docs/cloud/manage-clusters/connect.mdx
+++ b/docs/cloud/manage-clusters/connect.mdx
@@ -8,7 +8,7 @@ image: og/wcd/user_guides.jpg
import CompareURLs from "/docs/cloud/img/wcs-console-url-check.jpg";
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) offers multiple options on how to connect to your cluster:
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) offers multiple options on how to connect to your cluster:
- **[Connect with APIs](#connect-with-an-api-programmatically)**:
- Use [client libraries](/weaviate/client-libraries) to connect to a Weaviate Cloud instance.
@@ -74,7 +74,7 @@ If you don't have an existing API key, you'll need to create one. Follow these s
Steps to create a new API key
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and [select your cluster](/cloud/manage-clusters/status#select-a-cluster).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud) and [select your cluster](/cloud/manage-clusters/status#select-a-cluster).
2. Navigate to the `API Keys` section, found in the `Cluster details` panel.
3. If you need a new API key, click the `New key` button.
4. In the `Create API Key` form, provide a descriptive name for your key.
@@ -120,7 +120,7 @@ The Weaviate Cloud console uses your email address and password for authenticati
To connect to the console, follow these steps:
-1. Open the [Weaviate Cloud login page](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) in a browser.
+1. Open the [Weaviate Cloud login page](/go/console?utm_content=cloud) in a browser.
1. Enter your email address and click `Continue`.
1. Enter your password and click `Login`.
@@ -161,7 +161,7 @@ This section has solutions for some common problems. For additional help, [conta
To reset your Weaviate Cloud password, follow these steps:
-1. Go to the Weaviate Cloud [login page](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Go to the Weaviate Cloud [login page](/go/console?utm_content=cloud).
1. Click on click the login button.
1. Click `Forgot Password`.
1. Check your email account for a password reset email from Weaviate Cloud.
diff --git a/docs/cloud/manage-clusters/create.mdx b/docs/cloud/manage-clusters/create.mdx
index 60bec5b1f..4a573c5f1 100644
--- a/docs/cloud/manage-clusters/create.mdx
+++ b/docs/cloud/manage-clusters/create.mdx
@@ -5,7 +5,7 @@ description: "Step-by-step guide to create and configure new Sandbox or Shared C
image: og/wcd/user_guides.jpg
---
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) provides two instance types.
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) provides two instance types.
- **[Sandbox clusters](#sandbox-clusters)**: Sandbox clusters are small, free clusters designed for learning and experimentation. Sandbox clusters are not scalable and expire after 14 days. You will also have an option to extend their lifetime and convert them into a production ready Shared Cloud cluster.
- **[Shared Cloud clusters](#shared-cloud-clusters)**: Shared Cloud clusters are robust, paid clusters designed for production use.
@@ -112,8 +112,8 @@ To create a Shared Cloud cluster, follow these steps:
The following advanced configuration settings are available:
- * [`Enable auto schema generation`](/weaviate/config-refs/collections#auto-schema)
- * `Allow all CORS origins`
+- [`Enable auto schema generation`](/weaviate/config-refs/collections#auto-schema)
+- `Allow all CORS origins`
diff --git a/docs/cloud/manage-clusters/status.mdx b/docs/cloud/manage-clusters/status.mdx
index 4c44618ee..12aeb9feb 100644
--- a/docs/cloud/manage-clusters/status.mdx
+++ b/docs/cloud/manage-clusters/status.mdx
@@ -5,20 +5,26 @@ description: "Monitor and check the operational status of your Weaviate Cloud cl
image: og/wcd/user_guides.jpg
---
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) exposes two ways of checking the cluster status:
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) exposes two ways of checking the cluster status:
- A **[web interface](#select-a-cluster)** in the Weaviate Cloud console.
- An **[API endpoint](#api-endpoint)** that provides information about your Weaviate instance.
## Select a cluster
-
+
-
+
-
+ Select your cluster
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud).
2. Open the `Clusters` list from the left sidebar.
3. Select the cluster you want to inspect.
4. The cluster details panel will open to the right.
@@ -96,9 +105,7 @@ import ClusterStatusModules from "/docs/cloud/img/weaviate-cloud-available-modul
Scroll to the Available modules section under{" "}
Advanced options.
-
- You can click on a module to open its documentation.
-
+
You can click on a module to open its documentation.
diff --git a/docs/cloud/manage-clusters/upgrade.mdx b/docs/cloud/manage-clusters/upgrade.mdx
index f1c11ae3d..fcd4c0301 100644
--- a/docs/cloud/manage-clusters/upgrade.mdx
+++ b/docs/cloud/manage-clusters/upgrade.mdx
@@ -5,7 +5,7 @@ description: "Manual update process for existing clusters when new Weaviate Data
image: og/wcd/user_guides.jpg
---
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) does not automatically update existing clusters when a new version of Weaviate core is released.
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) does not automatically update existing clusters when a new version of Weaviate core is released.
If you have a stand-alone cluster, an update requires system downtime. Consider your business needs, and update your cluster when you have a suitable maintenance window. There is no downtime if you have high availability (HA) enabled on your cluster.
@@ -50,7 +50,7 @@ When a Weaviate Database version update is available, a notification banner appe
To update a cluster, follow these steps:
-1. Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and [select your cluster](../manage-clusters/status.mdx).
+1. Open the [Weaviate Cloud console](/go/console?utm_content=cloud) and [select your cluster](../manage-clusters/status.mdx).
2. If an update is available, you'll see a notification banner at the top of the cluster details page. Click the `Update` button in the banner.
3. Select a Weaviate version for the update.
4. Enter the cluster name to confirm the update.
@@ -79,6 +79,6 @@ The console displays status indicators throughout the process. The indicators di
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/platform/create-account.mdx b/docs/cloud/platform/create-account.mdx
index bf9fc7f1f..720e5f738 100644
--- a/docs/cloud/platform/create-account.mdx
+++ b/docs/cloud/platform/create-account.mdx
@@ -5,18 +5,18 @@ description: "Account creation process for accessing Weaviate Cloud console."
image: og/wcd/user_guides.jpg
---
-import LandingRegister from '/docs/cloud/img/wcs-landing-page-register.jpg';
+import LandingRegister from "/docs/cloud/img/wcs-landing-page-register.jpg";
Weaviate Cloud (WCD) has an interactive console. Create a user account, then login to manage WCD clusters, run queries, and configure your organization details.
## Create a new user account and sign in {#create-a-new-user-account}
-Go to the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and follow the steps below to create a new account and log in.
+Go to the [Weaviate Cloud console](/go/console?utm_content=cloud) and follow the steps below to create a new account and log in.
@@ -25,7 +25,7 @@ Go to the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=doc
src="https://app.guideflow.com/embed/er5mg78u6k"
width="100%"
height="100%"
- style={{ overflow: 'hidden', position: 'absolute', border: 'none' }}
+ style={{ overflow: "hidden", position: "absolute", border: "none" }}
scrolling="no"
allow="clipboard-read; clipboard-write"
webKitAllowFullScreen
@@ -51,6 +51,6 @@ If you register through a cloud marketplace like [AWS](https://aws.amazon.com/ma
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/platform/multi-factor-auth.mdx b/docs/cloud/platform/multi-factor-auth.mdx
index d9f3b803b..deb587f86 100644
--- a/docs/cloud/platform/multi-factor-auth.mdx
+++ b/docs/cloud/platform/multi-factor-auth.mdx
@@ -5,8 +5,8 @@ description: "Enhanced security setup with multi-factor authentication for Weavi
image: og/wcd/user_guides.jpg
---
-import MFAOneTime from '/docs/cloud/img/mfa-one-time-code.jpg';
-import MFAEnableIcon from '/docs/cloud/img/mfa-enable-icon.jpg';
+import MFAOneTime from "/docs/cloud/img/mfa-one-time-code.jpg";
+import MFAEnableIcon from "/docs/cloud/img/mfa-enable-icon.jpg";
Multi-factor authentication (MFA) increases the security of browser logins. MFA is not enabled by default.
@@ -14,15 +14,15 @@ Multi-factor authentication (MFA) increases the security of browser logins. MFA
To enable MFA, follow these steps:
-import EnableMFA from '/docs/cloud/img/weaviate-cloud-enable-mfa.png';
-import MFA from '/docs/cloud/img/weaviate-cloud-mfa.png';
+import EnableMFA from "/docs/cloud/img/weaviate-cloud-enable-mfa.png";
+import MFA from "/docs/cloud/img/weaviate-cloud-mfa.png";
- Open the{' '}
- Weaviate Cloud console.
+ Open the{" "}
+ Weaviate Cloud console.
Click on the Account dropdown menu in the lower left corner
@@ -32,7 +32,8 @@ import MFA from '/docs/cloud/img/weaviate-cloud-mfa.png';
Select Account Settings (2).
- Click on Enable MFA button (3).
+ Click on Enable MFA button (3
+ ).
@@ -42,7 +43,7 @@ import MFA from '/docs/cloud/img/weaviate-cloud-mfa.png';
- Open the Multi-factor authentication page and find the{' '}
+ Open the Multi-factor authentication page and find the{" "}
Enable MFA button.
@@ -53,10 +54,12 @@ import MFA from '/docs/cloud/img/weaviate-cloud-mfa.png';
- Open your authenticator application and scan the QR code (4).
+ Open your authenticator application and scan the QR code (
+ 4).
- Enter the one-time code from your application (5).
+ Enter the one-time code from your application (
+ 5).
@@ -65,14 +68,12 @@ import MFA from '/docs/cloud/img/weaviate-cloud-mfa.png';
-
- Set up Multi-factor authentication.
-
+
Set up Multi-factor authentication.
-
+
After you configure MFA, Weaviate Cloud prompts you to supply the one-time authentication code each time you log in.
@@ -90,6 +91,6 @@ Use API keys to connect browser based client applications to Weaviate Cloud.
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/platform/support-levels.mdx b/docs/cloud/platform/support-levels.mdx
index 8adf23aaf..7718d577d 100644
--- a/docs/cloud/platform/support-levels.mdx
+++ b/docs/cloud/platform/support-levels.mdx
@@ -5,7 +5,7 @@ description: "Available support tiers and plans for Weaviate Cloud users with di
image: og/wcd/user_guides.jpg
---
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) offers multiple levels of support integrated into each pricing plan. Choose the plan that best meets your needs.
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) offers multiple levels of support integrated into each pricing plan. Choose the plan that best meets your needs.
## Available plans
diff --git a/docs/cloud/platform/users-and-organizations.mdx b/docs/cloud/platform/users-and-organizations.mdx
index df5bfd482..9f9e8372c 100644
--- a/docs/cloud/platform/users-and-organizations.mdx
+++ b/docs/cloud/platform/users-and-organizations.mdx
@@ -5,8 +5,8 @@ description: "Organization-based account structure and organization user managem
image: og/wcd/user_guides.jpg
---
-import OrgUpdateName from '/docs/cloud/img/orgs-update-name-before.jpg';
-import OrgUpdateCheckMark from '/docs/cloud/img/orgs-update-name-confirm.jpg';
+import OrgUpdateName from "/docs/cloud/img/orgs-update-name-before.jpg";
+import OrgUpdateCheckMark from "/docs/cloud/img/orgs-update-name-confirm.jpg";
Accounts in Weaviate Cloud (WCD) are based on organizations. There is an organization for each user account. Users can belong to more than one organization.
@@ -34,42 +34,44 @@ Be cautious when you add users to your organization, especially in production. E
User-editable configuration settings are on the **Organization settings** page:
-import EditOrganization from '/_includes/wcs/weaviate-cloud-edit-organization.mdx'
+import EditOrganization from "/_includes/wcs/weaviate-cloud-edit-organization.mdx";
-
+
### Create an organization
To create a new organization, follow these steps:
-import AddOrganization from '/docs/cloud/img/weaviate-cloud-add-organization.png';
+import AddOrganization from "/docs/cloud/img/weaviate-cloud-add-organization.png";
- Open the{' '}
- Weaviate Cloud console.
+ Open the{" "}
+ Weaviate Cloud console.
- Open the organization dropdown menu (1).
+ Open the organization dropdown menu (1).
- Click on Add new organization (2).
+ Click on Add new organization (
+ 2).
- Enter the organization name ad click on the Create button.
-
+ Enter the organization name ad click on the Create button.
+
-
-
-
- Add a new organization in Weaviate Cloud.
+
+
Add a new organization in Weaviate Cloud.
@@ -89,7 +91,7 @@ To edit an organization name, follow these steps:
- Open the Organization settings{' '}
+ Open the Organization settings{" "}
page.
@@ -100,9 +102,14 @@ To edit an organization name, follow these steps:
-
+
+
+
+ Update an organization name in Weaviate Cloud.
-
Update an organization name in Weaviate Cloud.
@@ -117,7 +124,10 @@ To edit an organization name, follow these steps:
-
+
Submit the organization name change.
@@ -126,34 +136,37 @@ To edit an organization name, follow these steps:
### Delete an organization
-import DeleteOrganization from '/docs/cloud/img/weaviate-cloud-delete-organization.png';
+import DeleteOrganization from "/docs/cloud/img/weaviate-cloud-delete-organization.png";
- Open the{' '}
- Weaviate Cloud console.
+ Open the{" "}
+ Weaviate Cloud console.
- Open the organization dropdown menu (1).
+ Open the organization dropdown menu (1).
- Click on Organization settings (2).
+ Click on Organization settings (
+ 2).
- Click on the Delete button (3).
+ Click on the Delete button (3
+ ).
-
-
-
- Delete an organization in Weaviate Cloud.
+
+
Delete an organization in Weaviate Cloud.
@@ -200,6 +213,6 @@ The account gets an invoice for each cluster. Clusters are billed on the 1st day
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/platform/version.mdx b/docs/cloud/platform/version.mdx
index aec5ff4e7..44ea198b3 100644
--- a/docs/cloud/platform/version.mdx
+++ b/docs/cloud/platform/version.mdx
@@ -5,7 +5,7 @@ description: "Information about Weaviate Database server versions running on Wea
image: og/wcd/user_guides.jpg
---
-[Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) hosts clusters that run Weaviate.
+[Weaviate Cloud (WCD)](/go/console?utm_content=cloud) hosts clusters that run Weaviate.
## New clusters
@@ -19,7 +19,7 @@ The Weaviate Cloud console informs you when a newer version is available. Consid
-import Downtime125Note from '/_includes/wcs/wcs.update-to-125-downtime.mdx';
+import Downtime125Note from "/_includes/wcs/wcs.update-to-125-downtime.mdx";
@@ -38,6 +38,6 @@ For security updates, Weaviate Cloud updates the cluster to the most current pro
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/quickstart.mdx b/docs/cloud/quickstart.mdx
index 2a94c9c27..f0a5265d3 100644
--- a/docs/cloud/quickstart.mdx
+++ b/docs/cloud/quickstart.mdx
@@ -7,8 +7,8 @@ image: og/docs/quickstart-tutorial.jpg
# tags: ['getting started']
---
-import Tabs from '@theme/Tabs';
-import TabItem from '@theme/TabItem';
+import Tabs from "@theme/Tabs";
+import TabItem from "@theme/TabItem";
Expected time: 30 minutes
@@ -87,7 +87,7 @@ Weaviate offers the following cluster options:
- **Sandbox clusters**: free short-term cluster for development purposes.
- **Shared Cloud clusters**: permanent production-ready environment.
-Go to the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) and create a free Sandbox instance.
+Go to the [Weaviate Cloud console](/go/console?utm_content=cloud) and create a free Sandbox instance.
@@ -135,7 +135,7 @@ The Weaviate Cloud console includes a query interface, but most interactions rel
To install a client, follow these steps for your language:
-import CodeClientInstall from '/_includes/code/quickstart/clients.install.mdx';
+import CodeClientInstall from "/_includes/code/quickstart/clients.install.mdx";
@@ -146,7 +146,7 @@ Now you can connect to your Weaviate instance. You will need the:
- **REST Endpoint URL** and the
- **Administrator API Key**.
-You can retrieve them both from the [WCD console](https://weaviate.io/go/console?utm_source=docs&utm_content=cloud) as shown in the interactive example below.
+You can retrieve them both from the [WCD console](/go/console?utm_content=cloud) as shown in the interactive example below.
:::note
@@ -156,8 +156,8 @@ New clusters with Weaviate version `v1.30` (or later) have [RBAC (Role-Based Acc
@@ -166,7 +166,7 @@ New clusters with Weaviate version `v1.30` (or later) have [RBAC (Role-Based Acc
src="https://app.guideflow.com/embed/ok8l954sxr"
width="100%"
height="100%"
- style={{ overflow: 'hidden', position: 'absolute', border: 'none' }}
+ style={{ overflow: "hidden", position: "absolute", border: "none" }}
scrolling="no"
allow="clipboard-read; clipboard-write"
webKitAllowFullScreen
@@ -192,7 +192,7 @@ Once you have the **REST Endpoint URL** and the **Admin API key**, you can conne
The example below shows how to connect to Weaviate and perform a basic operation, like checking the cluster status.
-import ConnectIsReady from '/_includes/code/quickstart/quickstart.is_ready.mdx';
+import ConnectIsReady from "/_includes/code/quickstart/quickstart.is_ready.mdx";
@@ -208,7 +208,7 @@ The following example creates a _collection_ called `Question` with:
- The [Weaviate Embeddings model integration](/weaviate/model-providers/weaviate/embeddings.md) to create vectors during ingestion & queries.
-import CreateCollection from '/_includes/code/quickstart/quickstart.create_collection.mdx';
+import CreateCollection from "/_includes/code/quickstart/quickstart.create_collection.mdx";
@@ -229,7 +229,7 @@ The following example:
:::
-import ImportObjects from '/_includes/code/quickstart/quickstart.import_objects.mdx';
+import ImportObjects from "/_includes/code/quickstart/quickstart.import_objects.mdx";
@@ -247,7 +247,7 @@ Semantic search finds results based on meaning. This is called `nearText` in Wea
The following example searches for 2 objects whose meaning is most similar to that of `biology`.
-import QueryNearText from '/_includes/code/quickstart/quickstart.query.neartext.mdx';
+import QueryNearText from "/_includes/code/quickstart/quickstart.query.neartext.mdx";
@@ -382,7 +382,7 @@ flowchart LR
The following example combines the same search (for `biology`) with a prompt to generate a tweet.
-import QueryRAG from '/_includes/code/quickstart/quickstart.query.rag.mdx';
+import QueryRAG from "/_includes/code/quickstart/quickstart.query.rag.mdx";
@@ -415,9 +415,9 @@ import CardsSection from "/src/components/CardsSection";
export const nextStepsData = [
{
title: "Create a cluster",
- description:(
+ description: (
- If you need a production-ready and persistent instance, create a{' '}
+ If you need a production-ready and persistent instance, create a{" "}
Shared Cloud cluster.
),
@@ -437,6 +437,6 @@ export const nextStepsData = [
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/cloud/tools/query-tool.mdx b/docs/cloud/tools/query-tool.mdx
index e8e74b540..fc8273bad 100644
--- a/docs/cloud/tools/query-tool.mdx
+++ b/docs/cloud/tools/query-tool.mdx
@@ -13,14 +13,14 @@ You can query your collection using natural language with the [Query Agent](./qu
The Weaviate Cloud (WCD) query tool is a browser-based GraphQL IDE. Use the query tool to work interactively with your Weaviate Cloud clusters.
-import QueryToolPreview from '/docs/cloud/img/weaviate-cloud-query-tool-preview.png';
+import QueryToolPreview from "/docs/cloud/img/weaviate-cloud-query-tool-preview.png";
GraphiQL
- {' '}
+ {" "}
is built into the query tool. GraphiQL provides many features that make
GraphQL easier to use interactively:
@@ -48,17 +48,18 @@ import QueryToolPreview from '/docs/cloud/img/weaviate-cloud-query-tool-preview.
To open the query tool for a cluster:
-import QueryTool from '/docs/cloud/img/weaviate-cloud-query-tool.png';
+import QueryTool from "/docs/cloud/img/weaviate-cloud-query-tool.png";
- Open the{' '}
- Weaviate Cloud console.
+ Open the{" "}
+ Weaviate Cloud console.
- Click on the Query button and choose a cluster from the list.
+ Click on the Query button and choose a cluster from the
+ list.
@@ -76,7 +77,7 @@ import QueryTool from '/docs/cloud/img/weaviate-cloud-query-tool.png';
The query tool has the following components:
-import QueryToolConsole from '/docs/cloud/img/weaviate-cloud-query-tool-console.png';
+import QueryToolConsole from "/docs/cloud/img/weaviate-cloud-query-tool-console.png";
@@ -91,7 +92,7 @@ import QueryToolConsole from '/docs/cloud/img/weaviate-cloud-query-tool-console.
A panel containing the response (3).
- A panel for{' '}
+ A panel for{" "}
passing variables and headers (
4).
@@ -124,6 +125,6 @@ In this example, the `X-OpenAI-Api-Key` header sets the OpenAI API key. The head
## Support & feedback
-import SupportAndTrouble from '/_includes/wcs/support-and-troubleshoot.mdx';
+import SupportAndTrouble from "/_includes/wcs/support-and-troubleshoot.mdx";
diff --git a/docs/contributor-guide/weaviate-core/setup.md b/docs/contributor-guide/weaviate-core/setup.md
index dba557d97..66ceb26f8 100644
--- a/docs/contributor-guide/weaviate-core/setup.md
+++ b/docs/contributor-guide/weaviate-core/setup.md
@@ -3,6 +3,7 @@ title: Development setup
image: og/contributor-guide/weaviate-core.jpg
# tags: ['contributor-guide']
---
+
This page describes how to run Weaviate from source (git checkout / tarball) locally.
:::tip
@@ -10,8 +11,9 @@ You can find the source code at the [Weaviate repo](https://github.com/weaviate/
:::
Prerequisites:
-* [Go](https://go.dev/dl/) v1.21 or higher
-* (optional) [Docker](https://docs.docker.com/desktop/)
+
+- [Go](https://go.dev/dl/) v1.21 or higher
+- (optional) [Docker](https://docs.docker.com/desktop/)
## Running from source
@@ -22,6 +24,7 @@ tools/dev/run_dev_server.sh
```
Where `` is _one_ of the server configuration (`$CONFIG`) values in [`/tools/dev/run_dev_server.sh`](https://github.com/weaviate/weaviate/blob/master/tools/dev/run_dev_server.sh#L26). For example, you can run:
+
```bash
tools/dev/run_dev_server.sh local-openai
```
@@ -43,9 +46,10 @@ tools/dev/restart_dev_environment.sh [additional_services]
then run the development server as described in the section above.
For example, the setup below uses Docker Compose to spin up Prometheus and Grafana instances. Those are pre-configured to scrape metrics from Weaviate. Using this setup, you can:
+
- access Weaviate on port `8080`
- access Grafana on port `3000` (Login: `weaviate`/`weaviate`)
-- if necessary for debugging - access prometheus directly on port `9090`
+- if necessary for debugging - access prometheus directly on port `9090`
```bash
tools/dev/restart_dev_environment.sh --prometheus && tools/dev/run_dev_server.sh local-no-modules
@@ -71,7 +75,7 @@ tools/dev/restart_dev_environment.sh --qna && ./tools/dev/run_dev_server.sh loca
The above commands are subject to change as we add more modules and require specific combinations for local testing. You can always inspect [restart_dev_environment.sh](https://github.com/weaviate/weaviate/blob/master/tools/dev/restart_dev_environment.sh) and [run_dev_server.sh](https://github.com/weaviate/weaviate/blob/master/tools/dev/run_dev_server.sh) to see which options are available. The first option without any arguments is always guaranteed to work.
-To make queries from a web interface, use the [WCD console](https://weaviate.io/go/console?utm_source=docs&utm_content=others) to connect to `localhost:8080`.
+To make queries from a web interface, use the [WCD console](/go/console?utm_content=others) to connect to `localhost:8080`.
## Further resources
@@ -79,6 +83,6 @@ To make queries from a web interface, use the [WCD console](https://weaviate.io/
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/deploy/configuration/authentication.md b/docs/deploy/configuration/authentication.md
index 842155d08..d6ed7a8ae 100644
--- a/docs/deploy/configuration/authentication.md
+++ b/docs/deploy/configuration/authentication.md
@@ -101,6 +101,7 @@ services:
```
This configuration:
+
- Disables anonymous access
- Enables API key authentication
- Defines plaintext API keys in `AUTHENTICATION_APIKEY_ALLOWED_KEYS`
@@ -108,13 +109,14 @@ This configuration:
These users can now be assigned permissions based on the authorization settings.
-import DynamicUserManagement from '/_includes/configuration/dynamic-user-management.mdx';
+import DynamicUserManagement from '/\_includes/configuration/dynamic-user-management.mdx';
:::note
Note that you can either:
+
- Set one user for all API keys, or
- Define one user per API key (the number of users must match the number of API keys)
@@ -267,7 +269,7 @@ authentication:
# where an example realm 'my-weaviate-usecase' was created. The exact
# path structure depends on the token issuer. See the token issuer's documentation
# about which endpoint implements OIDC Discovery.
- issuer: 'http://my-token-issuer/auth/realms/my-weaviate-usecase'
+ issuer: "http://my-token-issuer/auth/realms/my-weaviate-usecase"
# client_id (required unless skip_client_id_check is set to true) tells
# Weaviate to check for a particular OAuth 2.0 client_id in the audience claim.
@@ -276,39 +278,40 @@ authentication:
#
# For more information on what clients are in OAuth 2.0, see
# https://tools.ietf.org/html/rfc6749#section-1.1
- client_id: 'my-weaviate-client'
+ client_id: "my-weaviate-client"
# username_claim (required) tells Weaviate which claim in the token to use for extracting
# the username. The username will be passed to the authorization plugin.
- username_claim: 'email'
+ username_claim: "email"
# skip_client_id_check (optional, defaults to false) skips the client_id
# validation in the audience claim as outlined in the section above.
# Not recommended to set this option as it reduces security, only set this
# if your token issuer is unable to provide a correct audience claim
- skip_client_id_check: 'false'
+ skip_client_id_check: "false"
# scope (optional) these will be used by clients as default scopes for authentication
- scopes: ''
+ scopes: ""
# groups_claim: ''
```
### Note: Configuring the OIDC token issuer
-import WCDOIDCWarning from '/_includes/wcd-oidc.mdx';
+import WCDOIDCWarning from '/\_includes/wcd-oidc.mdx';
Configuring the OIDC token issuer is outside the scope of this document, but here are a few options as a starting point:
- For simple use-cases such as for a single user, you can use Weaviate Cloud (WCD) as the OIDC token issuer. To do so:
- - Make sure you have a WCD account (you can [sign up here](https://weaviate.io/go/console?utm_source=docs&utm_content=deploy)).
- - In the Docker Compose file (e.g. `docker-compose.yml`), specify:
- - `https://auth.wcs.api.weaviate.io/auth/realms/SeMI` as the issuer (in `AUTHENTICATION_OIDC_ISSUER`),
- - `wcs` as the client id (in `AUTHENTICATION_OIDC_CLIENT_ID`), and
- - enable the adminlist (`AUTHORIZATION_ADMINLIST_ENABLED: 'true'`) and add your WCD account email as the user (in `AUTHORIZATION_ADMINLIST_USERS`) .
- - `email` as the username claim (in `AUTHENTICATION_OIDC_USERNAME_CLAIM`).
+
+ - Make sure you have a WCD account (you can [sign up here](/go/console?utm_content=deploy)).
+ - In the Docker Compose file (e.g. `docker-compose.yml`), specify:
+ - `https://auth.wcs.api.weaviate.io/auth/realms/SeMI` as the issuer (in `AUTHENTICATION_OIDC_ISSUER`),
+ - `wcs` as the client id (in `AUTHENTICATION_OIDC_CLIENT_ID`), and
+ - enable the adminlist (`AUTHORIZATION_ADMINLIST_ENABLED: 'true'`) and add your WCD account email as the user (in `AUTHORIZATION_ADMINLIST_USERS`) .
+ - `email` as the username claim (in `AUTHENTICATION_OIDC_USERNAME_CLAIM`).
- If you need a more customizable setup you can use commercial OIDC providers like [Okta](https://www.okta.com/).
- As another alternative, you can run your own OIDC token issuer server, which may be the most complex but also configurable solution. Popular open-source solutions include Java-based [Keycloak](https://www.keycloak.org/) and Golang-based [dex](https://github.com/dexidp/dex).
@@ -355,6 +358,6 @@ authentication:
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/deploy/index.mdx b/docs/deploy/index.mdx
index 7bbd96288..cd8390719 100644
--- a/docs/deploy/index.mdx
+++ b/docs/deploy/index.mdx
@@ -8,7 +8,7 @@ import CardsSection from "/src/components/CardsSection";
import DeploymentCards from "/src/components/DeploymentCards";
import styles from "/src/components/CardsSection/styles.module.scss";
-Weaviate is available as a hosted service, [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=deploy), or as a self managed instance. If you manage your own instance, you can host it locally or with a cloud provider. Self-managed instances use the same Weaviate Database as WCD.
+Weaviate is available as a hosted service, [Weaviate Cloud (WCD)](/go/console?utm_content=deploy), or as a self managed instance. If you manage your own instance, you can host it locally or with a cloud provider. Self-managed instances use the same Weaviate Database as WCD.
If you are upgrading from a previous version of Weaviate, see the [Migration guide](docs/deploy/migration/index.md) for any changes that may affect your installation.
diff --git a/docs/deploy/installation-guides/index.md b/docs/deploy/installation-guides/index.md
index 0df468228..e834c8efd 100644
--- a/docs/deploy/installation-guides/index.md
+++ b/docs/deploy/installation-guides/index.md
@@ -5,7 +5,7 @@ image: og/docs/installation.jpg
# tags: ['installation']
---
-Weaviate is available as a hosted service, [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=deploy), or as a self managed instance. If you manage your own instance, you can host it locally or with a cloud provider. Self-managed instances use the same Weaviate Database as WCD.
+Weaviate is available as a hosted service, [Weaviate Cloud (WCD)](/go/console?utm_content=deploy), or as a self managed instance. If you manage your own instance, you can host it locally or with a cloud provider. Self-managed instances use the same Weaviate Database as WCD.
If you are upgrading from a previous version of Weaviate, see the [Migration Guide](/deploy/migration/index.md) for any changes that may affect your installation.
@@ -34,13 +34,14 @@ If you are self-hosting, consider experimenting on a small scale with Docker and
## Unreleased versions
-import RunUnreleasedImages from '/_includes/configuration/run-unreleased.mdx'
+import RunUnreleasedImages from '/\_includes/configuration/run-unreleased.mdx'
When you try upcoming features, please provide [feedback](https://github.com/weaviate/weaviate/issues/new/choose). Your comments are appreciated and help us to make Weaviate more useful for you.
## Related pages
+
- [Connect to Weaviate](docs/weaviate/connections/index.mdx)
- [Weaviate Quickstart](docs/weaviate/quickstart/index.md)
- [Weaviate Cloud Quickstart](docs/cloud/quickstart.mdx)
@@ -48,6 +49,6 @@ When you try upcoming features, please provide [feedback](https://github.com/wea
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/integrations/recipes/agent-workflow-with-weaviate-query-agent.md b/docs/integrations/recipes/agent-workflow-with-weaviate-query-agent.md
index 833afc4ec..b81c1ca2b 100644
--- a/docs/integrations/recipes/agent-workflow-with-weaviate-query-agent.md
+++ b/docs/integrations/recipes/agent-workflow-with-weaviate-query-agent.md
@@ -6,8 +6,9 @@ title: "Weaviate Query Agent with LlamaIndex"
featured: False
integration: True
agent: False
-tags: ['Query Agent', 'Integration']
+tags: ["Query Agent", "Integration"]
---
+
@@ -17,12 +18,14 @@ tags: ['Query Agent', 'Integration']
This notebook will show you how to define the Weaviate Query Agent as a tool through LlamaIndex.
### Requirements
-1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](https://weaviate.io/go/console?utm_source=docs&utm_content=integrations).
+
+1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](/go/console?utm_content=integrations).
2. Install LlamaIndex with `pip install llama-index` (we used version `0.12.22` for this notebook)
3. Install the Weaviate Agents package with `pip install weaviate-agents`
4. You'll need a Weaviate cluster with data. If you don't have one, check out [this notebook](https://github.com/weaviate/recipes/blob/main/integrations/Weaviate-Import-Example.ipynb) to import the Weaviate Blogs.
### Resources on the LlamaIndex Agent Workflow
+
1. [Getting Started Guide](https://docs.llamaindex.ai/en/latest/getting_started/starter_example/)
1. [Agent Tutorial](https://docs.llamaindex.ai/en/latest/understanding/agent/)
1. [Key Features in the Agent Workflow](https://docs.llamaindex.ai/en/latest/examples/agent/agent_workflow_basic/)
@@ -99,7 +102,8 @@ print(response)
```
Python output:
-```text
+
+````text
/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/weaviate/warnings.py:314: ResourceWarning: Con004: The connection to Weaviate was not closed properly. This can lead to memory leaks.
Please make sure to close the connection using `client.close()`.
warnings.warn(
@@ -142,4 +146,4 @@ To run Weaviate with Docker, follow these steps:
curl --fail -s localhost:8080/v1/.well-known/ready
\```
This command will confirm if Weaviate is up and ready for use.
-```
+````
diff --git a/docs/integrations/recipes/crewai-query-agent-as-tool.md b/docs/integrations/recipes/crewai-query-agent-as-tool.md
index 6212c6092..e10783031 100644
--- a/docs/integrations/recipes/crewai-query-agent-as-tool.md
+++ b/docs/integrations/recipes/crewai-query-agent-as-tool.md
@@ -6,8 +6,9 @@ title: "Weaviate Query Agent with Crew AI"
featured: False
integration: True
agent: False
-tags: ['Query Agent', 'Integration']
+tags: ["Query Agent", "Integration"]
---
+
@@ -15,7 +16,8 @@ tags: ['Query Agent', 'Integration']
This notebook will show you how to define the Weaviate Query Agent as a tool through the Crew AI.
## Requirements
-1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](https://weaviate.io/go/console?utm_source=docs&utm_content=integrations).
+
+1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](/go/console?utm_content=integrations).
2. Install Crew AI with `pip install crewai`
3. Install the Weaviate Agents package with `pip install weaviate-agents`
4. You'll need a Weaviate cluster with data. If you don't have one, check out [this notebook](https://github.com/weaviate/recipes/blob/main/integrations/Weaviate-Import-Example.ipynb) to import the Weaviate Blogs.
@@ -38,10 +40,12 @@ from crewai.tools import BaseTool
```
Python output:
+
```text
/usr/local/lib/python3.11/site-packages/litellm/utils.py:149: DeprecationWarning: open_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
with resources.open_text(
```
+
```python
os.environ["WEAVIATE_URL"] = ""
os.environ["WEAVIATE_API_KEY"] = ""
@@ -135,6 +139,7 @@ print(result)
```
Python output:
+
```text
# Agent: Blog Content Researcher
## Task: Research blog posts about packaging software applications with Docker
diff --git a/docs/integrations/recipes/haystack-query-agent-tool.md b/docs/integrations/recipes/haystack-query-agent-tool.md
index c12eb9ddc..0e3b6a96a 100644
--- a/docs/integrations/recipes/haystack-query-agent-tool.md
+++ b/docs/integrations/recipes/haystack-query-agent-tool.md
@@ -6,8 +6,9 @@ title: "Weaviate Query Agent with Haystack"
featured: False
integration: True
agent: False
-tags: ['Query Agent', 'Integration']
+tags: ["Query Agent", "Integration"]
---
+
@@ -17,7 +18,8 @@ tags: ['Query Agent', 'Integration']
This notebook will show you how to define the Weaviate Query Agent as a tool through Haystack.
### Requirements
-1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](https://weaviate.io/go/console?utm_source=docs&utm_content=integrations).
+
+1. Weaviate Cloud instance (WCD): The Weaviate Query Agent is only accessible through WCD at the moment. You can create a serverless cluster or a free 14-day sandbox [here](/go/console?utm_content=integrations).
1. Install Haystack with `pip install haystack-ai`
1. Install the Weaviate Agents package with `pip install weaviate-agents`
1. You'll need a Weaviate cluster with data. If you don't have one, check out [this notebook](https://github.com/weaviate/recipes/blob/main/integrations/Weaviate-Import-Example.ipynb) to import the Weaviate Blogs.
@@ -95,6 +97,7 @@ print(query_agent_tool.invoke(query="What are the main topics covered in the blo
```
Python output:
+
```text
{'name': 'weaviate_query_agent_tool', 'description': 'This tool queries a database containing blog content about Weaviate and returns relevant information. You can ask any natural language question about the blogs stored in the database.', 'parameters': {'type': 'object', 'properties': {'query': {'type': 'string'}}, 'required': ['query']}}
The main topic covered in the blogs is Docker and Containers, with a focus on their use with Weaviate. The articles provide background information on Docker and containers, explain their importance for Weaviate users, and cover topics such as Docker installation and setup, isolation and predictability of environments, distribution via Docker Hub, and the use of Docker Compose. Additionally, they address questions about Docker's role in the Weaviate stack, outlining reasons such as portability, isolation, and dependency management. There’s also discussion on deploying Weaviate using Kubernetes and Helm for more stable environments.
@@ -103,6 +106,7 @@ The main topic covered in the blogs is Docker and Containers, with a focus on th
Please make sure to close the connection using `client.close()`.
warnings.warn(
```
+
### Chat Conversation with Tool Invocation
```python
@@ -124,6 +128,7 @@ if replies[0].tool_calls:
```
Python output:
+
```text
assistant messages: [ChatMessage(_role=, _content=[ToolCall(tool_name='weaviate_query_agent_tool', arguments={'query': 'How to run Weaviate with Docker?'}, id='call_fpBdeb9qHLiifdfFZ5OnmPoE')], _name=None, _meta={'model': 'gpt-4o-mini-2024-07-18', 'index': 0, 'finish_reason': 'tool_calls', 'usage': {'completion_tokens': 27, 'prompt_tokens': 83, 'total_tokens': 110, 'completion_tokens_details': CompletionTokensDetails(accepted_prediction_tokens=0, audio_tokens=0, reasoning_tokens=0, rejected_prediction_tokens=0), 'prompt_tokens_details': PromptTokensDetails(audio_tokens=0, cached_tokens=0)}})]
diff --git a/docs/weaviate/api/graphql/explore.md b/docs/weaviate/api/graphql/explore.md
index d0a22824c..d7acc7272 100644
--- a/docs/weaviate/api/graphql/explore.md
+++ b/docs/weaviate/api/graphql/explore.md
@@ -6,12 +6,11 @@ image: og/docs/api.jpg
# tags: ['graphql', 'explore{}']
---
-
:::note Vector spaces and Explore
The `Explore` function is disabled where multiple inference (e.g. `text2vec-xxx`) modules are enabled.
-As a result, `Explore` is not available on [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=api) as its clusters are pre-configured with multiple inference modules for AWS, Cohere, Google, OpenAI and so on.
+As a result, `Explore` is not available on [Weaviate Cloud (WCD)](/go/console?utm_content=api) as its clusters are pre-configured with multiple inference modules for AWS, Cohere, Google, OpenAI and so on.
:::
@@ -60,7 +59,7 @@ The `Explore` function has the following syntax:
An example query:
-import GraphQLExploreVec from '/_includes/code/graphql.explore.vector.mdx';
+import GraphQLExploreVec from '/\_includes/code/graphql.explore.vector.mdx';
@@ -85,12 +84,10 @@ The result might look like this:
The `nearText` and `nearVector` operators work in `Explore` as they do in other queries. See [search operators](search-operators.md) for more information.
-
### Filters
`Explore` queries can be combined with filters. See [filters](filters.md) for more information.
-
### Pagination
Pagination (i.e. `limit` with `offset`) is not possible in `Explore` queries.
@@ -99,9 +96,8 @@ Pagination (i.e. `limit` with `offset`) is not possible in `Explore` queries.
Because pagination is not possible in multidimensional storage, we recommend using `moveTo` and `moveAwayFrom` if further query refinement is sought. They work as they do in other queries. See [search operators#nearText](search-operators.md#neartext) for more information.
-
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/api/grpc.md b/docs/weaviate/api/grpc.md
index fd9c04d35..4decc0bda 100644
--- a/docs/weaviate/api/grpc.md
+++ b/docs/weaviate/api/grpc.md
@@ -30,10 +30,10 @@ As an example, the snippet below maps `50051` as the host port so that it can be
:::info
We suggest using the default port `50051` for gRPC calls. It can be modified through the `GRPC_PORT` [environment variable](/deploy/configuration/env-vars/index.md).
-Note that [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=api) uses port `443` for gRPC.
+Note that [Weaviate Cloud](/go/console?utm_content=api) uses port `443` for gRPC.
:::
-```yaml:
+````yaml:
```yaml
---
@@ -44,7 +44,7 @@ services:
- "8080:8080" # REST calls
- "50051:50051" # gRPC calls
# ... Other settings
-```
+````
### Client-side
@@ -57,6 +57,6 @@ Alternatively, you can use other tools, such as the `grpcurl` command-line tool,
## Questions and feedback
-import DocsFeedback from "/_includes/docs-feedback.mdx";
+import DocsFeedback from "/\_includes/docs-feedback.mdx";
diff --git a/docs/weaviate/client-libraries/_components/client.auth.wcs.mdx b/docs/weaviate/client-libraries/_components/client.auth.wcs.mdx
index c3064a60b..945088b44 100644
--- a/docs/weaviate/client-libraries/_components/client.auth.wcs.mdx
+++ b/docs/weaviate/client-libraries/_components/client.auth.wcs.mdx
@@ -1,5 +1,5 @@
:::tip WCD + Weaviate client
-Each Weaviate instance in [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=others) is pre-configured to act as a token issuer for OIDC authentication.
+Each Weaviate instance in [Weaviate Cloud (WCD)](/go/console?utm_content=others) is pre-configured to act as a token issuer for OIDC authentication.
:::
[See our WCD authentication documentation](/cloud/manage-clusters/connect) for instructions on how to authenticate against WCD with your preferred Weaviate client.
diff --git a/docs/weaviate/concepts/interface.md b/docs/weaviate/concepts/interface.md
index 8b700beb7..da45c9c4e 100644
--- a/docs/weaviate/concepts/interface.md
+++ b/docs/weaviate/concepts/interface.md
@@ -22,44 +22,48 @@ The UX of Weaviate's APIs is designed following the UX Honeycomb usability rules
Weaviate has both a RESTful API and a GraphQL API. Currently, there is no feature parity between both APIs (this will be implemented later, there is an [issue](https://github.com/weaviate/weaviate/issues/1540) on GitHub). The RESTful APIs are mostly used for DB management and CRUD operations. The GraphQL API is mostly used to access data objects in Weaviate, whether it's a simple lookup or a combination of scalar and vector search. The APIs support the following user needs, roughly speaking:
-* **Adding, retrieving, updating and deleting data CRUD** -> RESTful API
-* **Weaviate management operations** -> RESTful API
-* **Data search** -> GraphQL API
-* **Explorative data search** -> GraphQL API
-* **Data analysis (meta data)** -> GraphQL API
-* **Near real time on very large datasets in production** -> Client libraries (Python, Go, Java, JavaScript) using both APIs under the hood
-* **Easy to integrate in applications** -> Client libraries (Python, Go, Java, JavaScript) using both APIs under the hood
+- **Adding, retrieving, updating and deleting data CRUD** -> RESTful API
+- **Weaviate management operations** -> RESTful API
+- **Data search** -> GraphQL API
+- **Explorative data search** -> GraphQL API
+- **Data analysis (meta data)** -> GraphQL API
+- **Near real time on very large datasets in production** -> Client libraries (Python, Go, Java, JavaScript) using both APIs under the hood
+- **Easy to integrate in applications** -> Client libraries (Python, Go, Java, JavaScript) using both APIs under the hood
## GraphQL
### Why GraphQL?
+
We have chosen to use a GraphQL API, for multiple reasons:
-* **Data structure**.
- * Data in Weaviate follows a class-property structure. Data objects can be queried by their class and properties with GraphQL.
- * It is possible to link data in Weaviate with cross-references. A Graph query language like GraphQL is very useful here.
-* **Performance**.
- * With GraphQL, there is no over/under-fetching. You get back exactly the information about data objects that you query, nothing more and nothing less. This is beneficial for performance.
- * Reducing the number of requests. With GraphQl, you can make highly efficient and precise queries that usually require many more queries with a traditional RESTful API for the same results.
-* **User Experience**
- * Reducing complexity.
- * Less error-prone (because of its typed schema)
- * Custom design
- * Data exploration and fuzzy search is possible
+- **Data structure**.
+ - Data in Weaviate follows a class-property structure. Data objects can be queried by their class and properties with GraphQL.
+ - It is possible to link data in Weaviate with cross-references. A Graph query language like GraphQL is very useful here.
+- **Performance**.
+ - With GraphQL, there is no over/under-fetching. You get back exactly the information about data objects that you query, nothing more and nothing less. This is beneficial for performance.
+ - Reducing the number of requests. With GraphQl, you can make highly efficient and precise queries that usually require many more queries with a traditional RESTful API for the same results.
+- **User Experience**
+ - Reducing complexity.
+ - Less error-prone (because of its typed schema)
+ - Custom design
+ - Data exploration and fuzzy search is possible
### GraphQL Design Principles
+
GraphQL queries are designed to be intuitive and fit Weaviate's features. [This article on Hackernoon](https://hackernoon.com/how-weaviates-graphql-api-was-designed-t93932tl) tells you more about how GraphQL API was designed (note that examples show an older Weaviate and GraphQL API version). The following three points are key in the design:
-* **Natural language**. The GraphQL queries follow a natural language pattern as much as possible. The function of a query is easy to understand and queries are easy to write and remember. An example query where you can recognize human language is: "*Get* the *title* of the *Articles* where the *wordcount* is *greater than* *1000*. The most important words in this query are also used in the GraphQL query:
+- **Natural language**. The GraphQL queries follow a natural language pattern as much as possible. The function of a query is easy to understand and queries are easy to write and remember. An example query where you can recognize human language is: "_Get_ the _title_ of the _Articles_ where the _wordcount_ is _greater than_ _1000_. The most important words in this query are also used in the GraphQL query:
```graphql
{
Get {
- Article(where: {
- path: ["wordCount"], # Path to the property that should be used
- operator: GreaterThan, # operator
- valueInt: 1000 # value (which is always = to the type of the path property)
- }) {
+ Article(
+ where: {
+ path: ["wordCount"] # Path to the property that should be used
+ operator: GreaterThan # operator
+ valueInt: 1000 # value (which is always = to the type of the path property)
+ }
+ ) {
title
}
}
@@ -68,7 +72,7 @@ GraphQL queries are designed to be intuitive and fit Weaviate's features. [This
There are currently three main functions in a GraphQL request: "Get{}", "Explore{}" and "Aggregate{}".
-* **Classes & properties**. Data in Weaviate has a class-property structure, where cross-references may appear between data object. The class name of the data to return is written one layer deeper than the 'main function'. The next layer consists of the properties and cross-reference properties to return per class:
+- **Classes & properties**. Data in Weaviate has a class-property structure, where cross-references may appear between data object. The class name of the data to return is written one layer deeper than the 'main function'. The next layer consists of the properties and cross-reference properties to return per class:
```graphql
{
@@ -90,16 +94,16 @@ There are currently three main functions in a GraphQL request: "Get{}", "Explore
}
```
-* **Query filters (search arguments) dependent on database setup**. You can add filters on class level to filter objects. Scalar (`where` filters) can be combined with vector (`near<...>`) filters. Depending on your Weaviate setup (which modules you have connected), additional filters may be used. A filter can look like (using the [`qna-transformers` module](/weaviate/modules/qna-transformers.md)):
+- **Query filters (search arguments) dependent on database setup**. You can add filters on class level to filter objects. Scalar (`where` filters) can be combined with vector (`near<...>`) filters. Depending on your Weaviate setup (which modules you have connected), additional filters may be used. A filter can look like (using the [`qna-transformers` module](/weaviate/modules/qna-transformers.md)):
```graphql
{
Get {
Article(
ask: {
- question: "Who is the king of the Netherlands?",
+ question: "Who is the king of the Netherlands?"
properties: ["summary"]
- },
+ }
limit: 1
) {
title
@@ -127,7 +131,7 @@ This will not result in any user-facing API changes. As of May 2023, gRPC has be
## Weaviate Console
-The [Weaviate Console](https://weaviate.io/go/console?utm_source=docs&utm_content=others) is a dashboard to manage Weaviate clusters from WCD, and access Weaviate instances running elsewhere. You can use the Query Module to make GraphQL queries.
+The [Weaviate Console](/go/console?utm_content=others) is a dashboard to manage Weaviate clusters from WCD, and access Weaviate instances running elsewhere. You can use the Query Module to make GraphQL queries.

@@ -136,15 +140,16 @@ The [Weaviate Console](https://weaviate.io/go/console?utm_source=docs&utm_conten
Weaviate has several client libraries: in [Go](/weaviate/client-libraries/go.md), [Java](/weaviate/client-libraries/java/index.mdx), [Python](/weaviate/client-libraries/python/index.mdx) and [TypeScript/JavaScript](/weaviate/client-libraries/typescript/index.mdx). The client libraries in all languages support all API functions. Some clients, e.g. the Python client, have additional functionality, such as full schema management and batching operations. This way, Weaviate is easy to use in custom projects. The APIs are intuitive to use, so it is easy to integrate Weaviate into your existing data landscape.
## Further resources
+
:::info Related pages
+
- [References: GraphQL API](../api/graphql/index.md)
- [References: RESTful API](/weaviate/api/rest).
- [References: Client Libraries](../client-libraries/index.mdx).
-:::
-
+ :::
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/configuration/_enterprise-usage-collector.md b/docs/weaviate/configuration/_enterprise-usage-collector.md
index 73f0d938e..1c11ecefa 100644
--- a/docs/weaviate/configuration/_enterprise-usage-collector.md
+++ b/docs/weaviate/configuration/_enterprise-usage-collector.md
@@ -5,13 +5,13 @@ image: og/docs/configuration.jpg
# tags: ['configuration']
---
-
+
When using Weaviate Enterprise, a proxy service is placed in between the user (or load balancer) and Weaviate. The service measures how Weaviate is used without sending through any sensitive information (e.g., function, durations, payload sizes). Below you can find an outline on how to add the proxy service to your setup.
## 1. Collect a Weaviate Enterprise Token
-- Login into the [Weaviate Console](https://weaviate.io/go/console?utm_source=docs&utm_content=howto).
+- Login into the [Weaviate Console](/go/console?utm_content=howto).
- Click the profile symbol in the top menu and collect the key, which is shown to you. Note, this key is a secret, and you should not make this available in public repositories.
## 2. Add the Weaviate Enterprise Usage Collector to your Docker Compose file
@@ -20,21 +20,21 @@ If you are using the Docker Compose file from the installation configurator, you
```yaml
services:
- enterprise-proxy:
- image: cr.weaviate.io/semitechnologies/weaviate-enterprise-usage-collector:latest
- environment:
- - weaviate_enterprise_token=[[ WEAVIATE TOKEN ]]
- - weaviate_enterprise_project=[[ PROJECT NAME ]]
- links:
- - "weaviate:weaviate.com"
- ports:
- - "8080:8080"
- depends_on:
- - weaviate
+ enterprise-proxy:
+ image: cr.weaviate.io/semitechnologies/weaviate-enterprise-usage-collector:latest
+ environment:
+ - weaviate_enterprise_token=[[ WEAVIATE TOKEN ]]
+ - weaviate_enterprise_project=[[ PROJECT NAME ]]
+ links:
+ - "weaviate:weaviate.com"
+ ports:
+ - "8080:8080"
+ depends_on:
+ - weaviate
```
-* `weaviate_enterprise_token` = is the token you collected in the previous step.
-* `weaviate_enterprise_project` = can be any identifier picked by you to identify the Weaviate cluster. For example, if you have a development and production setup, you might choose `weaviate_enterprise_project=my-project-dev` and `weaviate_enterprise_project=my-project-prod`.
+- `weaviate_enterprise_token` = is the token you collected in the previous step.
+- `weaviate_enterprise_project` = can be any identifier picked by you to identify the Weaviate cluster. For example, if you have a development and production setup, you might choose `weaviate_enterprise_project=my-project-dev` and `weaviate_enterprise_project=my-project-prod`.
## 3. Set the Weaviate ports to redirect to the proxy
@@ -44,8 +44,8 @@ Because you will route all traffic through the Enterprise proxy, you have to mak
services:
weaviate:
command:
- - --port
- - '4000' # <== SET TO 4000
+ - --port
+ - "4000" # <== SET TO 4000
# rest of the docker-compose.yml
```
@@ -60,6 +60,7 @@ Obtain your token as described in step 1.
Get a Weaviate [helm chart](https://github.com/weaviate/weaviate-helm/releases) of version `||site.helm_version||` or higher.
Enable the proxy and configure the proxy using the `collector_proxy` key from the `values.yaml` like so:
+
```
collector_proxy:
enabled: true
@@ -74,9 +75,8 @@ collector_proxy:
Deploy the helm chart and make sure to use the proxy service for your requests.
-
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/configuration/compression/pq-compression.md b/docs/weaviate/configuration/compression/pq-compression.md
index 222667ec3..d84d99a82 100644
--- a/docs/weaviate/configuration/compression/pq-compression.md
+++ b/docs/weaviate/configuration/compression/pq-compression.md
@@ -48,7 +48,7 @@ For new collections, use AutoPQ. AutoPQ automates triggering of the PQ training
AutoPQ requires asynchronous indexing.
- **Open-source Weaviate users**: To enable AutoPQ, set the environment variable `ASYNC_INDEXING=true` and restart your Weaviate instance.
-- [**Weaviate Cloud (WCD)**](https://weaviate.io/go/console?utm_source=docs&utm_content=howto/) users: Enable async indexing through the WCD Console and restart your Weaviate instance.
+- [**Weaviate Cloud (WCD)**](/go/console?utm_content=howto/) users: Enable async indexing through the WCD Console and restart your Weaviate instance.
### 2. Configure PQ
diff --git a/docs/weaviate/connections/connect-cloud.mdx b/docs/weaviate/connections/connect-cloud.mdx
index 9eaec112b..770e38def 100644
--- a/docs/weaviate/connections/connect-cloud.mdx
+++ b/docs/weaviate/connections/connect-cloud.mdx
@@ -19,11 +19,11 @@ import CSharpCode from "!!raw-loader!/_includes/code/csharp/ConnectionTest.cs";
-Follow these steps to connect to a [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=howto/) instance.
+Follow these steps to connect to a [Weaviate Cloud (WCD)](/go/console?utm_content=howto/) instance.
## Retrieve your API key and REST endpoint
-Open the [Weaviate Cloud console](https://weaviate.io/go/console?utm_source=docs&utm_content=howto/) and follow the steps below:
+Open the [Weaviate Cloud console](/go/console?utm_content=howto/) and follow the steps below:
@@ -15,11 +15,11 @@ Use the query tool to work interactively with clusters hosted in Weaviate Cloud
## Open the query tool
-To use the query tool, open your [WCD Dashboard](https://weaviate.io/go/console?utm_source=docs&utm_content=howto).
+To use the query tool, open your [WCD Dashboard](/go/console?utm_content=howto).
In the left-hand menu, click the Query tool icon.
-
+
## Select a Weaviate instance
@@ -29,9 +29,9 @@ To select a cluster, Click the `Query` button and choose a cluster from the clus
### Pass authentication details
-import ExternalAuth from '/_includes/wcs/query-auth-details.mdx';
+import ExternalAuth from "/_includes/wcs/query-auth-details.mdx";
-
+
### Pass inference keys
@@ -51,14 +51,14 @@ The header can pass multiple keys.
This example uses [keyword search](/weaviate/search/bm25) to query a movie database. The [GraphiQL editor](https://graphqleditor.com/docs/) helps you to build the query on the left hand side of the screen. When you run the query, it displays the results on the right hand side.
-import QueryAppExample from '/docs/cloud/img/query-app-example.jpg';
+import QueryAppExample from "/docs/cloud/img/query-app-example.jpg";
-
+
For more information about the GraphQL API, see the [GraphQL API](/weaviate/api/graphql).
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from "/_includes/docs-feedback.mdx";
-
+
diff --git a/docs/weaviate/model-providers/weaviate/index.md b/docs/weaviate/model-providers/weaviate/index.md
index ffdaeeb3e..a91a4bd28 100644
--- a/docs/weaviate/model-providers/weaviate/index.md
+++ b/docs/weaviate/model-providers/weaviate/index.md
@@ -33,7 +33,7 @@ In turn, they simplify the process of building AI-driven applications to speed u
## Get started
-You must provide a valid Weaviate Cloud API key to Weaviate for these integrations. Go to [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=howto/) to sign up and obtain an API key.
+You must provide a valid Weaviate Cloud API key to Weaviate for these integrations. Go to [Weaviate Cloud](/go/console?utm_content=howto/) to sign up and obtain an API key.
Then, go to the relevant integration page to learn how to configure Weaviate with the Weaviate Embeddings models and start using them in your applications.
@@ -41,6 +41,6 @@ Then, go to the relevant integration page to learn how to configure Weaviate wit
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/quickstart/index.md b/docs/weaviate/quickstart/index.md
index 658dcb0ef..3202df97d 100644
--- a/docs/weaviate/quickstart/index.md
+++ b/docs/weaviate/quickstart/index.md
@@ -12,29 +12,29 @@ import Tooltip from "/src/components/Tooltip";
import styles from "/src/components/CardsSection/styles.module.scss";
export const quickstartOptions = [
- {
- title: (
- <>
- Vectorize objects during import
-
- (recommended)
- >
- ),
- description:
- "Import objects and vectorize them with the Weaviate Embeddings service.",
- link: "?import=vectorization#create-a-collection",
- icon: "fas fa-arrows-spin",
- groupId: "import",
- activeTab: "vectorization",
- },
- {
- title: "Import vectors",
- description: "Import pre-computed vector embeddings along with your data.",
- link: "?import=custom-embeddings#create-a-collection",
- icon: "fas fa-circle-nodes",
- groupId: "import",
- activeTab: "custom-embeddings",
- },
+{
+title: (
+<>
+Vectorize objects during import
+
+(recommended)
+>
+),
+description:
+"Import objects and vectorize them with the Weaviate Embeddings service.",
+link: "?import=vectorization#create-a-collection",
+icon: "fas fa-arrows-spin",
+groupId: "import",
+activeTab: "vectorization",
+},
+{
+title: "Import vectors",
+description: "Import pre-computed vector embeddings along with your data.",
+link: "?import=custom-embeddings#create-a-collection",
+icon: "fas fa-circle-nodes",
+groupId: "import",
+activeTab: "custom-embeddings",
+},
];
Weaviate is an open-source vector database built to power AI applications. This quickstart guide will show you how to:
@@ -103,7 +103,7 @@ After you create a Weaviate Cloud instance, you will need the:
- **REST Endpoint URL** and the
- **Administrator API Key**.
-You can retrieve them both from the [WCD console](https://weaviate.io/go/console?utm_source=docs&utm_content=quickstart) as shown in the interactive example below.
+You can retrieve them both from the [WCD console](/go/console?utm_content=quickstart) as shown in the interactive example below.
@@ -167,7 +167,7 @@ There are two paths you can choose from when importing data:
The following example creates a collection called `Movie`. The data will be vectorized with the Weaviate Embeddings model provider. You are also free to use any other available [embedding model provider](../model-providers/index.md).
-import CreateCollection from "/_includes/code/quickstart/quickstart.short.create_collection.mdx";
+import CreateCollection from "/\_includes/code/quickstart/quickstart.short.create_collection.mdx";
@@ -176,7 +176,7 @@ import CreateCollection from "/_includes/code/quickstart/quickstart.short.create
The following example creates a collection called `Movie`. The data should already contain the pre-computed vector embeddings. This option is useful for when you are migrating data from a different vector database.
-import CreateCollectionCustomVectors from "/_includes/code/quickstart/quickstart.short.import_vectors.create_collection.mdx";
+import CreateCollectionCustomVectors from "/\_includes/code/quickstart/quickstart.short.import_vectors.create_collection.mdx";
@@ -190,7 +190,7 @@ import CreateCollectionCustomVectors from "/_includes/code/quickstart/quickstart
Semantic search finds results based on meaning. This is called `nearText` in Weaviate. The following example searches for 2 objects (_limit_) whose meaning is most similar to that of `sci-fi`.
-import QueryNearText from "/_includes/code/quickstart/quickstart.short.query.neartext.mdx";
+import QueryNearText from "/\_includes/code/quickstart/quickstart.short.query.neartext.mdx";
@@ -199,7 +199,7 @@ import QueryNearText from "/_includes/code/quickstart/quickstart.short.query.nea
Semantic search finds results based on meaning. This is called `nearVector` in Weaviate. The following example searches for 2 objects (_limit_) whose vector is most similar to the query vector.
-import QueryNearVectorImportVectors from "/_includes/code/quickstart/quickstart.short.import_vectors.query.nearvector.mdx";
+import QueryNearVectorImportVectors from "/\_includes/code/quickstart/quickstart.short.import_vectors.query.nearvector.mdx";
@@ -238,7 +238,7 @@ Retrieval augmented generation (RAG), also called generative search, works by pr
The following example combines the semantic search for the query `sci-fi` with a prompt to generate a tweet using the Anthropic generative model ([`generative-anthropic`](../model-providers/anthropic/generative.md)).
-import QueryRAG from "/_includes/code/quickstart/quickstart.short.query.rag.mdx";
+import QueryRAG from "/\_includes/code/quickstart/quickstart.short.query.rag.mdx";
@@ -249,7 +249,7 @@ Retrieval augmented generation (RAG), also called generative search, works by pr
The following example combines the vector similarity search with a prompt to generate a tweet using the Anthropic generative model ([`generative-anthropic`](../model-providers/anthropic/generative.md)).
-import QueryRAGCustomVectors from "/_includes/code/quickstart/quickstart.short.import-vectors.query.rag.mdx";
+import QueryRAGCustomVectors from "/\_includes/code/quickstart/quickstart.short.import-vectors.query.rag.mdx";
@@ -278,7 +278,7 @@ Are you ready to see how deep the rabbit hole goes? 🔴🔵 #TheMatrix #WakeUp
The [Weaviate Query Agent](/agents/query/index.md) is a pre-built agentic service designed to answer natural language queries based on the data stored in Weaviate Cloud. The user simply provides a prompt/question in natural language, and the Query Agent takes care of all intervening steps to provide an answer.
-import QueryAgentQuickstart from "/_includes/code/quickstart/quickstart.short.query-agent.mdx";
+import QueryAgentQuickstart from "/\_includes/code/quickstart/quickstart.short.query-agent.mdx";
@@ -290,12 +290,12 @@ Movie: The Matrix - A computer hacker learns about the true nature of reality an
## Next steps
-import NextSteps from "/_includes/quickstart.short.nextsteps.mdx";
+import NextSteps from "/\_includes/quickstart.short.nextsteps.mdx";
## Questions and feedback
-import DocsFeedback from "/_includes/docs-feedback.mdx";
+import DocsFeedback from "/\_includes/docs-feedback.mdx";
diff --git a/docs/weaviate/recipes/hybrid_search_mistral_embed.md b/docs/weaviate/recipes/hybrid_search_mistral_embed.md
index 3f108e124..bdd38d539 100644
--- a/docs/weaviate/recipes/hybrid_search_mistral_embed.md
+++ b/docs/weaviate/recipes/hybrid_search_mistral_embed.md
@@ -5,8 +5,9 @@ title: "Hybrid Search with Mistral"
featured: False
integration: False
agent: False
-tags: ['Hybrid Search', 'Mistral']
+tags: ["Hybrid Search", "Mistral"]
---
+
[](https://colab.research.google.com/github/weaviate/recipes/blob/main/weaviate-features/model-providers/mistral/hybrid_search_mistral_embed.ipynb)
# Hybrid Search with Mistral
@@ -16,10 +17,11 @@ This recipe will show you how to run hybrid search with embeddings from Mistral.
## Requirements
1. Weaviate cluster
- 1. You can create a 14-day free sandbox on [WCD](https://weaviate.io/go/console?utm_source=docs&utm_content=recipe/)
- 2. [Embedded Weaviate](https://docs.weaviate.io/deploy/installation-guides/embedded)
- 3. [Local deployment](https://docs.weaviate.io/deploy/installation-guides/docker-installation)
- 4. [Other options](https://docs.weaviate.io/deploy)
+
+ 1. You can create a 14-day free sandbox on [WCD](/go/console?utm_content=recipe/)
+ 2. [Embedded Weaviate](https://docs.weaviate.io/deploy/installation-guides/embedded)
+ 3. [Local deployment](https://docs.weaviate.io/deploy/installation-guides/docker-installation)
+ 4. [Other options](https://docs.weaviate.io/deploy)
2. Mistral API key. Grab one [here](https://docs.mistral.ai/api/).
@@ -86,6 +88,7 @@ print(client.is_ready())
```
## Create a collection
+
> Collection stores your data and vector embeddings.
```python
diff --git a/docs/weaviate/recipes/multi-vector-colipali-rag.md b/docs/weaviate/recipes/multi-vector-colipali-rag.md
index 5f7248ca8..afb5bc98a 100644
--- a/docs/weaviate/recipes/multi-vector-colipali-rag.md
+++ b/docs/weaviate/recipes/multi-vector-colipali-rag.md
@@ -5,8 +5,9 @@ title: "Multi-vector RAG: Using Weaviate to search a collection of PDF documents
featured: False
integration: False
agent: False
-tags: ['ColPali', 'Named Vectors']
+tags: ["ColPali", "Named Vectors"]
---
+
[](https://colab.research.google.com/github/weaviate/recipes/blob/main/weaviate-features/multi-vector/multi-vector-colipali-rag.ipynb)
# Multimodal RAG over PDFs using ColQwen2, Qwen2.5, and Weaviate
@@ -17,9 +18,9 @@ We will be performing retrieval against a collection of PDF documents by embeddi
For this purpose, we will use
- **A multimodal [late-interaction model](https://weaviate.io/blog/late-interaction-overview)**, like ColPali and ColQwen2, to generate
-embeddings. This tutorial uses the publicly available model
-[ColQwen2-v1.0](https://huggingface.co/vidore/colqwen2-v1.0) with a permissive Apache 2.0 license.
-- **A Weaviate [vector database](https://weaviate.io/blog/what-is-a-vector-database)**, which has a [multi-vector feature](https://docs.weaviate.io/weaviate/tutorials/multi-vector-embeddings) to effectively index a collection of PDF documents and support textual queries against the contents of the documents, including both text and figures.
+ embeddings. This tutorial uses the publicly available model
+ [ColQwen2-v1.0](https://huggingface.co/vidore/colqwen2-v1.0) with a permissive Apache 2.0 license.
+- **A Weaviate [vector database](https://weaviate.io/blog/what-is-a-vector-database)**, which has a [multi-vector feature](https://docs.weaviate.io/weaviate/tutorials/multi-vector-embeddings) to effectively index a collection of PDF documents and support textual queries against the contents of the documents, including both text and figures.
- **A vision language model (VLM)**, specifically [Qwen/Qwen2.5-VL-3B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct), to support multimodal Retrieval-Augmented Generation (RAG).
Below, you can see the multimodal RAG system overview:
@@ -100,6 +101,7 @@ dataset = load_dataset("weaviate/arXiv-AI-papers-multi-vector", split="train")
```
Python output:
+
```text
README.md: 0%| | 0.00/530 [00:00<?, ?B/s]
@@ -107,17 +109,20 @@ n40_p10_images.parquet: 0%| | 0.00/201M [00:00<?, ?B/s]
Generating train split: 0%| | 0/399 [00:00<?, ? examples/s]
```
+
```python
dataset
```
Python output:
+
```text
Dataset({
features: ['page_id', 'paper_title', 'paper_arxiv_id', 'page_number', 'colqwen_embedding', 'page_image'],
num_rows: 399
})
```
+
```python
dataset[398]
```
@@ -165,10 +170,12 @@ print(f"Using attention implementation: {attn_implementation}")
```
Python output:
+
```text
Using device: cuda:0
Using attention implementation: eager
```
+
```python
model_name = "vidore/colqwen2-v1.0"
@@ -185,6 +192,7 @@ processor = ColQwen2Processor.from_pretrained(model_name)
```
Python output:
+
```text
adapter_config.json: 0%| | 0.00/728 [00:00<?, ?B/s]
@@ -222,6 +230,7 @@ video_preprocessor_config.json: 0%| | 0.00/54.0 [00:00<?, ?B/s]
chat_template.json: 0.00B [00:00, ?B/s]
```
+
This notebook uses the ColQwen2 model because it has a permissive Apache 2.0 license.
Alternatively, you can also use [ColPali](https://huggingface.co/vidore/colpali-v1.2), which has a Gemma license, or check out other available [ColVision models](https://github.com/illuin-tech/colpali). For a detailed comparison, you can also refer to [ViDoRe: The Visual Document Retrieval Benchmark](https://huggingface.co/spaces/vidore/vidore-leaderboard)
@@ -263,6 +272,7 @@ print(query_embedding.shape)
```
Python output:
+
```text
tensor([[[ 2.0630e-02, -8.6426e-02, -7.1289e-02, ..., 5.1758e-02,
-3.0365e-03, 1.1084e-01],
@@ -293,6 +303,7 @@ tensor([[[ 2.0630e-02, -8.6426e-02, -7.1289e-02, ..., 5.1758e-02,
-1.3828e-04, -5.7617e-02]]], device='cuda:0', dtype=torch.bfloat16)
torch.Size([2, 755, 128])
```
+
```python
# Sample query inputs
queries = [
@@ -312,6 +323,7 @@ print(query_embedding.shape)
```
Python output:
+
```text
tensor([[[ 0.0000, -0.0000, -0.0000, ..., -0.0000, 0.0000, 0.0000],
[ 0.0000, -0.0000, -0.0000, ..., -0.0000, 0.0000, 0.0000],
@@ -331,6 +343,7 @@ tensor([[[ 0.0000, -0.0000, -0.0000, ..., -0.0000, 0.0000, 0.0000],
device='cuda:0', dtype=torch.bfloat16)
torch.Size([2, 22, 128])
```
+
Let's write a class to wrap the multimodal late-interaction model and its embedding functionalities for convenience.
```python
@@ -382,17 +395,19 @@ print(query_embeddings[0].shape) # torch.Size([20, 128])
```
Python output:
+
```text
torch.Size([755, 128])
torch.Size([20, 128])
```
+
## Step 4: Connect to a Weaviate vector database instance
Now, you will need to connect to a running Weaviate vector database cluster.
You can choose one of the following options:
-1. **Option 1:** You can create a 14-day free sandbox on the managed service [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=recipe/)
+1. **Option 1:** You can create a 14-day free sandbox on the managed service [Weaviate Cloud (WCD)](/go/console?utm_content=recipe/)
2. **Option 2:** [Embedded Weaviate](https://docs.weaviate.io/deploy/installation-guides/embedded)
3. **Option 3:** [Local deployment](https://docs.weaviate.io/deploy/installation-guides/docker-installation)
4. [Other options](https://docs.weaviate.io/deploy)
@@ -424,9 +439,11 @@ print(client.is_ready())
```
Python output:
+
```text
True
```
+
For this tutorial, you will need the Weaviate `v1.29.0` or higher.
Let's make sure we have the required version:
@@ -435,9 +452,11 @@ client.get_meta()['version']
```
Python output:
+
```text
'1.32.4'
```
+
## Step 5: Create a collection
Next, we will create a collection that will hold the embeddings of the images of the PDF document pages.
@@ -518,6 +537,7 @@ del dataset
```
Python output:
+
```text
Added 1/399 Page objects to Weaviate.
Added 26/399 Page objects to Weaviate.
@@ -536,26 +556,30 @@ Added 326/399 Page objects to Weaviate.
Added 351/399 Page objects to Weaviate.
Added 376/399 Page objects to Weaviate.
```
+
```python
len(collection)
```
Python output:
+
```text
399
```
+
## Step 7: Multimodal Retrieval Query
As an example of what we are going to build, consider the following actual demo query and resulting PDF page from our collection (nearest neighbor):
- Query: "How does DeepSeek-V2 compare against the LLaMA family of LLMs?"
-- Nearest neighbor: "DeepSeek-V2: A Strong Economical and Efficient Mixture-of-Experts Language Model" (arXiv: 2405.04434), Page: 1.
+- Nearest neighbor: "DeepSeek-V2: A Strong Economical and Efficient Mixture-of-Experts Language Model" (arXiv: 2405.04434), Page: 1.
```python
query = "How does DeepSeek-V2 compare against the LLaMA family of LLMs?"
```
Python output:
+
```text
Running cells with 'Python 3.13.5' requires the ipykernel package.
@@ -563,6 +587,7 @@ Install 'ipykernel' into the Python environment.
Command: '/opt/homebrew/bin/python3 -m pip install ipykernel -U --user --force-reinstall'
```
+
By inspecting the first page of the [DeepSeek-V2 paper](https://arxiv.org/abs/2405.04434), we see that it does indeed contain a figure that is relevant for answering our query:
@@ -591,11 +616,13 @@ for i, o in enumerate(response.objects):
```
Python output:
+
```text
The most relevant documents for the query "How does DeepSeek-V2 compare against the LLaMA family of LLMs?" by order of relevance:
1) MaxSim: 23.12, Title: "DeepSeek-V2: A Strong Economical and Efficient Mixture-of-Experts Language Model" (arXiv: 2405.04434), Page: 1
```
+
The retrieved page with the highest MaxSim score is indeed the page with the figure we mentioned earlier.
```python
@@ -752,6 +779,7 @@ qwenvl = QwenVL()
```
Python output:
+
```text
config.json: 0.00B [00:00, ?B/s]
@@ -781,6 +809,7 @@ You have video processor config saved in `preprocessor.json` file which is depre
chat_template.json: 0.00B [00:00, ?B/s]
```
+
The response from `Qwen2.5-VL-3B-Instruct` based on the retrieved PDF pages:
```python
@@ -788,9 +817,11 @@ qwenvl.query_images(query, result_images)
```
Python output:
+
```text
'DeepSeek-V2 achieves significantly stronger performance than the LLaMA family of LLMs, while also saving 42.5% of training costs and boosting the maximum generation throughput to 5.76 times.'
```
+
As you can see, the multimodal RAG pipeline was able to answer the original query: "How does DeepSeek-V2 compare against the LLaMA family of LLMs?". For this, the ColQwen2 retrieval model retrieved the correct PDF page from the
"DeepSeek-V2: A Strong Economical and Efficient Mixture-of-Experts Language Model" paper and used both the text and visual from the retrieved PDF page to answer the question.
diff --git a/docs/weaviate/recipes/rag_llama_3.1_nemotron_51b_instruct.md b/docs/weaviate/recipes/rag_llama_3.1_nemotron_51b_instruct.md
index cb65eabef..6a2ecaf4e 100644
--- a/docs/weaviate/recipes/rag_llama_3.1_nemotron_51b_instruct.md
+++ b/docs/weaviate/recipes/rag_llama_3.1_nemotron_51b_instruct.md
@@ -5,8 +5,9 @@ title: "Generate new content with NVIDIA models and RAG"
featured: False
integration: False
agent: False
-tags: ['Generative Search', 'RAG', 'NVIDIA']
+tags: ["Generative Search", "RAG", "NVIDIA"]
---
+
[](https://colab.research.google.com/github/weaviate/recipes/blob/main/weaviate-features/model-providers/nvidia/rag_llama_3.1_nemotron_51b_instruct.ipynb)
# Generative Search with NVIDIA
@@ -16,10 +17,11 @@ In this demo, we will use an embedding and generative model on NVIDIA to generat
## Requirements
1. Weaviate cluster
- 1. You can create a 14-day free sandbox on [WCD](https://weaviate.io/go/console?utm_source=docs&utm_content=recipe/)
- 2. [Embedded Weaviate](https://docs.weaviate.io/deploy/installation-guides/embedded)
- 3. [Local deployment](https://docs.weaviate.io/deploy/installation-guides/docker-installation)
- 4. [Other options](https://docs.weaviate.io/deploy)
+
+ 1. You can create a 14-day free sandbox on [WCD](/go/console?utm_content=recipe/)
+ 2. [Embedded Weaviate](https://docs.weaviate.io/deploy/installation-guides/embedded)
+ 3. [Local deployment](https://docs.weaviate.io/deploy/installation-guides/docker-installation)
+ 4. [Other options](https://docs.weaviate.io/deploy)
2. NVIDIA NIM API key. Grab one [here](https://build.nvidia.com/models).
3. Weaviate client version `4.11.0` or newer
@@ -61,9 +63,11 @@ print(client.is_ready())
```
Python output:
+
```text
True
```
+
**Embedded Weaviate**
```python
@@ -97,6 +101,7 @@ True
```
## Create a collection
+
Collection stores your data and vector embeddings.
Full list of [generative models](https://weaviate.io/developers/weaviate/model-providers/octoai/generative#available-models)
@@ -129,9 +134,11 @@ print("Successfully created collection: BlogChunks.")
```
Python output:
+
```text
Successfully created collection: BlogChunks.
```
+
## Chunk and Import Data
We need to break our blog posts into smaller chunks
@@ -172,9 +179,11 @@ blog_chunks[0]
```
Python output:
+
```text
'---\ntitle: What is Ref2Vec and why you need it for your recommendation system\nslug: ref2vec-centroid\nauthors: [connor]\ndate: 2022-11-23\ntags: [\'integrations\', \'concepts\']\nimage: ./img/hero.png\ndescription: "Weaviate introduces Ref2Vec, a new module that utilises Cross-References for Recommendation!"\n---\n\n\n\n\nWeaviate 1.16 introduced the [Ref2Vec](/developers/weaviate/modules/retriever-vectorizer-modules/ref2vec-centroid) module. In this article, we give you an overview of what Ref2Vec is and some examples in which it can add value such as recommendations or representing long objects. ## What is Ref2Vec? The name Ref2Vec is short for reference-to-vector, and it offers the ability to vectorize a data object with its cross-references to other objects. The Ref2Vec module currently holds the name ref2vec-**centroid** because it uses the average, or centroid vector, of the cross-referenced vectors to represent the **referencing** object.'
```
+
```python
# Insert the objects (chunks) into the Weaviate cluster
@@ -219,6 +228,7 @@ for o in response.objects:
```
Python output:
+
```text
{
"content": "---\ntitle: What is Ref2Vec and why you need it for your recommendation system\nslug: ref2vec-centroid\nauthors: [connor]\ndate: 2022-11-23\ntags: ['integrations', 'concepts']\nimage: ./img/hero.png\ndescription: \"Weaviate introduces Ref2Vec, a new module that utilises Cross-References for Recommendation!\"\n---\n\n\n\n\nWeaviate 1.16 introduced the [Ref2Vec](/developers/weaviate/modules/retriever-vectorizer-modules/ref2vec-centroid) module. In this article, we give you an overview of what Ref2Vec is and some examples in which it can add value such as recommendations or representing long objects. ## What is Ref2Vec? The name Ref2Vec is short for reference-to-vector, and it offers the ability to vectorize a data object with its cross-references to other objects. The Ref2Vec module currently holds the name ref2vec-**centroid** because it uses the average, or centroid vector, of the cross-referenced vectors to represent the **referencing** object."
@@ -230,9 +240,11 @@ Python output:
"content": "Although all the query does is provide the ID of the User object, Ref2Vec has done the hard work by inferring a centroid vector from the User's references to other vectors. And as the set of references continues to evolve, the Ref2Vec vectors will continue to evolve also, ensuring that the User vector remains up-to-date with their latest interests. Whether your goal is to construct a Home Feed interface for users or to pair with search queries, Ref2Vec provides a strong foundation to enable Recommendation with fairly low overhead. For example, it can achieve personalized re-ranking, also known as a session-based recommendation, without persisting user data over a long sequence of interactions. A new user could have personalization available after a few interactions on the app which will help them quickly settle in and feel at home, helping to overcome what is known as the cold-start problem."
}
```
+
### Generative Search Query
Here is what happens in the below:
+
1. We will retrieve 3 relevant chunks from our vector database
2. We will pass the 3 chunks to NVIDIA to generate the short paragraph about Ref2Vec
@@ -253,6 +265,7 @@ for o in response.objects:
```
Python output:
+
```text
Here is a short paragraph about Ref2Vec:
diff --git a/docs/weaviate/recipes/weaviate_embeddings_service.md b/docs/weaviate/recipes/weaviate_embeddings_service.md
index c6fd95b2f..95ec191c9 100644
--- a/docs/weaviate/recipes/weaviate_embeddings_service.md
+++ b/docs/weaviate/recipes/weaviate_embeddings_service.md
@@ -5,17 +5,19 @@ title: "How to Use Weaviate Embedding Service"
featured: True
integration: False
agent: False
-tags: ['Weaviate Embeddings', 'Weaviate Cloud']
+tags: ["Weaviate Embeddings", "Weaviate Cloud"]
---
+
[](https://colab.research.google.com/github/weaviate/recipes/weaviate-services/embedding-service/weaviate_embeddings_service.ipynb)
# Weaviate Embedding Service
-[Weaviate Embeddings](https://docs.weaviate.io/cloud/embeddings) enables you to generate embeddings directly from a [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=recipe/) database instance.
+[Weaviate Embeddings](https://docs.weaviate.io/cloud/embeddings) enables you to generate embeddings directly from a [Weaviate Cloud](/go/console?utm_content=recipe/) database instance.
-*Please note this service is part of Weaviate Cloud and cannot be accessed through open-source. Additionally, this service is currently under technical preview, and you can request access [here](https://events.weaviate.io/embeddings-preview).*
+_Please note this service is part of Weaviate Cloud and cannot be accessed through open-source. Additionally, this service is currently under technical preview, and you can request access [here](https://events.weaviate.io/embeddings-preview)._
This notebook will show you how to:
+
1. Define a Weaviate Collection
1. Run a vector search query
1. Run a hybrid search query
@@ -24,7 +26,7 @@ This notebook will show you how to:
## Requirements
-1. Weaviate Cloud (WCD) account: You can register [here](https://weaviate.io/go/console?utm_source=docs&utm_content=recipe/)
+1. Weaviate Cloud (WCD) account: You can register [here](/go/console?utm_content=recipe/)
1. Create a cluster on WCD: A sandbox or serverless cluster is fine. You will need to grab the cluster URL and admin API key
1. OpenAI key to access `GPT-4o mini`
@@ -72,9 +74,11 @@ print(client.is_ready())
```
Python output:
+
```text
True
```
+
## Define Collection
```python
@@ -108,9 +112,11 @@ print("Successfully created collection: JeopardyQuestion.")
```
Python output:
+
```text
Successfully created collection: JeopardyQuestion.
```
+
## Import Data
We will use the small jeopardy dataset as an example. It has 1,000 objects.
@@ -145,9 +151,11 @@ else:
```
Python output:
+
```text
Insert complete.
```
+
```python
# count the number of objects
@@ -158,9 +166,11 @@ print(response.total_count)
```
Python output:
+
```text
1000
```
+
## Query Time
### Vector Search
@@ -178,6 +188,7 @@ for item in response.objects:
```
Python output:
+
```text
Data: {
"value": "NaN",
@@ -193,6 +204,7 @@ Data: {
"category": "MAMMALS"
}
```
+
### Hybrid Search
The goal of this notebook is to show you how to use the embedding service. For more information on hybrid search, check out [this folder](https://github.com/weaviate/recipes/tree/main/weaviate-features/hybrid-search) and/or the [documentation](https://docs.weaviate.io/weaviate/search/hybrid).
@@ -215,6 +227,7 @@ for item in response.objects:
```
Python output:
+
```text
Data: {
"value": "NaN",
@@ -230,6 +243,7 @@ Data: {
"category": "MAMMALS"
}
```
+
### Fetch Objects with Metadata Filters
Learn more about the different filter operators [here](https://docs.weaviate.io/weaviate/search/filters).
@@ -247,6 +261,7 @@ for item in response.objects:
```
Python output:
+
```text
Data: {
"value": "$200",
@@ -262,6 +277,7 @@ Data: {
"category": "BUSINESS & INDUSTRY"
}
```
+
### Generative Search (RAG)
```python
@@ -278,6 +294,7 @@ print(f"Generated output: {response.generated}")
```
Python output:
+
```text
Generated output: People thought these animals were unicorn-like for a few reasons:
diff --git a/docs/weaviate/starter-guides/which-weaviate.md b/docs/weaviate/starter-guides/which-weaviate.md
index f2b1fc2f4..cad2a4c00 100644
--- a/docs/weaviate/starter-guides/which-weaviate.md
+++ b/docs/weaviate/starter-guides/which-weaviate.md
@@ -15,6 +15,7 @@ This page helps you to find the right combination for your project.
## Deploy Weaviate
Weaviate can be deployed in the following ways:
+
- [Embedded Weaviate](/deploy/installation-guides/embedded.md)
- [Docker-Compose](/deploy/installation-guides/docker-installation.md)
- [Weaviate Cloud (WCD)](/deploy/installation-guides/weaviate-cloud.md)
@@ -24,6 +25,7 @@ Weaviate can be deployed in the following ways:
## Vectorization options
When adding data objects to Weaviate, you have two choices:
+
- Specify the object vector directly.
- Use a Weaviate vectorizer module to generate the object vector.
@@ -44,7 +46,7 @@ If you are evaluating Weaviate, we recommend using one of these instance types t
- [Weaviate Cloud (WCD)](/cloud) sandbox
- [Embedded Weaviate](/deploy/installation-guides/embedded)
-Use an inference-API based text vectorizer with your instance, for example, `text2vec-cohere`, `text2vec-huggingface`, `text2vec-openai`, or `text2vec-google`.
+Use an inference-API based text vectorizer with your instance, for example, `text2vec-cohere`, `text2vec-huggingface`, `text2vec-openai`, or `text2vec-google`.
The [Quickstart guide](/weaviate/quickstart) uses a WCD sandbox and an API based vectorizer to run the examples.
@@ -52,7 +54,7 @@ The [Quickstart guide](/weaviate/quickstart) uses a WCD sandbox and an API based
For development, we recommend using
-- [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial) or [Docker Compose](/deploy/installation-guides/docker-installation.md).
+- [Weaviate Cloud (WCD)](/go/console?utm_content=tutorial) or [Docker Compose](/deploy/installation-guides/docker-installation.md).
- A vectorization strategy that matches your production vectorization strategy.
#### Docker-Compose vs. Weaviate Cloud (WCD)
@@ -68,12 +70,14 @@ Note that Embedded Weaviate is currently not recommended for serious development
For development, we recommend using a vectorizer module that at least approximates your needs.
As a first point, you must choose:
+
- Whether to vectorize data yourself and import it into Weaviate, or
- To use a Weaviate vectorizer module.
Then, we recommend choosing a vectorizer module that is as close as possible to your production needs. For example, if search quality is of paramount importance, we suggest using your preferred vectorizer module in development as well.
Keep in mind two other factors, which are cost, and their footprint.
+
- Vectorization, such as with an API-based vectorizer, can be expensive. This is especially true if you are dealing with very large datasets.
- Vector lengths can vary by a factor of ~5, which will impact both your storage and memory requirements. This can ultimately impact cost down the line.
@@ -99,9 +103,8 @@ Some model types such as Ollama or Transformers models are locally hosted, while
We recommend reviewing from the available [model integrations](../model-providers/index.md) and their availability in different Weaviate setups. Then, choose the one that best fits your needs.
-
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/tutorials/_console.md b/docs/weaviate/tutorials/_console.md
index 74b909a7a..487c192c2 100644
--- a/docs/weaviate/tutorials/_console.md
+++ b/docs/weaviate/tutorials/_console.md
@@ -7,15 +7,15 @@ image: og/docs/quickstart-tutorial.jpg
Here you can learn how to use the Weaviate console.
-The Weaviate console allows you to connect to Weaviate instances that are running on the [Weaviate Cloud (WCD)](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial) (our SaaS solution), on your own cluster, on your local machine, or all the public demo datasets. Note that the console never collects any data from your Weaviate instance; you can safely connect every instance, also over VPN.
+The Weaviate console allows you to connect to Weaviate instances that are running on the [Weaviate Cloud (WCD)](/go/console?utm_content=tutorial) (our SaaS solution), on your own cluster, on your local machine, or all the public demo datasets. Note that the console never collects any data from your Weaviate instance; you can safely connect every instance, also over VPN.
:::tip
-The console is available on: [console.weaviate.cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial).
+The console is available on: [console.weaviate.cloud](/go/console?utm_content=tutorial).
:::
## Login page
-When opening the [Weaviate Console](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial), you'll see two options:
+When opening the [Weaviate Console](/go/console?utm_content=tutorial), you'll see two options:
1. ["Sign in with the Weaviate Cloud"](#weaviate-cloud)
2. ["Self-hosted Weaviate"](#connect-to-a-self-hosted-weaviate)
@@ -24,7 +24,7 @@ When opening the [Weaviate Console](https://weaviate.io/go/console?utm_source=do
Use Weaviate Cloud to create Shared Cloud instances on our infrastructure. Self-hosted and Shared Cloud instances offer the same features. The main difference is that you don't have to manage the server or infrastructure for a Shared Cloud instance.
-import SandBoxExpiry from '/_includes/sandbox.expiry.mdx';
+import SandBoxExpiry from '/\_includes/sandbox.expiry.mdx';
@@ -45,7 +45,7 @@ When you're connected, you can use the [GraphiQL](#graphiql) interface to intera
## Try out the console with your own instance
-1. Go to: [https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial)
+1. Go to: [/go/console?utm_content=tutorial](/go/console?utm_content=tutorial)
2. In the Self-hosted Weaviate section, provide the endpoint of you instance. If you run Weaviate locally this will be `http://localhost:8080`.
3. Click "connect"
@@ -55,9 +55,9 @@ The console might ask to downgrade to HTTP. This is done to avoid [CORS](https:/
## Recap
-* You can use the Weaviate Console to connect to any Weaviate instance.
-* You can use the Weaviate Console to connect to the Weaviate Cloud to create Shared Cloud instances.
-* Because Weaviate uses GraphQL, you can easily query it with the console's GraphiQL integration.
+- You can use the Weaviate Console to connect to any Weaviate instance.
+- You can use the Weaviate Console to connect to the Weaviate Cloud to create Shared Cloud instances.
+- Because Weaviate uses GraphQL, you can easily query it with the console's GraphiQL integration.
## What next?
@@ -68,6 +68,6 @@ The console might ask to downgrade to HTTP. This is done to avoid [CORS](https:/
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/tutorials/collection-aliases.mdx b/docs/weaviate/tutorials/collection-aliases.mdx
index e16234ccb..9feb45c8e 100644
--- a/docs/weaviate/tutorials/collection-aliases.mdx
+++ b/docs/weaviate/tutorials/collection-aliases.mdx
@@ -23,7 +23,7 @@ In this tutorial, we will explore how to use **collection aliases** in Weaviate
Before starting this tutorial, ensure you have the following:
-- An instance of Weaviate (e.g. on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial), or locally), version `v1.32` or newer.
+- An instance of Weaviate (e.g. on [Weaviate Cloud](/go/console?utm_content=tutorial), or locally), version `v1.32` or newer.
- Your preferred Weaviate [client library](../client-libraries/index.mdx) installed.
- Basic familiarity with Weaviate collections and data import.
diff --git a/docs/weaviate/tutorials/import.mdx b/docs/weaviate/tutorials/import.mdx
index 6e84c6889..1f0ba18cd 100644
--- a/docs/weaviate/tutorials/import.mdx
+++ b/docs/weaviate/tutorials/import.mdx
@@ -17,7 +17,7 @@ In this tutorial, we will explore how to efficiently import large datasets into
Before starting this tutorial, ensure you have:
-- An instance of Weaviate (e.g. on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial), or locally), version `v1.33` or newer for server-side batching
+- An instance of Weaviate (e.g. on [Weaviate Cloud](/go/console?utm_content=tutorial), or locally), version `v1.33` or newer for server-side batching
- Your preferred Weaviate [client library](../client-libraries/index.mdx) installed
- An API key for your inference API (OpenAI, Cohere, etc.) if using vectorization
- A dataset to import (we'll provide a sample)
diff --git a/docs/weaviate/tutorials/multi-vector-embeddings.md b/docs/weaviate/tutorials/multi-vector-embeddings.md
index c463f0c69..c4c027bd5 100644
--- a/docs/weaviate/tutorials/multi-vector-embeddings.md
+++ b/docs/weaviate/tutorials/multi-vector-embeddings.md
@@ -9,9 +9,8 @@ image: og/docs/tutorials.jpg
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import FilteredTextBlock from '@site/src/components/Documentation/FilteredTextBlock';
-import PyCode from '!!raw-loader!/docs/weaviate/tutorials/_includes/multi-vector-embeddings.py';
-import TSCode from '!!raw-loader!/docs/weaviate/tutorials/_includes/multi-vector-embeddings.ts';
-
+import PyCode from '!!raw-loader!/docs/weaviate/tutorials/\_includes/multi-vector-embeddings.py';
+import TSCode from '!!raw-loader!/docs/weaviate/tutorials/\_includes/multi-vector-embeddings.ts';
In this section, we will explore how to use multi-vector embeddings in Weaviate. Multi-vector embeddings (implemented through models like ColBERT, ColPali, or ColQwen) represent each object or query using multiple vectors instead of a single vector. This approach enables more precise searching through "late interaction" - a technique that matches individual parts of texts rather than comparing them as whole units.
@@ -19,10 +18,10 @@ In this section, we will explore how to use multi-vector embeddings in Weaviate.
Before starting this tutorial, ensure you have the following:
-- An instance of Weaviate (e.g. on [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial), or locally), version `v1.29` or newer.
+- An instance of Weaviate (e.g. on [Weaviate Cloud](/go/console?utm_content=tutorial), or locally), version `v1.29` or newer.
- Your preferred Weaviate client library installed.
- An API key for Jina AI
- - A free, "toy" key can be obtained from [Jina AI](https://jina.ai/).
+ - A free, "toy" key can be obtained from [Jina AI](https://jina.ai/).
:::tip See the Quickstart guide
For information on how to set up Weaviate and install the client library, see the [cloud](../quickstart/index.md) or [local](../quickstart/local.md) Quickstart guide.
@@ -95,11 +94,13 @@ Late interaction takes advantage of this structure by finding the best match for
A late interaction search:
+
1. Compares each query vector against each object vector
1. Combines these token-level comparisons to produce a final similarity score
-
+
This approach often leads to better search results, as it can capture more nuanced relationships between objects.
+
:::
@@ -585,6 +586,6 @@ Once the data has been ingested, you can perform semantic, hybrid, and vector se
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/tutorials/query.md b/docs/weaviate/tutorials/query.md
index 07bbddd14..a75f1eca8 100644
--- a/docs/weaviate/tutorials/query.md
+++ b/docs/weaviate/tutorials/query.md
@@ -6,7 +6,7 @@ image: og/docs/tutorials.jpg
# tags: ['basics']
---
-import UpdateInProgressNote from '/_includes/update-in-progress.mdx';
+import UpdateInProgressNote from '/\_includes/update-in-progress.mdx';
@@ -20,7 +20,7 @@ We recommend you complete the [Quickstart tutorial](docs/weaviate/quickstart/ind
Before you start this tutorial, you should follow the steps in the Quickstart to have:
-- An instance of Weaviate running (e.g. on the [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial)),
+- An instance of Weaviate running (e.g. on the [Weaviate Cloud](/go/console?utm_content=tutorial)),
- An API key for your preferred inference API, such as OpenAI, Cohere, or Hugging Face,
- Installed your preferred Weaviate client library,
- Set up a `Question` class in your schema, and
@@ -40,11 +40,11 @@ The Weaviate function for retrieving objects is `Get`.
This might be familiar for some of you. If you have completed our [Imports in detail tutorial](./import.mdx), you may have performed a `Get` query to confirm that the data import was successful. Here is the same code as a reminder:
-import CodeImportGet from '/_includes/code/quickstart.import.get.mdx';
+import CodeImportGet from '/\_includes/code/quickstart.import.get.mdx';
-This query simply asks Weaviate for *some* objects of this (`Question`) class.
+This query simply asks Weaviate for _some_ objects of this (`Question`) class.
Of course, in most cases we would want to retrieve information on some criteria. Let's build on this query by adding a vector search.
@@ -52,7 +52,7 @@ Of course, in most cases we would want to retrieve information on some criteria.
This is a vector search using a `Get` query.
-import CodeAutoschemaNeartext from '/_includes/code/quickstart/neartext.mdx'
+import CodeAutoschemaNeartext from '/\_includes/code/quickstart/neartext.mdx'
@@ -64,7 +64,7 @@ Also note here that we pass the API key in the header. This is required as the i
Additionally, we use the `limit` argument to only fetch a maximum of two (2) objects.
-If you run this query, you should see the entries on *"DNA"* and *"species"* returned by Weaviate.
+If you run this query, you should see the entries on _"DNA"_ and _"species"_ returned by Weaviate.
### `Get` with `nearVector`
@@ -105,7 +105,7 @@ You might also have noticed that we have added a `certainty` argument in the `wi
We can ask Weaviate to return `_additional` properties for any returned objects. This allows us to obtain properties such as the `vector` of each returned object as well as the actual `certainty` value, so we can verify how close each object is to our query vector. Here is a query that will return the `certainty` value:
-import CodeQueryNeartextAdditional from '/_includes/code/quickstart.query.neartext.additional.mdx'
+import CodeQueryNeartextAdditional from '/\_includes/code/quickstart.query.neartext.additional.mdx'
@@ -113,28 +113,28 @@ Try it out, and you should see a response like this:
```json
{
- "data": {
- "Get": {
- "Question": [
- {
- "_additional": {
- "certainty": 0.9030631184577942
- },
- "answer": "DNA",
- "category": "SCIENCE",
- "question": "In 1953 Watson & Crick built a model of the molecular structure of this, the gene-carrying substance"
- },
- {
- "_additional": {
- "certainty": 0.900638073682785
- },
- "answer": "species",
- "category": "SCIENCE",
- "question": "2000 news: the Gunnison sage grouse isn't just another northern sage grouse, but a new one of this classification"
- }
- ]
+ "data": {
+ "Get": {
+ "Question": [
+ {
+ "_additional": {
+ "certainty": 0.9030631184577942
+ },
+ "answer": "DNA",
+ "category": "SCIENCE",
+ "question": "In 1953 Watson & Crick built a model of the molecular structure of this, the gene-carrying substance"
+ },
+ {
+ "_additional": {
+ "certainty": 0.900638073682785
+ },
+ "answer": "species",
+ "category": "SCIENCE",
+ "question": "2000 news: the Gunnison sage grouse isn't just another northern sage grouse, but a new one of this classification"
}
+ ]
}
+ }
}
```
@@ -150,7 +150,7 @@ In these cases, you can use Weaviate's scalar filtering capabilities - either al
Try the following:
-import CodeQueryWhere1 from '/_includes/code/quickstart.query.where.1.mdx'
+import CodeQueryWhere1 from '/\_includes/code/quickstart.query.where.1.mdx'
@@ -158,32 +158,32 @@ This query asks Weaviate for **Question** objects whose category contains the st
```json
{
- "data": {
- "Get": {
- "Question": [
- {
- "answer": "the diamondback rattler",
- "category": "ANIMALS",
- "question": "Heaviest of all poisonous snakes is this North American rattlesnake"
- },
- {
- "answer": "Elephant",
- "category": "ANIMALS",
- "question": "It's the only living mammal in the order Proboseidea"
- },
- {
- "answer": "the nose or snout",
- "category": "ANIMALS",
- "question": "The gavial looks very much like a crocodile except for this bodily feature"
- },
- {
- "answer": "Antelope",
- "category": "ANIMALS",
- "question": "Weighing around a ton, the eland is the largest species of this animal in Africa"
- }
- ]
+ "data": {
+ "Get": {
+ "Question": [
+ {
+ "answer": "the diamondback rattler",
+ "category": "ANIMALS",
+ "question": "Heaviest of all poisonous snakes is this North American rattlesnake"
+ },
+ {
+ "answer": "Elephant",
+ "category": "ANIMALS",
+ "question": "It's the only living mammal in the order Proboseidea"
+ },
+ {
+ "answer": "the nose or snout",
+ "category": "ANIMALS",
+ "question": "The gavial looks very much like a crocodile except for this bodily feature"
+ },
+ {
+ "answer": "Antelope",
+ "category": "ANIMALS",
+ "question": "Weighing around a ton, the eland is the largest species of this animal in Africa"
}
+ ]
}
+ }
}
```
@@ -193,7 +193,7 @@ Now that you've seen a scalar filter, let's see how it can be combined with vect
Combining a filter with a vector search is an additive process. Let us show you what we mean by that.
-import CodeQueryWhere2 from '/_includes/code/quickstart.query.where.2.mdx'
+import CodeQueryWhere2 from '/\_includes/code/quickstart.query.where.2.mdx'
@@ -201,28 +201,28 @@ This query asks Weaviate for **Question** objects that are closest to "biology",
```json
{
- "data": {
- "Get": {
- "Question": [
- {
- "_additional": {
- "certainty": 0.8918434679508209
- },
- "answer": "the nose or snout",
- "category": "ANIMALS",
- "question": "The gavial looks very much like a crocodile except for this bodily feature"
- },
- {
- "_additional": {
- "certainty": 0.8867587149143219
- },
- "answer": "Elephant",
- "category": "ANIMALS",
- "question": "It's the only living mammal in the order Proboseidea"
- }
- ]
+ "data": {
+ "Get": {
+ "Question": [
+ {
+ "_additional": {
+ "certainty": 0.8918434679508209
+ },
+ "answer": "the nose or snout",
+ "category": "ANIMALS",
+ "question": "The gavial looks very much like a crocodile except for this bodily feature"
+ },
+ {
+ "_additional": {
+ "certainty": 0.8867587149143219
+ },
+ "answer": "Elephant",
+ "category": "ANIMALS",
+ "question": "It's the only living mammal in the order Proboseidea"
}
+ ]
}
+ }
}
```
@@ -234,13 +234,13 @@ As the name suggests, the `Aggregate` function can be used to show aggregated da
For example, the following query will return the number of data objects in the `Question` class:
-import CodeQueryAggregate1 from '/_includes/code/quickstart.query.aggregate.1.mdx'
+import CodeQueryAggregate1 from '/\_includes/code/quickstart.query.aggregate.1.mdx'
And you can also use the `Aggregate` function with filters, just as you saw with the `Get` function above. For example, this query will return the number of **Question** objects with the category "ANIMALS".
-import CodeQueryAggregate2 from '/_includes/code/quickstart.query.aggregate.2.mdx'
+import CodeQueryAggregate2 from '/\_includes/code/quickstart.query.aggregate.2.mdx'
@@ -248,17 +248,17 @@ And as you saw above, there are four objects that match the query filter.
```json
{
- "data": {
- "Aggregate": {
- "Question": [
- {
- "meta": {
- "count": 4
- }
- }
- ]
+ "data": {
+ "Aggregate": {
+ "Question": [
+ {
+ "meta": {
+ "count": 4
+ }
}
+ ]
}
+ }
}
```
@@ -268,11 +268,11 @@ As you can see, the `Aggregate` function can return handy aggregated, or metadat
## Recap
-* `Get` queries are used for retrieving data objects.
-* `Aggregate` queries can be used to retrieve metadata, or aggregated data.
-* Operators such as `nearText` or `nearVector` can be used for vector queries.
-* Scalar filters can be used for exact filtering, taking advantage of inverted indexes.
-* Vector and scalar filters can be combined, and are available on both `Get` and `Aggregate` queries
+- `Get` queries are used for retrieving data objects.
+- `Aggregate` queries can be used to retrieve metadata, or aggregated data.
+- Operators such as `nearText` or `nearVector` can be used for vector queries.
+- Scalar filters can be used for exact filtering, taking advantage of inverted indexes.
+- Vector and scalar filters can be combined, and are available on both `Get` and `Aggregate` queries
## Suggested reading
@@ -287,9 +287,8 @@ As you can see, the `Aggregate` function can return handy aggregated, or metadat
`certainty` in Weaviate is a measure of distance from the vector to the data objects. You can also calculate the cosine similarity based on the certainty as described [here](/weaviate/config-refs/distances#distance-vs-certainty).
-
## Questions and feedback
-import DocsFeedback from '/_includes/docs-feedback.mdx';
+import DocsFeedback from '/\_includes/docs-feedback.mdx';
diff --git a/docs/weaviate/tutorials/vectorizer-migration.mdx b/docs/weaviate/tutorials/vectorizer-migration.mdx
index c0ff1cf9d..c5b041f98 100644
--- a/docs/weaviate/tutorials/vectorizer-migration.mdx
+++ b/docs/weaviate/tutorials/vectorizer-migration.mdx
@@ -18,7 +18,7 @@ This tutorial demonstrates two methods for migrating a Weaviate collection to a
Before starting this tutorial, ensure you have:
-- A [Weaviate Cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial) instance (version `v1.32` or newer)
+- A [Weaviate Cloud](/go/console?utm_content=tutorial) instance (version `v1.32` or newer)
- Python 3.8+ installed
- Required Python packages installed:
```bash
@@ -33,7 +33,7 @@ Before starting this tutorial, ensure you have:
:::tip Get started with Weaviate Cloud
-Sign up for a free Weaviate Cloud sandbox at [console.weaviate.cloud](https://weaviate.io/go/console?utm_source=docs&utm_content=tutorial)
+Sign up for a free Weaviate Cloud sandbox at [console.weaviate.cloud](/go/console?utm_content=tutorial)
:::
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 44dff9ba2..126847c58 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -94,6 +94,9 @@ const config = {
remarkPlugins: [remarkReplace, math],
rehypePlugins: [katex],
},
+ pages: {
+ path: "src/pages",
+ },
theme: {
customCss: [
require.resolve("./src/css/custom.scss"),
@@ -144,7 +147,7 @@ const config = {
{
label: "Weaviate Cloud",
className: "cloud-button",
- to: "https://weaviate.io/go/console?utm_source=docs&utm_content=navbar",
+ to: "/go/console?utm_content=navbar",
position: "right",
},
{
diff --git a/src/components/UTM/capture.js b/src/components/UTM/capture.js
new file mode 100644
index 000000000..4f9ebff47
--- /dev/null
+++ b/src/components/UTM/capture.js
@@ -0,0 +1,51 @@
+const UTM_KEYS = [
+ 'utm_source',
+ 'utm_medium',
+ 'utm_campaign',
+ 'utm_content',
+ 'utm_term',
+ 'gclid',
+ 'fbclid',
+ 'msclkid',
+];
+
+const DOCS_DEFAULT_UTMS = {
+ utm_source: 'docs',
+ utm_medium: 'docs',
+ utm_campaign: 'docs-to-console',
+};
+
+function getUtmsFromUrl() {
+ if (typeof window === 'undefined') return {};
+ const q = new URLSearchParams(window.location.search);
+ const out = {};
+ UTM_KEYS.forEach((k) => {
+ const v = q.get(k);
+ if (v) out[k] = v;
+ });
+ return out;
+}
+
+(function saveLastTouchUtmsSitewide() {
+ if (typeof window === 'undefined') return;
+
+ try {
+ const urlUtms = getUtmsFromUrl();
+ const existingRaw = window.localStorage.getItem('first_touch_utms');
+ const existing = existingRaw ? JSON.parse(existingRaw) : null;
+
+ let utmsToSave = null;
+
+ if (Object.keys(urlUtms).length) {
+ utmsToSave = urlUtms;
+ } else if (!existing) {
+ utmsToSave = DOCS_DEFAULT_UTMS;
+ } else {
+ return;
+ }
+
+ window.localStorage.setItem('first_touch_utms', JSON.stringify(utmsToSave));
+ } catch {
+ // ignore storage errors
+ }
+})();
diff --git a/src/pages/go/console.jsx b/src/pages/go/console.jsx
new file mode 100644
index 000000000..dbfb88641
--- /dev/null
+++ b/src/pages/go/console.jsx
@@ -0,0 +1,72 @@
+import React, { useEffect } from "react";
+
+const UTM_KEYS = [
+ "utm_source",
+ "utm_medium",
+ "utm_campaign",
+ "utm_content",
+ "utm_term",
+ "gclid",
+ "fbclid",
+ "msclkid",
+];
+
+function getUtmsFromUrl() {
+ if (typeof window === "undefined") return {};
+ const q = new URLSearchParams(window.location.search);
+ const out = {};
+ UTM_KEYS.forEach((k) => {
+ const v = q.get(k);
+ if (v) out[k] = v;
+ });
+ return out;
+}
+
+function getUtmsFromStorage() {
+ if (typeof window === "undefined") return {};
+ try {
+ const raw = localStorage.getItem("first_touch_utms");
+ return raw ? JSON.parse(raw) : {};
+ } catch {
+ return {};
+ }
+}
+
+function saveFirstTouchUtmsIfMissing() {
+ const existing = getUtmsFromStorage();
+ if (Object.keys(existing).length) return;
+ const now = getUtmsFromUrl();
+ if (!Object.keys(now).length) return;
+ try {
+ localStorage.setItem("first_touch_utms", JSON.stringify(now));
+ } catch {}
+}
+
+function buildConsoleUrl(utms) {
+ const url = new URL("https://console.weaviate.cloud/");
+ Object.entries(utms || {}).forEach(([k, v]) => {
+ if (v != null && v !== "") url.searchParams.set(k, v);
+ });
+ return url.toString();
+}
+
+export default function GoConsole() {
+ useEffect(() => {
+ if (typeof window === "undefined") return;
+
+ saveFirstTouchUtmsIfMissing();
+
+ const current = getUtmsFromUrl();
+ const utms = Object.keys(current).length ? current : getUtmsFromStorage();
+
+ const target = buildConsoleUrl(utms);
+ window.location.replace(target);
+ }, []);
+
+ return (
+
+ );
+}