Skip to content

Commit 229c5ca

Browse files
Update specification for Hugging Face rerank
1 parent 77a1a89 commit 229c5ca

File tree

8 files changed

+93
-1
lines changed

8 files changed

+93
-1
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"dependencies": {
3-
"@redocly/cli": "^1.34.1",
3+
"@redocly/cli": "^1.34.3",
44
"@stoplight/spectral-cli": "^6.14.2"
55
}
66
}

specification/inference/_types/CommonTypes.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -892,6 +892,7 @@ export class HuggingFaceServiceSettings {
892892
}
893893

894894
export enum HuggingFaceTaskType {
895+
rerank,
895896
text_embedding
896897
}
897898

specification/inference/put_hugging_face/PutHuggingFaceRequest.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,17 @@ import { Id } from '@_types/common'
4444
* * `e5-small-v2`
4545
* * `multilingual-e5-base`
4646
* * `multilingual-e5-small`
47+
*
48+
* For Elastic's `rerank` task:
49+
* The selected model must support the `sentence-ranking` task and expose OpenAI API.
50+
* HuggingFace supports only dedicated (not serverless) endpoints for `Rerank` so far.
51+
* After the endpoint is initialized, copy the full endpoint URL for use.
52+
* Must include task_settings.
53+
* Tested models for `rerank` task:
54+
*
55+
* * `bge-reranker-base`
56+
* * `jina-reranker-v1-turbo-en-GGUF`
57+
*
4758
* @rest_spec_name inference.put_hugging_face
4859
* @availability stack since=8.12.0 stability=stable visibility=public
4960
* @availability serverless stability=stable visibility=public
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
summary: A text embedding task
2+
description: Run `PUT _inference/rerank/hugging-face-rerank` to create an inference endpoint that performs a `rerank` task type.
3+
# method_request: "PUT _inference/rerank/hugging-face-rerank"
4+
# type: "request"
5+
value: |-
6+
{
7+
"service": "hugging_face",
8+
"service_settings": {
9+
"api_key": "hugging-face-access-token",
10+
"url": "url-endpoint"
11+
},
12+
"task_settings": {
13+
"return_text": true
14+
}
15+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
summary: Rerank task
2+
description: Run `POST _inference/rerank/bge-reranker-base-mkn` to perform reranking on the example input via Hugging Face
3+
# method_request: "POST _inference/rerank/bge-reranker-base-mkn"
4+
# type: "request"
5+
value: |-
6+
{
7+
"input": ["luke", "like", "leia", "chewy","r2d2", "star", "wars"],
8+
"query": "star wars main character",
9+
"return_documents": false,
10+
"top_n": 2
11+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
summary: Rerank task
2+
description: Run `POST _inference/rerank/bge-reranker-base-mkn` to perform reranking on the example input via Hugging Face
3+
# method_request: "POST _inference/rerank/bge-reranker-base-mkn"
4+
# type: "request"
5+
value: |-
6+
{
7+
"input": ["luke", "like", "leia", "chewy","r2d2", "star", "wars"],
8+
"query": "star wars main character",
9+
"return_documents": true,
10+
"top_n": 3
11+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
summary: Rerank task
2+
description: >
3+
A successful response from `POST _inference/rerank/bge-reranker-base-mkn`.
4+
# type: "response"
5+
# response_code:
6+
value: |-
7+
{
8+
"rerank": [
9+
{
10+
"index": 6,
11+
"relevance_score": 0.50955844
12+
},
13+
{
14+
"index": 5,
15+
"relevance_score": 0.084341794
16+
}
17+
]
18+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
summary: Rerank task
2+
description: >
3+
A successful response from `POST _inference/rerank/bge-reranker-base-mkn`.
4+
# type: "response"
5+
# response_code:
6+
value: |-
7+
{
8+
"rerank": [
9+
{
10+
"index": 6,
11+
"relevance_score": 0.50955844,
12+
"text": "wars"
13+
},
14+
{
15+
"index": 5,
16+
"relevance_score": 0.084341794,
17+
"text": "star"
18+
},
19+
{
20+
"index": 3,
21+
"relevance_score": 0.004520818,
22+
"text": "chewy"
23+
}
24+
]
25+
}

0 commit comments

Comments
 (0)