Work IQ-tudásbázis létrehozása (előzetes verzió)

Note

Azure AI Keresés a Azure portálon, REST API-kon és Azure SDK-k keresztül érhető el. Emellett a Foundry IQ-t is támogatja, amely a vállalati tartalmakat újrafelhasználható, engedélytudatos tudásbázisokká alakítja át az Microsoft Foundry portálon található ügynökök számára.

Important

Az (előzetes verzióban) megjelölt funkciókra, képességekre vagy tulajdonságokra nem vonatkozik szolgáltatási szintű szerződés, nem ajánlott éles számítási feladatokhoz, és az általános elérhetővé válásuk előtt változhatnak vagy korlátozhatók. Az Azure AI Keresés előzetes verziójú kifejezések az összes előzetes verziós funkcióra vonatkoznak, függetlenül attól, hogy önálló vagy egy általánosan elérhető funkció része.

Amikor csatlakozik a Work IQ-hoz, költségek merülhetnek fel, és előfordulhat, hogy az adatok a Azure megfelelőségi határain kívül kerülnek elküldésre, és az alkalmazandó szolgáltatási feltételek és adatkezelési szabályzatok szerint lesznek feldolgozva.

Egy Work IQ-ismeretforrás (előzetes verzió) összekapcsolja a Work IQ-t egy ügynökalapú visszakeresési folyamattal az Azure AI Keresésben. A tudásbázisok egymástól függetlenül jönnek létre, egy tudásbázisban hivatkoznak rá, és földi adatként használják, amikor a tudásbázist futtatókörnyezetben kérdezik le.

A Munkahelyi IQ a Microsoft 365 tartalmaiból, többek között dokumentumokból, e-mailekből, értekezletekből és tevékenységekből származó szervezeti intelligenciát jelenít meg Microsoft 365 alkalmazásokban.

Az indexelt tudásbázisokkal ellentétben a Work IQ-tudásbázisok közvetlenül lekéréskor kérdezik le az élő adatokat. Nincs szükség adatbeviteli folyamatra. A lekérdezésekhez felhasználói hozzáférési jogkivonatra van szükség a Microsoft Entra alkalmazásregisztrációjához. Az Azure AI Keresés ezt a tokent delegált Work IQ-tokenre cseréli, és a felhasználó nevében hívja meg a Work IQ-t.

Warning

Ebben az előzetes verzióban egy Work IQ-tudásbázis olyan Munka IQ-képességeket használhat, amelyek műveleteket hajtanak végre, és nem csak információkat kérnek le. Körültekintően használja, korlátozza a megbízható alkalmazásokhoz és felhasználókhoz való hozzáférést, és mielőtt engedélyezi, tekintse át a forgatókönyv engedélyeit és szabályozási vezérlőjét.

Használat támogatása

Azure Portál Microsoft Foundry portál .NET SDK Python SDK Java SDK JavaScript SDK REST API
❌ ❌ ✔️ ✔️ ❌ ❌ ✔️

Prerequisites

  • A legújabb Azure.Search.Documents előzetes csomag: dotnet add package Azure.Search.Documents --prerelease

  • Kulcs nélküli hitelesítés esetén a Azure.Identity csomag: dotnet add package Azure.Identity

  • A legújabb azure-search-documents előzetes csomag: pip install --pre azure-search-documents

  • Kulcs nélküli hitelesítés esetén a azure-identity csomag: pip install azure-identity

  • A Search Service REST API 2026-08-01 előzetes verziója .

  • Kulcs nélküli hitelesítéshez minden HTTP-kérés fejlécében adjon meg egy Authorization.

Adatszabályozás és megfelelőség

A Work IQ-visszakeresés engedélyezése előtt tekintse át a Microsoft Copilot adatkezelése, adatvédelme és biztonsága című témakört.

Adathasználat és adatvédelem

A Microsoft Graph keresztül elért kérések, válaszok és adatok nem használhatók alapszintű nyelvi modellek betanítására.

Hozzáférés-kezelés

A Munkahelyi IQ minden kérésre Microsoft 365 engedélyeket alkalmaz. A lekérés csak azokat a szervezeti adatokat adja vissza, amelyekhez a bejelentkezett felhasználó rendelkezik hozzáféréssel.

Adatrezidencia és megfelelőség

Tekintse át a szervezetre és forgatókönyvre vonatkozó Microsoft 365 dokumentációt az adattárolásra, az adatvédelemre, a biztonságra és a megfelelőségi kötelezettségvállalásokra vonatkozóan.

A Microsoft Entra-hitelesítés beállítása

Az API-verziótól 2026-08-01-preview kezdve minden Work IQ-tudásbázis egy ügyfél által birtokolt Microsoft Entra alkalmazásregisztrációt használ a hitelesítéshez. Lekérdezéskor a hitelesítés a következőképpen működik:

  1. Az ügyfélalkalmazás bejelentkezteti a felhasználót, és egy felhasználói igazolást küld az Azure AI Keresésnek.
  2. A keresési szolgáltatás felügyelt identitása egy összevont hitelesítő adat használatával az ügyfél tulajdonában lévő alkalmazásként hitelesíti magát.
  3. Az Azure AI Keresés a felhasználói jogcímet egy delegált Work IQ-jogkivonatra cseréli, és a bejelentkezett felhasználó nevében meghívja a Work IQ szolgáltatást.

A Munkahelyi IQ-tudásbázis nem tárol titkos ügyfélkulcsot. Konfigurálja egyszer az alkalmazást és az engedélyeit, majd hozzon létre egy összevont hitelesítő adatot az alkalmazást használó keresési szolgáltatás minden identitásához.

A Munkahelyi IQ-alkalmazás regisztrációjának konfigurálása

Az ügyfél tulajdonában lévő alkalmazás konfigurálása, amelyet Azure AI Keresés a Work IQ meghívására használ:

  1. Regisztráljon egy alkalmazást a Microsoft Entra bérlőben, ahol a Munkahelyi IQ-hozzájárulást szeretné kezelni. Támogatott fióktípusok esetén csak ebben a szervezeti címtárban válassza a Fiókok lehetőséget.

  2. Az alkalmazásregisztráció Áttekintés lapján másolja ki az alkalmazás (ügyfél) azonosítóját és a címtár (bérlő) azonosítóját. A Munkahelyi IQ-hitelesítés konfigurálásához az alkalmazásazonosítóra és a bérlőazonosítóra van szüksége az alkalmazásregisztrációt tartalmazó bérlőbe való bejelentkezéshez.

  3. Az alkalmazásregisztráció Api-t közzétenő lapján adja hozzá pontosan a szükséges delegált hatókörtaccess_as_user. Használja ezt a kisbetűs nevet; ne helyettesítsen másik hatókörnevet. A teljes hatókör: api://<application-client-id>/access_as_user.

  4. Az alkalmazásregisztráció API-engedélyek lapján válassza az Engedély hozzáadása, majd a > lehetőséget.

  5. Keresse meg a Munkahelyi IQ-t (alkalmazásazonosító fdcc1f02-fc51-4226-8753-f668596af7f7), válassza a Delegált engedélyek>WorkIQAgent.Ask lehetőséget, majd válassza az Engedélyek hozzáadása lehetőséget.

  6. Kérje meg a rendszergazdai szerepkörrel rendelkező rendszergazdát, hogy az előfeltételek között válassza a rendszergazdai hozzájárulás megadása [a bérlőhöz] lehetőséget ugyanazon az oldalon. Ez a hozzájárulás lehetővé teszi, hogy az alkalmazás egy delegált Munkahelyi IQ-jogkivonatra vonatkozó felhasználói állítást cseréljen le.

A keresési szolgáltatás identitásának konfigurálása

Az Azure AI Keresés által a Munkahelyi IQ-alkalmazásként történő hitelesítéshez használt identitás konfigurálása:

  1. Engedélyezze a rendszer által hozzárendelt felügyelt identitást a keresési szolgáltatásban. Ha nem tud rendszer által hozzárendelt identitást használni, konfiguráljon pontosan egy felhasználó által hozzárendelt identitást. A több felhasználó által hozzárendelt identitással és rendszer által hozzárendelt identitás nélküli keresőszolgáltatás nem támogatott.

  2. A keresőszolgáltatás Identitás lapján másolja ki az objektum (egyszerű) azonosítóját. A föderált hitelesítő adat ezt az értéket használja subject értékeként.

  3. Nyissa meg a Microsoft Entra ID>Overview nézetet, és másolja ki a bérlőazonosítót. Az összevont hitelesítő adatok ezt az értéket használják az URL-címében issuer .

Összevont hitelesítő adatok létrehozása

Összevont hitelesítő adatok létrehozása a keresési szolgáltatás identitásához:

  1. Hozzon létre egy credential.json nevű fájlt. Helyettesítse a <search-service-tenant-id>, <search-service-principal-id> és <search-service-name> elemeket a keresési szolgáltatásának értékeivel.

    {
      "name": "<search-service-name>-identity",
      "issuer": "https://login.microsoftonline.com/<search-service-tenant-id>/v2.0",
      "subject": "<search-service-principal-id>",
      "audiences": ["api://AzureADTokenExchange"]
    }
    

    A hitelesítő adatok nevének egyedinek kell lennie az alkalmazásregisztrációban. Az subject értéknek pontosan meg kell egyeznie a felügyelt identitás egyszerű azonosítójával. Az eltérés lekérdezéskor jelentkezik, nem pedig a tudásforrás létrehozásakor.

  2. Jelentkezzen be a Azure CLI felületre az alkalmazásregisztrációt tartalmazó bérlő használatával.

    az login --tenant <app-tenant-id> --allow-no-subscriptions
    
  3. Hozza létre az összevont hitelesítő adatokat.

    az ad app federated-credential create --id <application-client-id> --parameters credential.json --query id --output tsv
    
  4. Másolja ki a parancs kimenetét. Használja ezt az értéket federatedCredentialId a Munkahelyi IQ-tudásbázis tudásbázisának létrehozásakor.

Minden föderált hitelesítő adat egy felügyelt identitás elsődleges azonosítójában bízik meg. Ha egy másik keresési szolgáltatás identitása az alkalmazásregisztrációt használja, ismételje meg ezt az eljárást egy egyedi hitelesítőadat-névvel, valamint az adott identitáshoz tartozó bérlő- és résztvevőazonosítóval. Használja a megfelelő hitelesítő azonosítót minden Munkahelyi IQ-tudásforráson.

Az ügyfélalkalmazás konfigurálása

A felhasználókat bejelentkező és lekéréses kérelmeket küldő alkalmazás konfigurálása:

  1. Az ügyfélalkalmazás API-engedélyoldalán válassza aSzervezet által használt engedély> API-k hozzáadásalehetőséget.

  2. Illessze be a keresőmezőbe a korábban másolt alkalmazás (ügyfél) azonosítóját , majd válassza a Munkahelyi IQ-alkalmazásregisztrációt.

  3. Válassza a Delegált engedélyek>access_as_user, majd az Engedélyek hozzáadása lehetőséget.

  4. Adja meg a bérlő felhasználói hozzájárulási szabályzatához szükséges összes hozzájárulást. Ha rendszergazdai hozzájárulásra van szükség, kérje meg a rendszergazdát, hogy válassza a Rendszergazdai hozzájárulás megadása a(z) [your tenant] számára lehetőséget.

Az ügyfélalkalmazás mostantól kérhet egy felhasználói állítást a Munkahelyi IQ-alkalmazás regisztrációhoz. Az access_as_user engedély nem biztosít közvetlen hozzáférést az ügyfélalkalmazásnak a Munkahelyi IQ-hoz.

Hitelesítési értékek

A Work IQ-alapú tudásbázis létrehozásakor használja az alábbi entraAppAuthentication értékeket az Microsoft Entra alkalmazásbeállításból. Minden megadott értéknek GUID-nak kell lennie.

Property Szükséges Value
applicationId Igen A Munkahelyi IQ-alkalmazásregisztráció alkalmazás-(ügyfél-) azonosítója.
federatedCredentialId Igen Az alkalmazásban létrehozott összevont hitelesítő adatok objektumazonosítója. Ez nem a hitelesítő adatok neve, és nem a keresési szolgáltatás egyszerű azonosítója.
tenantId No Az alkalmazásregisztráció címtár- (bérlő-)azonosítója. Hagyja ki ezt a tulajdonságot, ha az alkalmazásregisztrációs és keresési szolgáltatás ugyanabban a bérlőben van. Ha különböző bérlőkben vannak, akkor erre a tulajdonságra van szükség.

Meglévő tudásbázisok keresése

A tudásbázis egy legfelső szintű, újrafelhasználható objektum. A meglévő tudásbázisok ismerete hasznos lehet az új objektumok újbóli felhasználásához vagy elnevezéséhez.

Futtassa az alábbi kódot a tudásbázisok név és típus szerinti listázásához.

// List knowledge sources by name and type
using Azure.Search.Documents.Indexes;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
var knowledgeSources = indexClient.GetKnowledgeSourcesAsync();

Console.WriteLine("Knowledge Sources:");

await foreach (var ks in knowledgeSources)
{
    Console.WriteLine($"  Name: {ks.Name}, Type: {ks.GetType().Name}");
}

Referencia:SearchIndexClient

# List knowledge sources by name and type
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient

index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))

for ks in index_client.list_knowledge_sources():
    print(f"  - {ks.name} ({ks.kind})")

Referencia:SearchIndexClient

### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}

Referencia:Tudásbázisok – Lista

A JSON-definíció áttekintéséhez lekérdezhet egyetlen tudásforrást a név megadásával.

using Azure.Search.Documents.Indexes;
using System.Text.Json;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);

// Specify the knowledge source name to retrieve
string ksNameToGet = "earth-knowledge-source";

// Get its definition
var knowledgeSourceResponse = await indexClient.GetKnowledgeSourceAsync(ksNameToGet);
var ks = knowledgeSourceResponse.Value;

// Serialize to JSON for display
var jsonOptions = new JsonSerializerOptions 
{ 
    WriteIndented = true,
    DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.Never
};
Console.WriteLine(JsonSerializer.Serialize(ks, ks.GetType(), jsonOptions));

Referencia:SearchIndexClient

# Get a knowledge source definition
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
import json

index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))

ks = index_client.get_knowledge_source("knowledge_source_name")
print(json.dumps(ks.as_dict(), indent = 2))

Referencia:SearchIndexClient

### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}

Referencia:Tudásforrások – Get

Az alábbi JSON egy példaválasz egy Munkahelyi IQ-tudásbázishoz.

{
  "name": "my-workiq-ks",
  "kind": "workIQ",
  "description": "A sample Work IQ knowledge source.",
  "workIQParameters": {
    "entraAppAuthentication": {
      "applicationId": "11111111-1111-1111-1111-111111111111",
      "federatedCredentialId": "22222222-2222-2222-2222-222222222222",
      "tenantId": null
    }
  },
  "encryptionKey": null
}

Tudásbázis létrehozása

Futtassa az alábbi kódot egy Work IQ-tudásbázis létrehozásához.

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

Uri searchEndpoint =
    new("https://<search-service-name>.search.windows.net");
var credential = new DefaultAzureCredential();
var indexClient = new SearchIndexClient(searchEndpoint, credential);

var entraAuthentication = new EntraAppAuthentication(
    Guid.Parse("<application-client-id>"),
    Guid.Parse("<federated-credential-id>"));
var knowledgeSource = new WorkIQKnowledgeSource(
    "my-workiq-ks",
    new WorkIQKnowledgeSourceParameters(entraAuthentication))
{
    Description = "A sample Work IQ knowledge source."
};

KnowledgeSource createdSource =
    await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Created knowledge source '{createdSource.Name}'.");

Referencia:SearchIndexClient, WorkIQKnowledgeSource

from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
    EntraAppAuthentication,
    WorkIQKnowledgeSource,
    WorkIQKnowledgeSourceParameters,
)

endpoint = "https://<search-service-name>.search.windows.net"
credential = DefaultAzureCredential()

knowledge_source = WorkIQKnowledgeSource(
    name="my-workiq-ks",
    description="A sample Work IQ knowledge source.",
    work_iq_parameters=WorkIQKnowledgeSourceParameters(
        entra_app_authentication=EntraAppAuthentication(
            application_id="<application-client-id>",
            federated_credential_id="<federated-credential-id>",
        )
    ),
)

with SearchIndexClient(endpoint, credential) as index_client:
    created_source = index_client.create_or_update_knowledge_source(
        knowledge_source
    )
print(f"Created knowledge source '{created_source.name}'.")

Referencia:SearchIndexClient, WorkIQKnowledgeSource

@search-endpoint = <search-endpoint> // Example: https://my-service.search.windows.net
@search-access-token = <search-access-token> // Run: az account get-access-token --scope https://search.azure.com/.default --query accessToken -o tsv

### Create a Work IQ knowledge source
PUT {{search-endpoint}}/knowledgesources/my-workiq-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
Prefer: return=representation

{
  "name": "my-workiq-ks",
  "kind": "workIQ",
  "description": "A sample Work IQ knowledge source.",
  "workIQParameters": {
    "entraAppAuthentication": {
      "applicationId": "<application-client-id>",
      "federatedCredentialId": "<federated-credential-id>"
    }
  }
}

Referencia:Tudásforrások – Létrehozás vagy frissítés

Hozzárendelés tudásbázishoz

Ha elégedett a tudásbázissal, adja hozzá egy tudásbázishoz.

Tudásbázis lekérdezése

A tudásbázis konfigurálása után hívja meg a lekérési műveletet vagy az MCP-végpontot a Work IQ-tartalmak lekérdezéséhez. Ez a tudásbázis egyedi lekérdezési idejű engedélyérvényesítési és válaszjellemzőkkel rendelkezik.

Important

A munkahelyi IQ 40–60 másodpercet vagy többet is igénybe vehet a válaszadáshoz. Az időtúllépési hibák elkerülése érdekében a lekérési kérésben állítsa a(z) maxRuntimeInSeconds értékét 120 vagy magasabb értékre.

Engedélyek kényszerítése lekérdezéskor

A 2026-08-01-preview API-verziótól kezdve a Work IQ tudásforrásai az ügyfél tulajdonában lévő Microsoft Entra-alkalmazásregisztráción keresztül egy on-behalf-of (OBO) tokenfolyamot használnak. A Azure AI Keresés lekéréses kérésének hitelesítése mellett az ügyfélnek meg kell adnia egy alkalmazás-célközönség felhasználói állítást a bejelentkezett felhasználó számára.

A kliensalkalmazásnak be kell jelentkeztetnie a felhasználót, és be kell szereznie a felhasználói aszerciót. Az, hogy hogyan szerzi be az igazolást, az alkalmazás platformjától és nyelvétől függ. Használja az Microsoft Authentication Libraryt (MSAL) és a Proof Key for Code Exchange (PKCE) használatával működő engedélyezési kód folyamatát a pontosan ezt a hatókört jelölő api://<application-client-id>/access_as_user lekéréséhez.

A felhasználói állítás elküldése előtt győződjön meg arról, hogy:

  • aud azonosítja a Work IQ alkalmazásregisztrációját.
  • scp access_as_usertartalmaz.
  • oid és tid azonosítsa a bejelentkezett felhasználót és alkalmazásbérlevőt.

Küldje el mindkét hitelesítő adatot ugyanabban a lekérési kérelemben, ahogyan az alábbi példában is látható. Használjon Azure AI Keresés jogkivonatot vagy API-kulcsot a szolgáltatáshitelesítéshez. Adja át a nyers felhasználói helyességi állítást a(z) x-ms-query-work-iq-source-authorization fejlécben, ne a(z) x-ms-query-source-authorization fejlécben.

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

Uri searchEndpoint =
    new("https://<search-service-name>.search.windows.net");
string userAssertion = "<user-assertion>";
var credential = new DefaultAzureCredential();
var options = new SearchClientOptions();
options.Retry.NetworkTimeout = TimeSpan.FromSeconds(130);
var retrievalClient = new KnowledgeBaseRetrievalClient(
    searchEndpoint,
    "my-kb",
    credential,
    options);

var request = new KnowledgeBaseRetrievalRequest
{
    IncludeActivity = true,
    MaxRuntimeInSeconds = 120
};
request.Intents.Add(
    new KnowledgeRetrievalSemanticIntent("Find my project status."));
request.KnowledgeSourceParams.Add(
    new WorkIQKnowledgeSourceParams("my-workiq-ks")
    {
        IncludeReferences = true,
        IncludeReferenceSourceData = true
    });

var response = await retrievalClient.RetrieveAsync(
    request,
    querySourceAuthorization: null,
    queryWorkIQSourceAuthorization: userAssertion);
Console.WriteLine(response.Value);

Referencia:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest

from azure.identity import DefaultAzureCredential
from azure.search.documents.knowledgebases import (
    KnowledgeBaseRetrievalClient,
)
from azure.search.documents.knowledgebases.models import (
    KnowledgeBaseRetrievalRequest,
    KnowledgeRetrievalSemanticIntent,
    WorkIQKnowledgeSourceParams,
)

endpoint = "https://<search-service-name>.search.windows.net"
user_assertion = "<user-assertion>"
credential = DefaultAzureCredential()

request = KnowledgeBaseRetrievalRequest(
    intents=[
        KnowledgeRetrievalSemanticIntent(
            search="Find my project status."
        )
    ],
    knowledge_source_params=[
        WorkIQKnowledgeSourceParams(
            knowledge_source_name="my-workiq-ks",
            include_references=True,
            include_reference_source_data=True,
        )
    ],
    include_activity=True,
    max_runtime_in_seconds=120,
)

with KnowledgeBaseRetrievalClient(
    endpoint,
    credential,
    knowledge_base_name="my-kb",
) as retrieval_client:
    response = retrieval_client.retrieve(
        request,
        query_work_iq_source_authorization=user_assertion,
        timeout=130,
    )

print(response)

Referencia:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest

@search-endpoint = <search-endpoint>
@search-access-token = <search-access-token>
@user-assertion = <user-assertion>

### Query a knowledge base with a Work IQ knowledge source
POST {{search-endpoint}}/knowledgebases/my-kb/retrieve?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
x-ms-query-work-iq-source-authorization: {{user-assertion}}
Content-Type: application/json

{
  "messages": [{
    "role": "user",
    "content": [{
      "type": "text",
      "text": "Find my project status."
    }]
  }],
  "knowledgeSourceParams": [{
    "knowledgeSourceName": "my-workiq-ks",
    "kind": "workIQ",
    "includeReferences": true,
    "includeReferenceSourceData": true
  }],
  "includeActivity": true,
  "maxRuntimeInSeconds": 120
}

Referencia:Tudáslekérés – Lekérés

A sikeres kérés eredménye 200 OK. Ellenőrizze, hogy a(z) activity tartalmaz-e olyan bejegyzést, amelynek a(z) type értéke knowledgeSourceName, és amelynek a(z) workIQ megegyezik az Ön Work IQ-tudásforrásával. Ellenőrizze azt is, hogy a(z) references egy workIQ bejegyzést tartalmaz.

Az alábbi táblázat a gyakori konfigurációs hibákat sorolja fel.

Status A probléma oka
400 A Work IQ engedélyezési fejléce hiányzik vagy helytelenül formázott, a szükséges felhasználói jogcímek hiányoznak, vagy a keresési szolgáltatás nem rendelkezik támogatott felügyelt identitáskonfigurációval.
206 vagy 502 A Munkahelyi IQ-forrás meghiúsult, mert a jogkivonatok cseréje, a hozzájárulás, a delegált engedély, az összevont hitelesítő adatok, az alsóbb rétegbeli engedélyezés vagy a Munkahelyi IQ-kérés meghiúsult vagy időtúllépést váltott ki. Vizsgálja meg a forrástevékenység hibáját. A 206 válasz azt jelenti, hogy egy másik forrás sikeres volt. A 502 válasz azt jelenti, hogy minden kiválasztott forrás sikertelen volt, vagy egy szükséges forrás meghiúsult.

Munkahelyi IQ-specifikus válaszmezők

A Work IQ tudásforrásai az eredményeket a references tömbben, a lekérdezési diagnosztikát pedig a activity tömbben adják vissza. Minden hivatkozási bejegyzés a következőket tartalmazza:

  • sourceData.parts[].text: A Work IQ-ból származó, forrásokkal alátámasztott szövegrészletek.
  • sourceData.parts[].data: Munkahelyi IQ-idézetek adatai. A hivatkozás részei application/vnd.ms-workiq-reference médiatípusúak.

Az alábbi példa egy, a Work IQ-ra vonatkozó tudásbázishivatkozást és annak megfelelő tevékenységrekordot tartalmazó lekérési választ mutat be. A lekérési válaszok értelmezésére vonatkozó részletesebb útmutatásért lásd: A válasz áttekintése.

Tip

Ha hivatkozásokhoz sourceData szeretne kapni, a lekérési kérésben a includeReferenceSourceData alatti tudásforrás-bejegyzésben állítsa a true értékét knowledgeSourceParams értékre.

{
  "response": [],
  "activity": [
    {
      "type": "workIQ",
      "id": 0,
      "knowledgeSourceName": "my-workiq-ks",
      "queryTime": "2026-08-01T19:25:23.683Z",
      "count": 1,
      "elapsedMs": 1137,
      "workIQArguments": {
        "search": "my query"
      }
    }
  ],
  "references": [
    {
      "type": "workIQ",
      "id": "83dd7d40",
      "activitySource": 0,
      "rerankerScore": 3.5,
      "sourceData": {
        "parts": [
          {
            "text": "Have your VPN username and password ready."
          },
          {
            "data": {
              "1-abc123": {
                "targetLink": "https://contoso.sharepoint.com/doc.docx",
                "isCitedInResponse": true,
                "isSourceFiltered": false
              }
            },
            "mediaType": "application/vnd.ms-workiq-reference"
          }
        ]
      }
    }
  ]
}

Tudásbázis törlése

Mielőtt törölhet egy tudásbázist, törölnie kell minden olyan tudásbázist, amely hivatkozik rá, vagy frissítenie kell a tudásbázis definícióját a hivatkozás eltávolításához. Az index- és indexelőfolyamatot létrehozó tudásbázisok esetében a rendszer az összes létrehozott objektumot is törli. Ha azonban egy meglévő indexet használt egy tudásbázis létrehozásához, az index nem törlődik.

Ha egy használatban lévő tudásbázist próbál törölni, a művelet meghiúsul, és visszaadja az érintett tudásbázisok listáját.

Tudásbázis törlése:

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

    using Azure.Search.Documents.Indexes;
    
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    var knowledgeBases = indexClient.GetKnowledgeBasesAsync();
    
    Console.WriteLine("Knowledge Bases:");
    
    await foreach (var kb in knowledgeBases)
    {
        Console.WriteLine($"  - {kb.Name}");
    }
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

    using Azure.Search.Documents.Indexes;
    using System.Text.Json;
    
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    
    // Specify the knowledge base name to retrieve
    string kbNameToGet = "earth-knowledge-base";
    
    // Get a specific knowledge base definition
    var knowledgeBaseResponse = await indexClient.GetKnowledgeBaseAsync(kbNameToGet);
    var kb = knowledgeBaseResponse.Value;
    
    // Serialize to JSON for display
    string json = JsonSerializer.Serialize(kb, new JsonSerializerOptions { WriteIndented = true });
    Console.WriteLine(json);
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "Name": "earth-knowledge-base",
       "KnowledgeSources": [
         {
           "Name": "earth-knowledge-source"
         }
       ],
       "Models": [
         {}
       ],
       "RetrievalReasoningEffort": {},
       "OutputMode": {},
       "ETag": "\u00220x8DE278629D782B3\u0022",
       "EncryptionKey": null,
       "Description": null,
       "RetrievalInstructions": null,
       "AnswerInstructions": null
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

    using Azure.Search.Documents.Indexes;
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    
    await indexClient.DeleteKnowledgeBaseAsync(knowledgeBaseName);
    System.Console.WriteLine($"Knowledge base '{knowledgeBaseName}' deleted successfully.");
    

    Referencia:SearchIndexClient

  4. Törölje a tudásbázist.

    await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName);
    System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
    

    Referencia:SearchIndexClient

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

    # Get knowledge bases
    from azure.core.credentials import AzureKeyCredential
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    
    print("Knowledge Bases:")
    for kb in index_client.list_knowledge_bases():
        print(f"  - {kb.name}")
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

    # Get a knowledge base definition
    from azure.core.credentials import AzureKeyCredential
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    kb = index_client.get_knowledge_base("knowledge_base_name")
    print(kb)
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks"
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

    # Delete a knowledge base
    from azure.core.credentials import AzureKeyCredential 
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    index_client.delete_knowledge_base("knowledge_base_name")
    print(f"Knowledge base deleted successfully.")
    

    Referencia:SearchIndexClient

  4. Törölje a tudásbázist.

    # Delete a knowledge source
    from azure.core.credentials import AzureKeyCredential 
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    index_client.delete_knowledge_source("knowledge_source_name")
    print(f"Knowledge source deleted successfully.")
    

    Referencia:SearchIndexClient

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

    ### Get knowledge bases
    GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Lista

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

    ### Get a knowledge base definition
    GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Get

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks"
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

    ### Delete a knowledge base
    DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Törlés

  4. Törölje a tudásbázist.

    ### Delete a knowledge source
    DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásforrások – Törlés