# Qdrant

## Prerequisitos

Una [instancia local de Qdrant](https://qdrant.tech/documentation/quick-start/) o una instancia de Qdrant cloud.

Para obtener una instancia de Qdrant cloud:

1. Dirígete a la sección Clusters del [Cloud Dashboard](https://cloud.qdrant.io/overview).
2. Selecciona **Clusters** y luego haz clic en **+ Create**.

<figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-630b9c27176080d8e3994dee9265d16c0e31293c%2F2.png?alt=media" alt=""><figcaption></figcaption></figure>

3. Elige las configuraciones de tu cluster y la región.
4. Presiona **Create** para aprovisionar tu cluster.

## Configuración

1. Obtén/Crea tu **API Key** desde la sección **Data Access Control** del [Cloud Dashboard](https://cloud.qdrant.io/overview).
2. Añade un nuevo nodo **Qdrant** en el canvas.
3. Crea una nueva credencial de Qdrant usando el API Key

<figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-41e3dad83c446b3f784c4e13c0df5b95d7c95d5e%2F1.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

4. Ingresa la información requerida en el nodo **Qdrant**:
   * URL del servidor Qdrant
   * Nombre de la colección

<figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-58dc5cd72c1de02b4f013079c2d481f15771f616%2F3.png?alt=media" alt="" width="239"><figcaption></figcaption></figure>

5. La entrada **Document** puede conectarse con cualquier nodo de la categoría [**Document Loader**](https://docs.flowiseai.com/espanol/documentacion-oficial/integraciones/langchain/document-loaders).
6. La entrada **Embeddings** puede conectarse con cualquier nodo de la categoría [**Embeddings**](https://docs.flowiseai.com/espanol/documentacion-oficial/integraciones/langchain/embeddings).

## Filtrado

Supongamos que tienes diferentes documentos insertados, cada uno especificado con un valor único bajo la clave de metadata `{source}`

<div align="left"><figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-00d83e5ca79746041ab2f4d75559abcca5e107b1%2FScreenshot%202024-03-05%20141551.png?alt=media" alt="" width="563"><figcaption></figcaption></figure> <figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-cd9f5f45f2a6bd82b2074fae769387b1e5004b7d%2FScreenshot%202024-03-05%20141619.png?alt=media" alt="" width="563"><figcaption></figcaption></figure></div>

Entonces, quieres filtrar por este valor. Qdrant soporta la siguiente [sintaxis](https://qdrant.tech/documentation/concepts/filtering/#nested-key) cuando se trata de filtrado:

**UI**

<figure><img src="https://4068692976-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUiD7nOmFRK805sNuiieJ%2Fuploads%2Fgit-blob-3c94a1dc83bf407a373efe2f44cc08a3ffd02bb1%2Fimage%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(2)%20(1)%20(1)%20(1).png?alt=media" alt="" width="338"><figcaption></figcaption></figure>

**API**

```json
"overrideConfig": {
    "qdrantFilter": {
        "should": [
            {
                "key": "metadata.source",
                "match": {
                    "value": "apple"
                }
            }
        ]
    }
}
```

## Recursos

* [Documentación de Qdrant](https://qdrant.tech/documentation/)
* [LangChain JS Qdrant](https://js.langchain.com/docs/integrations/vectorstores/qdrant)
* [Filtros de Qdrant](https://qdrant.tech/documentation/concepts/filtering/#nested-key)
