Ange hämtningsskälet (förhandsversion)

Observera

Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.

Observera

Vissa funktioner för agentisk hämtning är allmänt tillgängliga i REST-API:et 2026-04-01. Den här funktionen finns dock kvar i förhandsversionen och kräver ett REST API för förhandsversion. Förhandsversionsfunktioner tillhandahålls utan serviceavtal och rekommenderas inte för produktionsarbetsbelastningar. Mer information finns i Supplemental Terms of Use for Microsoft Azure Previews.

Important

Dessa funktioner och denna funktionalitet är en del av REST API-versionen 2026-08-01-preview. Förhandsversionen av 2026-08-01 är licensierad till dig som en del av din Azure-prenumeration och omfattas av de villkor som gäller för "förhandsversioner" i Microsoft Produktvillkor, Microsoft Products and Services Data Protection Addendum ("DPA") och tilläggsvillkoren för användning för Microsoft Azure förhandsversioner.

Förhandsversionen av 2026-08-01 stöder anslutningar till andra Microsoft-tjänster- och tredjepartstjänster. Användningen av dessa tjänster omfattas av deras respektive villkor och kan resultera i databearbetning eller lagring utanför Azure efterlevnadsgräns, samt data som flödar till Azure efterlevnadsgräns.

Det är ditt ansvar att hantera om dina data kommer att flöda utanför organisationens efterlevnad och geografiska gränser och eventuella relaterade konsekvenser, och att lämpliga behörigheter, gränser och godkännanden etableras.

Du ansvarar för att noggrant granska och testa program som du skapar i samband med dina specifika användningsfall och fatta alla lämpliga beslut och anpassningar. Detta omfattar implementering av dina egna ansvarsfulla AI-åtgärder, till exempel metaprompter, innehållsfilter eller andra säkerhetssystem, och att se till att dina program uppfyller lämpliga kvalitets-, tillförlitlighets-, säkerhets- och tillförlitlighetsstandarder. Mer information finns i Azure AI-sökning Transparency Note.

I agentisk hämtning kan du ange nivån för llm-bearbetning (large language model) för frågeplanering och svarsformulering. Använd hämtningsskälet (förhandsversion) för att ange LLM-bearbetningsnivåer som påverkar kostnader och svarstid. Extra LLM-bearbetning förbättrar relevansen, men det tar också längre tid och använder fakturerbara LLM-resurser.

Du kan ange den här egenskapen i en kunskapsbas eller en hämtningsbegäran. Inställningen för kunskapsbasen etablerar standardvärdet för alla frågor, medan inställningen hämta begäran åsidosätter standardinställningen från fråga till fråga. Om ingen av dessa inställningar finns använder lowtjänsten .

Användningsstöd

Azure Portal Microsoft Foundry-portalen .NET SDK Python SDK Java SDK JavaScript SDK REST API
✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Förutsättningar

  • En befintlig kunskapsbas med minst en kunskapskälla och en modellkonfiguration.

  • Behörighet att uppdatera och göra frågor mot kunskapsbaser. Konfigurera nyckellös autentisering med rollerna Search Service Contributor och Search Index Data Reader som tilldelats ditt användarkonto (rekommenderas) eller använd en administratörs-API-nyckel.

  • Det senaste Azure.Search.Documents förhandsversionspaketet: dotnet add package Azure.Search.Documents --prerelease

  • För nyckellös autentisering, paketet Azure.Identity: dotnet add package Azure.Identity

  • Det senaste azure-search-documents förhandsversionspaketet: pip install --pre azure-search-documents

  • För nyckellös autentisering, paketet azure-identity: pip install azure-identity

Välj en resonemangsinsats

Välj ett resonemang baserat på den kompromiss du vill ha mellan svarstid, kostnad och hämtningsdjup.

Resonemangets ansträngningsnivåer

Nivå Beskrivning Rekommendation Gränser
minimal Inaktiverar LLM-baserad frågeplanering för att leverera den lägsta kostnaden och svarstiden för agentisk hämtning. Den utfärdar direkta text- och vektorsökningar mellan de kunskapskällor som anges i kunskapsbasen och returnerar de bästa matchande avsnitten. Eftersom alla kunskapskällor i kunskapsbasen alltid genomsöks och ingen frågeexpansion utförs är beteendet förutsägbart och enkelt att kontrollera. Det innebär också att egenskapen för alwaysQueryKnowledgeSource en hämtningsbegäran ignoreras. Använd minimal för migreringar från sök-API: et eller när du vill hantera frågeplanering själv.
low Standardläget för agentisk hämtning, som kör ett enda pass av LLM-baserad frågeplanering och val av kunskapskälla. Den agentiska hämtningsmotorn genererar underfrågor och fläktar ut dem till de valda kunskapskällorna och sammanfogar sedan resultaten. Du kan aktivera svarssyntes (förhandsversion) för att skapa ett grundat naturligt språksvar med infogade citat. Använd low när du vill ha en balans mellan minimal svarstid och djupare bearbetning.
  • 5 000 svarstoken.
  • Högst 50 dokument för semantisk rangordning och 10 dokument om den semantiska rankaren använder L3-klassificering.
medium Lägger till djupare sökning och en förbättrad hämtningsstack till agentisk hämtning för att maximera fullständigheten. Efter den första sökningen utvärderar en semantisk klassificerare med hög precision de hämtade dokumenten. Om de första resultaten inte är tillräckligt relevanta utför tjänsten en uppföljande iteration med hjälp av en reviderad frågeplan. Använd medium för att maximera verktyget för LLM-assisterad kunskapshämtning.
  • 10 000 svarstoken.
  • Högst 50 dokument för semantisk rangordning och 20 dokument om den semantiska rankaren använder L3-klassificering.
  • Tillgänglig i utvalda regioner.
auto Börjar med ett lätt hämtningspass. Om den första genomgången ger tillräcklig förankring, returnerar tjänsten resultatet. Annars fortsätter det med LLM-baserad frågeplanering, med en ansträngningsnivå på upp till medel. Använd auto när du vill att tjänsten ska balansera hämtningsdjup och svarstid för varje begäran.
  • Kräver REST API för förhandsversionen av 2026-08-01.
  • Kräver en modell på kunskapsbasen.
  • Tillgänglig i alla regioner som stöder agentisk hämtning.
  • Tidigare API-versioner returnerar 400 Bad Request.

Iterativ sökning för mediumåtervinning

Ett medelstort resonemang för hämtning ger iterativ sökning om de första resultaten inte är tillräckligt relevanta. En extra semantisk klassificerarmodell anropas för att avgöra om en andra iteration krävs.

Den semantiska klassificeraren:

  • Identifierar när det finns tillräckligt med kontext för att besvara frågan.

  • Försök igen vid otillräckliga resultat, använder befintlig information för sammanhang. Nya frågor kan öka detaljnivån för mer fokuserad information eller bredda sökningen. Aktivitetsloggen i svaret visar de genererade frågor som används för ett mer omfattande svar.

  • Omvärderar med L3-klassificering. Intervallet är identiskt med L2-rangordningen, ett absolut intervall på noll till 4,0.

Det finns bara ett nytt försök. Varje iteration lägger till svarstid och kostnad, så systemet begränsar återförsök till ett pass. En andra iteration lägger till indatatoken i frågepipelinen, vilket lägger till det totala antalet fakturerbara indatatoken.

Iteration kan återanvända befintliga kunskapskällor eller välja olika källor. I det andra steget väljs den mest lovande kunskapskällan ut för att ge den saknade informationen.

Regionstöd för medelnivå hämtning

Du kan ange ett medelhögt hämtningsskäl om söktjänsten finns i någon av följande regioner:

  • USA, östra 2
  • Östra USA
  • Sydcentrala USA
  • USA, västra 3
  • USA, västra 2
  • Västra USA
  • Tyskland, västra centrala
  • Europa, norra
  • Schweiz, norra
  • Sweden Central
  • Spanien centrala
  • Storbritannien, södra
  • Centrala Korea
  • Japan, östra
  • Sydostasien

Ange arbetsnivån för resonemang i en kunskapsbas

Ange retrievalReasoningEffort i en kunskapsbasdefinition för att ange standardvärdet för frågor i den. auto Resonemangsinsatsen kräver en modellkonfiguration. I följande exempel bevaras den befintliga knowledgeSources och models konfigurationen, resonemanget anges till autooch kunskapsbasen uppdateras.

using Azure.Identity;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;

var endpoint = new Uri("<search-endpoint>");
var credential = new DefaultAzureCredential();
var knowledgeBaseName = "<knowledge-base-name>";

var indexClient = new SearchIndexClient(endpoint, credential);
var knowledgeBase = (
    await indexClient.GetKnowledgeBaseAsync(knowledgeBaseName)).Value;
knowledgeBase.RetrievalReasoningEffort =
    new KnowledgeRetrievalAutoReasoningEffort();
await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase);

Referens:KnowledgeBase

Om du vill använda en annan nivå ersätter du KnowledgeRetrievalAutoReasoningEffort med KnowledgeRetrievalMinimalReasoningEffort, KnowledgeRetrievalLowReasoningEfforteller KnowledgeRetrievalMediumReasoningEffort.

from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.knowledgebases.models import (
    KnowledgeRetrievalAutoReasoningEffort,
)

endpoint = "<search-endpoint>"
credential = DefaultAzureCredential()
knowledge_base_name = "<knowledge-base-name>"

index_client = SearchIndexClient(endpoint, credential)
knowledge_base = index_client.get_knowledge_base(knowledge_base_name)
knowledge_base.retrieval_reasoning_effort = (
    KnowledgeRetrievalAutoReasoningEffort()
)
index_client.create_or_update_knowledge_base(knowledge_base)

Referens:KnowledgeBase

Om du vill använda en annan nivå ersätter du KnowledgeRetrievalAutoReasoningEffort med KnowledgeRetrievalMinimalReasoningEffort, KnowledgeRetrievalLowReasoningEfforteller KnowledgeRetrievalMediumReasoningEffort.

@api-version = 2026-08-01-preview
@knowledge-base-url = {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}

PUT {{knowledge-base-url}}?api-version={{api-version}}
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "name": "{{knowledge-base-name}}",
  "knowledgeSources": [
    {
      "name": "{{knowledge-source-name}}"
    }
  ],
  "models": [
    {
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "{{aoai-endpoint}}",
        "authIdentity": null,
        "deploymentId": "{{model-deployment-name}}",
        "modelName": "{{model-name}}"
      }
    }
  ],
  "retrievalReasoningEffort": {
    "kind": "auto"
  }
}

Referens:Kunskapsbaser – Skapa eller uppdatera

Om du vill använda en annan nivå anger du retrievalReasoningEffort.kind till minimal, loweller medium.

Ange resonemangsinsatsen i en hämtningsbegäran

Ange retrievalReasoningEffort i en hämtningsbegäran för att åsidosätta standardvärdet för kunskapsbasen för den begäran. I följande exempel skickas ett meddelande, används low för att åsidosätta auto standardvärdet från föregående avsnitt och aktiverar svarssyntes (förhandsversion).

using Azure.Identity;
using Azure.Search.Documents.KnowledgeBases;
using Azure.Search.Documents.KnowledgeBases.Models;

var endpoint = new Uri("<search-endpoint>");
var credential = new DefaultAzureCredential();
var knowledgeBaseName = "<knowledge-base-name>";

var kbClient = new KnowledgeBaseRetrievalClient(
    endpoint, knowledgeBaseName, credential);
var request = new KnowledgeBaseRetrievalRequest
{
    RetrievalReasoningEffort =
        new KnowledgeRetrievalLowReasoningEffort(),
    OutputMode = KnowledgeRetrievalOutputMode.AnswerSynthesis
};

request.Messages.Add(
    new KnowledgeBaseMessage(
        content: new[] {
            new KnowledgeBaseMessageTextContent("What is the return policy?")
        }
    ) { Role = "user" }
);

var result = await kbClient.RetrieveAsync(request);

Referens:KnowledgeBaseRetrievalRequest

from azure.identity import DefaultAzureCredential
from azure.search.documents.knowledgebases import KnowledgeBaseRetrievalClient
from azure.search.documents.knowledgebases.models import (
    KnowledgeBaseMessage,
    KnowledgeBaseMessageTextContent,
    KnowledgeBaseRetrievalRequest,
    KnowledgeRetrievalOutputMode,
    KnowledgeRetrievalLowReasoningEffort,
)

endpoint = "<search-endpoint>"
credential = DefaultAzureCredential()
knowledge_base_name = "<knowledge-base-name>"

kb_client = KnowledgeBaseRetrievalClient(
    endpoint,
    credential,
    knowledge_base_name=knowledge_base_name,
)
request = KnowledgeBaseRetrievalRequest(
    messages=[
        KnowledgeBaseMessage(
            role="user",
            content=[
                KnowledgeBaseMessageTextContent(
                    text="What is the return policy?"
                )
            ],
        )
    ],
    retrieval_reasoning_effort=KnowledgeRetrievalLowReasoningEffort(),
    output_mode=KnowledgeRetrievalOutputMode.ANSWER_SYNTHESIS,
)

result = kb_client.retrieve(request)

Referens:KnowledgeBaseRetrievalRequest

@api-version = 2026-08-01-preview
@retrieve-url = {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}/retrieve

POST {{retrieve-url}}?api-version={{api-version}}
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "What is the return policy?"
        }
      ]
    }
  ],
  "retrievalReasoningEffort": {
    "kind": "low"
  },
  "outputMode": "answerSynthesis"
}

Referens:Kunskapshämtning – Hämta

Hämtningsbegäran returnerar ett grundat svar baserat på de kunskapskällor som konfigurerats i kunskapsbasen.