162 Commits

Author SHA1 Message Date
Clément Renault
bae6c98aa3
Stream errors 2025-05-20 12:23:22 +02:00
Clément Renault
42c95cf3c4
Stop the stream when the connexion stops and chnage the events 2025-05-20 12:05:51 +02:00
Clément Renault
4f919db344
Generate a new default chat API key 2025-05-20 11:00:19 +02:00
Clément Renault
295840d07a
Change the /chat route to /chat/completions to be OpenAI-compatible 2025-05-20 10:14:56 +02:00
Clément Renault
c0c3bddda8
Better stop the stream 2025-05-16 17:12:48 +02:00
Clément Renault
10b5fcd4ba
Update the streaming detection to work with Mistral 2025-05-16 15:17:01 +02:00
Clément Renault
8113d4a52e
Make it compatible with the Mistral API 2025-05-16 14:33:53 +02:00
Clément Renault
5964289284
Support base_api in the settings 2025-05-15 18:28:02 +02:00
Clément Renault
6b81854d48
Make clippy happy 2025-05-15 18:16:06 +02:00
Clément Renault
9e5b466426
Display pre-query prompt in search tool response 2025-05-15 18:10:09 +02:00
Clément Renault
43da2bcb8c
Remove useless function 2025-05-15 17:52:26 +02:00
Clément Renault
5e3b126d73
Expose new chat settings routes 2025-05-15 17:48:10 +02:00
Clément Renault
6c034754ca
Factorise a bit the code 2025-05-15 15:39:38 +02:00
Clément Renault
6329cf7ed6
Display the different tool calls we need to do 2025-05-15 11:17:34 +02:00
Clément Renault
e0c8c11a94
Send an event with the content of the tool calling 2025-05-14 17:15:32 +02:00
Clément Renault
6e8b371111
Streaming supports tool calling 2025-05-14 14:58:01 +02:00
Clément Renault
da7d651f4b
Nearly support tools on the streaming route 2025-05-14 14:29:41 +02:00
Clément Renault
24050f06e4
Return the right message format 2025-05-14 12:03:43 +02:00
Clément Renault
af482d8ee9
Aggregate tool calls and display the calls to make. 2025-05-14 11:53:03 +02:00
Clément Renault
7d62307739
Implement a first version of a streamed chat API 2025-05-14 11:18:21 +02:00
Clément Renault
3a71df7b5a
Make it work by retrieving content from the index 2025-05-13 16:35:46 +02:00
Clément Renault
ac39a436d9
Support overwriten prompts of the search query 2025-05-13 16:33:58 +02:00
Clément Renault
e5c963a170
Support querying the index named main 2025-05-13 15:26:24 +02:00
Clément Renault
9baf2ce1a6
Introduce the first version of the /chat route that mimics the OpenAI API 2025-05-13 11:19:32 +02:00
DanasFi
fd0623c085 Fix typo in function to get size until task queue stops 2025-04-17 10:48:56 +02:00
DanasFi
eeb33b913c Corrected metric for task queue total size 2025-04-17 10:46:26 +02:00
DanasFi
3d93efc6aa Added metric to check task queue size until stop 2025-04-17 10:46:25 +02:00
DanasFi
425ef1b205 Added task queue used size metric 2025-04-17 10:45:02 +02:00
DanasFi
f607449cb7 Added metric for task queue total size. 2025-04-17 10:45:02 +02:00
Tamo
b025f1bcf1
Merge branch 'main' into release-v1.14.0-tmp 2025-04-14 12:35:47 +02:00
Louis Dureuil
c3c5a928e4
Merge pull request #5486 from CodeMan62/fix-network-url-validation-error-msg
Update network URL validation error message format to match expected
2025-04-03 10:42:33 +00:00
Louis Dureuil
7ca2a8eb6f
Use url::Url::parse to check the url 2025-04-03 11:57:36 +02:00
CodeMan62
c2ff4dd3b2 Apply cargo fmt changes 2025-04-02 19:08:46 +05:30
CodeMan62
fce0fa9c57 Update network URL validation error message format to match expected pattern 2025-04-02 00:19:50 +05:30
Clément Renault
a0bfcf8872
Make cargo fmt happy 2025-04-01 11:27:41 +02:00
Clément Renault
4d90e3d2ec
Make Cargo and Clippy happy 2025-04-01 11:26:34 +02:00
Kerollmops
db7ce03763
Improve the performances of computing the size of the documents database 2025-03-26 17:40:12 +01:00
shu-kitamura
537bf27e7c
Update crates/meilisearch/src/routes/tasks_test.rs
Co-authored-by: Many the fish <many@meilisearch.com>
2025-03-19 19:11:04 +09:00
shu-kitamura
c7564d500f Split unit test in tasks.rs 2025-03-17 22:55:23 +09:00
meili-bors[bot]
a12b06d99d
Merge #5369
5369: exhaustive facet search r=ManyTheFish a=ManyTheFish

Fixes #5403

This PR adds an `exhaustiveFacetCount` field to the `/facet-search` API allowing the end-user to have a better facet count when having a distinct attribute set in the index settings.

 # Usage

`POST /index/:index_uid/facet-search`
**Body:**
```json
{
  "facetQuery": "blob",
  "facetName": "genres",
  "q": "",
  "exhaustiveFacetCount": true
}
```

# Prototype Docker images

```sh
$ docker pull getmeili/meilisearch:prototype-exhaustive-facet-search-00
```

Co-authored-by: ManyTheFish <many@meilisearch.com>
2025-03-13 10:36:04 +00:00
meili-bors[bot]
e2d0ce52ba
Merge #5384
5384: Get multiple documents by ids r=irevoire a=dureuill

# Pull Request

## Related issue
Fixes #5345 

## What does this PR do?
- Implements [public usage](https://www.notion.so/meilisearch/Get-documents-by-ID-1994b06b651f805ba273e1c6b75ce4d8)
- Slightly refactor error messages for the `/similar` route

Co-authored-by: Louis Dureuil <louis@meilisearch.com>
2025-03-12 17:26:49 +00:00
Louis Dureuil
60ff1b19a8
Searching for a document that does not exist no longer raises an error 2025-03-12 11:50:39 +01:00
Louis Dureuil
7df5e3f059
Fix error message
Co-authored-by: Tamo <tamo@meilisearch.com>
2025-03-12 11:48:40 +01:00
ManyTheFish
eb3ff325d1 Add an exhaustiveFacetCount field to the facet-search API 2025-03-12 11:22:59 +01:00
meili-bors[bot]
a2a86ef4e2
Merge #5254
5254: Granular Filterable attribute settings r=ManyTheFish a=ManyTheFish

# Related
**Issue:** https://github.com/meilisearch/meilisearch/issues/5163
**PRD:** https://meilisearch.notion.site/API-usage-Settings-to-opt-out-indexing-features-filterableAttributes-1764b06b651f80aba8bdf359b2df3ca8

# Summary
Change the `filterableAttributes` settings to let the user choose which facet feature he wants to activate or not.
Deactivating a feature will avoid some database computation in the indexing process and save time and disk size.

# Example

`PATCH /indexes/:index_uid/settings`

```json
{
  "filterableAttributes": [
    {
      "patterns": [
        "cattos",
        "doggos.age"
      ],
      "features": {
        "facetSearch": false,
        "filter": {
          "equality": true,
          "comparison": false
        }
      }
    }
  ]
}
```

# Impact on the codebase
- Settings API:
  - `/settings`
  - `/settings/filterable-attributes`
  - OpenAPI 
  - may impact the LocalizedAttributesRules due to the AttributePatterns factorization
- Database:
  - Filterable attributes format changed
  - Faceted field_ids are no more stored in the database
  - FieldIdsMap has no more unexisting fields
- Search:
  - Search using filters
  - Facet search
  - `Attributes` ranking rule
  - Distinct attribute
  - Facet distribution
- Settings reindexing:
  - searchable
  - facet
  - vector
  - geo
- Document indexing:
  - searchable
  - facet
  - vector
  - geo
- Dump import

# Note for the reviewers
The changes are huge and have been split in different commits with a dedicated explanation, I suggest reviewing the commit 1by1

Co-authored-by: ManyTheFish <many@meilisearch.com>
2025-03-12 09:00:43 +00:00
Louis Dureuil
fa8afc5cfd
Style change after review
Co-authored-by: Tamo <tamo@meilisearch.com>
2025-03-11 13:25:35 +01:00
ManyTheFish
6d52c6e711 Merge branch 'main' into granular-filterable-attributes 2025-03-11 10:05:58 +01:00
Louis Dureuil
41d2b1e52b
Analytics 2025-03-10 14:23:07 +01:00
Louis Dureuil
54ee81bb09
Make composite embedders experimental 2025-03-10 14:22:47 +01:00
Louis Dureuil
9d9e0d4c54
Add analytics 2025-03-10 11:33:15 +01:00