class_docstr: Handles connection and execution of the Qdrant statements.
class_docstr_tok: ["Handles","connection","and","execution","of","the","Qdrant","statements","."]
docstr: Translate a list of FilterCondition objects a dict that can be used by Qdrant.
  Filtering clause docs can be found here: https://qdrant.tech/documentation/concepts/filtering/
  E.g.,
  [
      FilterCondition(
          column="metadata.created_at",
          op=FilterOperator.LESS_THAN,
          value=7132423,
      ),
      FilterCondition(
          column="metadata.created_at",
          op=FilterOperator.GREATER_THAN,
          value=2323432,
      )
  ]
  -->
  models.Filter(
  must=[
      models.FieldCondition(
          key="created_at",
          match=models.Range(lt=7132423),
      ),
      models.FieldCondition(
          key="created_at",
          match=models.Range(gt=2323432),
      ),
    ]
  )
docstr_tok: ["Translate","a","list","of","FilterCondition","objects","a","dict","that","can","be","used","by","Qdrant",".","Filtering","clause","docs","can","be","found","here",":","https",":","\/\/qdrant.tech\/documentation\/concepts\/filtering\/","E.g.",",","[","FilterCondition","(","column=","''","metadata.created_at","''",",","op=FilterOperator.LESS_THAN",",","value=7132423",",",")",",","FilterCondition","(","column=","''","metadata.created_at","''",",","op=FilterOperator.GREATER_THAN",",","value=2323432",",",")","]","--",">","models.Filter","(","must=","[","models.FieldCondition","(","key=","''","created_at","''",",","match=models.Range","(","lt=7132423",")",",",")",",","models.FieldCondition","(","key=","''","created_at","''",",","match=models.Range","(","gt=2323432",")",",",")",",","]",")"]
code: def _translate_filter_conditions(
      self, conditions: List[FilterCondition]
  ) -> Optional[dict]:
      """
      Translate a list of FilterCondition objects a dict that can be used by Qdrant.
      Filtering clause docs can be found here: https://qdrant.tech/documentation/concepts/filtering/
      E.g.,
      [
          FilterCondition(
              column="metadata.created_at",
              op=FilterOperator.LESS_THAN,
              value=7132423,
          ),
          FilterCondition(
              column="metadata.created_at",
              op=FilterOperator.GREATER_THAN,
              value=2323432,
          )
      ]
      -->
      models.Filter(
      must=[
          models.FieldCondition(
              key="created_at",
              match=models.Range(lt=7132423),
          ),
          models.FieldCondition(
              key="created_at",
              match=models.Range(gt=2323432),
          ),
        ]
      )
      """
      # We ignore all non-metadata conditions
      if conditions is None:
          return None
      filter_conditions = [
          condition
          for condition in conditions
          if condition.column.startswith(TableField.METADATA.value)
      ]
      if len(filter_conditions) == 0:
          return None
  
      qdrant_filters = []
      for condition in filter_conditions:
          payload_key = condition.column.split(".")[-1]
          qdrant_filters.append(
              models.FieldCondition(
                  key=payload_key,
                  **self._get_qdrant_filter(
                      condition.op, condition.value
                  ),
              )
          )
  
      return (
          models.Filter(must=qdrant_filters) if qdrant_filters else None
      )
  
imports: from collections import OrderedDict
  from typing import Any, List, Optional
  from itertools import zip_longest
  from qdrant_client import QdrantClient, models
  import pandas
  from mindsdb.integrations.libs.response import HandlerResponse
  from mindsdb.integrations.libs.const import HANDLER_CONNECTION_ARG_TYPE
  from mindsdb.integrations.libs.response import RESPONSE_TYPE
  from mindsdb.integrations.libs.response import HandlerResponse
  from mindsdb.integrations.libs.response import HandlerStatusResponse
  from mindsdb.integrations.libs.vectordatabase_handler import FilterCondition, FilterOperator, TableField, VectorStoreHandler
  from mindsdb.utilities import log
label_desc: Use image node_id 11 for calling the QdrantHandler obj's underlying member method code with example usage: obj._translate_filter_conditions(conditions) and returns: unknown, None, None