Udostępnij przez


Używanie syntezy odpowiedzi na potrzeby odpowiedzi opartych na cytatach w usłudze Azure AI Search

Uwaga / Notatka

Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.

Domyślnie baza wiedzy w usłudze Azure AI Search wykonuje wyodrębnianie danych, co zwraca surowe fragmenty ze źródeł wiedzy. Wyodrębnianie danych jest przydatne do pobierania określonych informacji, ale brakuje mu kontekstu i logiki potrzebnej do złożonych zapytań.

Zamiast tego możesz włączyć syntezę odpowiedzi, która używa języka LLM określonego w bazie wiedzy do odpowiadania na zapytania w języku naturalnym. Każda odpowiedź zawiera cytaty do pobranych źródeł i postępuje zgodnie z podanymi instrukcjami, takimi jak używanie list punktowanych.

Syntezę odpowiedzi można włączyć na dwa sposoby:

  • W bazie wiedzy (staje się wartością domyślną dla wszystkich zapytań)
  • W przypadku pojedynczych żądań pobierania (zastępuje wartość domyślną)

Ważne

  • Operacja rozumowania przy pobieraniu minimal wyłącza przetwarzanie LLM, więc jest niekompatybilna z syntezą odpowiedzi zarówno w definicjach bazy wiedzy, jak i w żądaniach pobierania. Aby uzyskać więcej informacji, należy zapoznać się z Ustawianie logiki pobierania.

  • Synteza odpowiedzi wiąże się z opłatami za płatność zgodnie z rzeczywistym użyciem z usługi Azure OpenAI, która jest oparta na liczbie tokenów wejściowych i wyjściowych. Opłaty są wyświetlane w obszarze usługi LLM przypisanej do bazy wiedzy. Aby uzyskać więcej informacji, zobacz Dostępność i ceny wyszukiwania za pomocą agentów.

Wymagania wstępne

Włączanie syntezy odpowiedzi w bazie wiedzy

W tej sekcji wyjaśniono, jak włączyć syntezę odpowiedzi w istniejącej bazie wiedzy. Chociaż ta konfiguracja jest używana dla nowych baz wiedzy, tworzenie bazy wiedzy wykracza poza zakres tego artykułu.

Aby włączyć syntezę odpowiedzi w bazie wiedzy:

  1. Użyj wersji zapoznawczej 2025-11-01-preview bazy wiedzy — tworzenie lub aktualizowanie (interfejs API REST), aby sformułować żądanie.

  2. W treści żądania ustaw wartość outputMode na answerSynthesis.

  3. (Opcjonalnie) Użyj polecenia answerInstructions , aby dostosować dane wyjściowe odpowiedzi. Nasz przykład instruuje bazę wiedzy do Use concise bulleted lists.

@search-url = <YOUR SEARCH SERVICE URL>
@api-key = <YOUR API KEY>
@knowledge-base-name = <YOUR KNOWLEDGE BASE NAME>

### Enable answer synthesis on a knowledge base
PUT {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview  HTTP/1.1
Content-Type: application/json
api-key: {{api-key}}

{
    "name": "{{knowledge-base-name}}",
    "knowledgeSources": [ ... // OMITTED FOR BREVITY ],
    "models": [ ... // OMITTED FOR BREVITY ],
    "outputMode": "answerSynthesis",
    "answerInstructions": "Use concise bulleted lists"
}

Uwaga / Notatka

W tym przykładzie przyjęto założenie, że używasz uwierzytelniania opartego na kluczach na potrzeby lokalnego testowania weryfikacji koncepcji. Zalecamy kontrolę dostępu opartą na rolach dla obciążeń produkcyjnych. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z usługą Azure AI Search przy użyciu ról.

Włączanie syntezy odpowiedzi w żądaniu pobierania

W przypadku kontroli poszczególnych zapytań nad formatem odpowiedzi można włączyć syntezę odpowiedzi w czasie zapytania. Podejście to zastępuje domyślny tryb wyjściowy określony w bazie wiedzy.

Aby włączyć syntezę odpowiedzi na żądanie pobierania:

  1. Użyj wersji 2025-11-01-preview Knowledge Retrieval - Retrieve (API REST), aby sformułować żądanie.

  2. W treści żądania ustaw wartość outputMode na answerSynthesis.

@search-url = <YOUR SEARCH SERVICE URL>
@api-key = <YOUR API KEY>
@knowledge-base-name = <YOUR KNOWLEDGE BASE NAME>

### Enable answer synthesis on a retrieval request
POST {{search-url}}/knowledgebases/{{knowledge-base-name}}/retrieve?api-version=2025-11-01-preview  HTTP/1.1
Content-Type: application/json
api-key: {{api-key}}
        
{
    "messages": [
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "What is healthcare?"
                }
            ]
        }
    ],
    "outputMode": "answerSynthesis"
}

Uwaga / Notatka

W tym przykładzie przyjęto założenie, że używasz uwierzytelniania opartego na kluczach na potrzeby lokalnego testowania weryfikacji koncepcji. Zalecamy kontrolę dostępu opartą na rolach dla obciążeń produkcyjnych. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z usługą Azure AI Search przy użyciu ról.

Uzyskiwanie syntetyzowanej odpowiedzi

Po włączeniu syntezy odpowiedzi pobieranie wiedzy — pobieranie (interfejs API REST) zwraca odpowiedź języka naturalnego na podstawie instrukcji określonych opcjonalnie w bazie wiedzy. Cytaty ze źródeł wiedzy są formatowane jako [ref_id:<number>].

Jeśli na przykład twoje instrukcje to Use concise bulleted lists i zapytanie to What is healthcare?, odpowiedź może wyglądać następująco:

{
  "response": [
    {
      "content": [
        {
          "type": "text",
          "text": "- Healthcare encompasses various services provided to patients and the general population ... // TRIMMED FOR BREVITY"
        }
      ]
    }
  ]
}

Pełne text dane wyjściowe są następujące:

"- Healthcare encompasses various services provided to patients and the general population, including primary health services, hospital care, dental care, mental health services, and alternative health services [ref_id:1].\n- It involves the delivery of safe, effective, patient-centered care through different modalities, such as in-person encounters, shared medical appointments, and group education sessions [ref_id:0].\n- Behavioral health is a significant aspect of healthcare, focusing on the connection between behavior and overall health, including mental health and substance use [ref_id:2].\n- The healthcare system aims to ensure quality of care, access to providers, and accountability for positive outcomes while managing costs effectively [ref_id:2].\n- The global health system is evolving to address complex health needs, emphasizing the importance of cross-sectoral collaboration and addressing social determinants of health [ref_id:4]."

W zależności od konfiguracji bazy wiedzy odpowiedź może zawierać inne informacje, takie jak dzienniki aktywności i tablice referencyjne. Aby uzyskać więcej informacji, zobacz Tworzenie bazy wiedzy.