Bug parsing array values when using ContainsAny operator

I think weaviate client is not parsing array values correctly when dealing with where filters.
Here’s an example:

where_filter = { 
  'operator': 'ContainsAny',
  'path': 'type',
  'valueText': ["Person"]
}
fragment = (
  client.query
  .get('Label', ['postgresId', 'content', 'type', 'additional_data'])
  .with_additional(["certainty", "id"])
  .with_near_text({ "concepts": ["Albert Einstein"], "certainty": 0.9 })
  .with_limit(10)
  .with_where(where_filter)
  .build()
)
fragment

Here’s the query that was built, you can see redundant quotation marks surrounding the valueText

Current weaviate-client version: 3.15.4

Nevermind y’all.
I updated the client to 3.23.2 and it fixed the issue. Looks like the bug has been fixed in new versions.

1 Like

Thanks for sharing!!