Filter By Contents

Filter content by similar content(s) in your Graphlit project.

By specifying the contents field in the GraphQL filter object, you can filter your content by one or more similar contents.

When filtering by similar content, Graphlit will use a content's OpenAI Ada-002 text embeddings, and if it was enabled, CLIP image embeddings, for evaluating similarity in our vector database.

This provides for multi-modal content search, where you can find content by visual similarity, text similarity, or both.

At most, Graphlit will filter on ten similar contents.

For example, here we are filtering just on content that is similar to the content with ID 759bfb27-cc6b-4572-9a70-0d091fbbbe7b.

"contents": [
  { 
    "id": "759bfb27-cc6b-4572-9a70-0d091fbbbe7b"
  }
]

You can specify multiple contents to filter by, and Graphlit will return content that is similar to all content.

"contents": [ 
  { 
    "id": "759bfb27-cc6b-4572-9a70-0d091fbbbe7b"
  },
  { 
    "id": "e522e544-9e08-4dec-a6ea-389a758ea436"
  }
]

Query:

query QueryContents($filter: ContentFilter!) {
  contents(filter: $filter) {
    results {
      id
      name
      creationDate
      state
      owner {
        id
      }
      originalDate
      finishedDate
      workflowDuration
      uri
      text
      type
      fileType
      mimeType
      fileName
      fileSize
      masterUri
      mezzanineUri
      transcriptUri
    }
  }
}

Variables:

{
  "filter": {
    "contents": [
      {
        "id": "759bfb27-cc6b-4572-9a70-0d091fbbbe7b"
      }
    ],
    "offset": 0,
    "limit": 100
  }
}

Response:

{
  "results": [
    {
      "type": "FILE",
      "originalDate": "2023-06-21T00:44:15Z",
      "mimeType": "application/pdf",
      "fileType": "DOCUMENT",
      "fileName": "Unifying Large Language Models and Knowledge Graphs A Roadmap-2306.08302.pdf",
      "fileSize": 3312767,
      "masterUri": "https://graphlit20230701d31d9453.blob.core.windows.net/files/7ecc766e-b793-4abc-8b6a-13a9a50ebbac/Unifying%20Large%20Language%20Models%20and%20Knowledge%20Graphs%20A%20Roadmap-2306.08302.pdf",
      "mezzanineUri": "https://graphlit20230701d31d9453.blob.core.windows.net/files/7ecc766e-b793-4abc-8b6a-13a9a50ebbac/Mezzanine/Unifying%20Large%20Language%20Models%20and%20Knowledge%20Graphs%20A%20Roadmap-2306.08302.json",
      "uri": "https://graphlitplatform.blob.core.windows.net/samples/Unifying%20Large%20Language%20Models%20and%20Knowledge%20Graphs%20A%20Roadmap-2306.08302.pdf",
      "id": "7ecc766e-b793-4abc-8b6a-13a9a50ebbac",
      "name": "Unifying Large Language Models and Knowledge Graphs A Roadmap-2306.08302.pdf",
      "state": "FINISHED",
      "creationDate": "2023-07-03T22:07:19Z",
      "finishedDate": "2023-07-03T22:34:24Z",
      "owner": {
        "id": "9422b73d-f8d6-4faf-b7a9-152250c862a4"
      }
    }
  ]
}

Last updated