DashScope RankerCompatible with Milvus 2.6.x

DashScope Ranker를 사용하면 Milvus에서 Alibaba Cloud DashScope 재순위 지정 모델을 호출하여 의미적 관련성에 따라 검색 결과의 순서를 재정렬할 수 있습니다.

사전 준비 사항

DashScope 랭커를 사용하기 전에 다음 사항이 준비되어 있는지 확인하십시오.

  • 재순위를 지정할 텍스트가 포함된 ‘ VARCHAR ’ 필드가 있는 Milvus 컬렉션.

  • 유효한 DashScope API 키.

  • gte-rerank-v2 와 같은 DashScope 재순위 지정 모델에 대한 액세스 권한.

사용 가능한 재순위 지정 모델 및 지역별 엔드포인트에 대해서는 Alibaba Cloud Model Studio Text Rerank API를 참조하십시오.

인증 정보 구성

Milvus는 DashScope에 재순위를 요청하기 전에 사용자의 DashScope API 키를 알아야 합니다. API 키는 milvus.yaml 에서 또는 환경 변수를 통해 구성할 수 있습니다.

옵션 1: 구성 파일

milvus.yaml 에 API 키를 저장하고, DashScope 재순위 지정 제공자를 해당 자격 증명 레이블로 지정하십시오.

# milvus.yaml
credential:
  dashscope_apikey:
    apikey: <YOUR_DASHSCOPE_API_KEY>

function:
  rerank:
    model:
      providers:
        ali:
          credential: dashscope_apikey
          # url: https://dashscope.aliyuncs.com/api/v1/services/rerank/text-rerank/text-rerank

옵션 2: 환경 변수

milvus.yaml 에 일치하는 자격 증명이 설정되어 있지 않은 경우, Milvus는 다음 환경 변수에서 DashScope API 키를 읽어올 수 있습니다:

변수

필수?

설명

MILVUS_DASHSCOPE_API_KEY

Milvus 서비스가 Alibaba Cloud DashScope를 호출하는 데 사용하는 DashScope API 키입니다.

DashScope 랭커 함수 생성

DashScope 랭커를 사용하려면 DashScope 재순위 지정 모델과 쿼리 텍스트를 지정하는 Function 객체를 생성하십시오. DashScope 재순위 지정을 위해 provider: "ali" 를 사용하십시오.

from pymilvus import Function, FunctionType

dashscope_ranker = Function(
    name="dashscope_semantic_ranker",
    input_field_names=["document"],
    function_type=FunctionType.RERANK,
    params={
        "reranker": "model",
        "provider": "ali",
        "model_name": "gte-rerank-v2",
        "queries": ["renewable energy developments"],
        "max_client_batch_size": 128,
        "credential": "dashscope_apikey",
    },
)

DashScope 랭커 전용 매개변수

매개변수

필수 항목인가요?

설명

값 / 예시

reranker

모델 재순위 지정을 활성화하려면 "model" 로 설정해야 합니다.

"model"

provider

재순위 지정에 사용할 모델 서비스 제공자입니다. DashScope의 경우 "ali" 을 사용하십시오.

"ali"

model_name

사용할 DashScope 재순위 지정 모델입니다.

"gte-rerank-v2"

queries

재순위 지정 모델이 관련성 점수를 계산하는 데 사용하는 쿼리 문자열 목록입니다. 쿼리 문자열의 개수는 검색 요청에 포함된 쿼리의 개수와 일치해야 합니다.

["renewable energy developments"]

max_client_batch_size

아니요

요청당 모델 서비스로 전송할 문서의 최대 개수입니다.

128 (기본값)

credential

아니요

milvus.yaml 의 최상위 credential: 섹션에 정의된 자격 증명의 레이블입니다.

"dashscope_apikey"

providerqueries 와 같이 모든 모델 랭커에서 공통으로 사용되는 일반 매개변수에 대해서는 모델 랭커 만들기를 참조하십시오.

DashScope Ranker를 표준 벡터 검색에 적용하려면 search() 에 랭커 함수를 전달하십시오.

results = client.search(
    collection_name="your_collection",
    data=[your_query_vector],
    anns_field="dense_vector",
    limit=5,
    output_fields=["document"],
    ranker=dashscope_ranker,
    consistency_level="Bounded",
)

번역DeepL

관리형 Milvus를 무료로 사용해 보세요

Zilliz Cloud는 번거로움이 없으며, Milvus 기반으로 10배 더 빠릅니다.

시작하기
피드백

이 페이지가 도움이 되었나요?