New features
- Health check endpoint: `GET /health`. An endpoint that can be used to inspect the status of Marqo and Marqo's backend (Marqo-os)
([128](https://github.com/marqo-ai/marqo/pull/128)). Read about usage [here](https://docs.marqo.ai/API-Reference/health/).
- Marqo can be launched with environment variables that define limits around maximum number of fields per index, maximum document size and the maximum number of documents that can be retrieved
([135](https://github.com/marqo-ai/marqo/pull/135)). Read about usage [here](https://docs.marqo.ai/Advanced-Usage/configuration/).
- README translations:
- Chinese π¨π³ (by [wanliAlex](https://github.com/wanliAlex), [#133](https://github.com/marqo-ai/marqo/pull/133))
- Polish π΅π± (by [MichalLuck](https://github.com/MichalLuck), [#136](https://github.com/marqo-ai/marqo/pull/136))
- Ukrainian πΊπ¦ (by [dmyzlata](https://github.com/dmyzlata), [#138](https://github.com/marqo-ai/marqo/pull/138))
- French π«π· (by [rym-oualha](https://github.com/rym-oualha), [#147](https://github.com/marqo-ai/marqo/pull/147))
Breaking API changes
- The home `/` json response has been updated. If you have logic that reads the endpoint root, please update it ([128](https://github.com/marqo-ai/marqo/pull/128)).
- The Python client's `add_documents()` and `update_documents()` `batch_size` parameter has been replaced by `server_batch_size` and `client_batch_size` parameters
([py-marqo27](https://github.com/marqo-ai/py-marqo/pull/27)), ([py-marqo#28](https://github.com/marqo-ai/py-marqo/pull/28))
Non-breaking data model changes
- Each text field just creates a top level Marqo-os text field, without any keywords
([135](https://github.com/marqo-ai/marqo/pull/135))
- Very large fields get their tensor_facet keywords ignored, rather than Marqo-OS preventing the doc being indexed
([135](https://github.com/marqo-ai/marqo/pull/135))
- Tensor facets can no longer have _id as a filtering field
([135](https://github.com/marqo-ai/marqo/pull/135))
Bug fixes and minor changes
- FastAPI runs with better concurrency ([128](https://github.com/marqo-ai/marqo/pull/128))
- Get documents by IDs and lexical search and no longer returns vectors if expose_facets isn't specified
- Fixed batching bug in Python client
([py-marqo28](https://github.com/marqo-ai/py-marqo/pull/28))
Caveats
- If a large request to add_documents or update_documents results in a document adding fields such that the index field limit is exceeded, the entire operation will fail (without resilience). Mitigate this sending `add_documents` and `update_documents` requests with smaller batches of documents.
- For optimal indexing of large volumes of images, we recommend that the images are hosted on the same region and cloud provider as Marqo.
Contributor shout-outs
- For their translation work: [rym-oualha](https://github.com/rym-oualha), [dmyzlata](https://github.com/dmyzlata), [wanliAlex](https://github.com/wanliAlex), [dmyzlata](https://github.com/dmyzlata), [MichalLuck](https://github.com/MichalLuck)
- For raising issues and helping with READMEs: [kdewald](https://github.com/kdewald), [llermaly](https://github.com/llermaly), [namit343](https://github.com/namit343)
- Thank you to our 900+ star gazers and 30+ forkers