Zobrazit obrázky vložené do dokumentů v agentním vyhledávání (Preview)

Note

Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.

Important

Na funkce, možnosti nebo vlastnosti označené jako (Preview) se nevztahuje smlouva o úrovni služeb, nejsou doporučené pro produkční úlohy a mohou se změnit nebo být omezeny dříve, než budou obecně k dispozici. Podmínky Azure AI Vyhledávač Preview platí pro všechny funkce ve verzi Preview, ať už jsou samostatné nebo součástí obecně dostupné funkce.

Pomocí zobrazování obrázků (Preview) můžete zobrazit obrázky vložené do zdrojových dokumentů (například diagramy, grafy, infografika, naskenované formuláře a obrázky produktů) během načítání agentů, takže váš rozsáhlý jazykový model (LLM) může při syntetizaci odpovědi zdůvodnět vizuální kontext spolu s textem.

Když povolíte poskytování obrázků, Azure AI Vyhledávač:

  • Při indexování extrahuje image z podporovaných dokumentů a ukládá je do úložiště assetů Azure Blob poskytnutého zákazníkem.

  • V době dotazu načte tyto image během akce načtení, zakóduje je base64 a vloží je jako multimodální obsah do výzvy LLM, která vytvoří syntetizovanou odpověď.

V tomto článku se dozvíte, jak povolit poskytování obrázků pro znalostní bázi, přepsat toto nastavení pro jednotlivé požadavky, zobrazit statistiky poskytování obrázků a naplánovat požadavky na životní cyklus účtu úložiště.

Podpora využití

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

Předpoklady

Omezení a úvahy

  • Doručování obrázků je v agentním vyhledávání k dispozici pouze prostřednictvím rozhraní API retrieve. Klasické /docs/search dotazy nepředávají obrázky vložené v dokumentu do následné syntézy odpovědí bez vlastního řešení nebo konfigurace.

  • Doručování obrázků funguje pouze v režimu výstupu syntézy odpovědí. Režim výstupu extractiveData neobsluhuje obrázky.

  • Obsluha obrázků se vztahuje pouze na indexované zdroje znalostí založené na souborech, které mají assetStore nakonfigurované a indexované bloky dat s vyplněnými image_path hodnotami.

  • Ve smíšených znalostních bázích poskytují obrázky vložené v dokumentech pro následnou syntézu odpovědí pouze podporované typy zdrojů znalostí (objekty blob, indexovaný OneLake a indexovaný SharePoint). Jiné typy mohou stále přispívat k ukotvení textu.

  • Poskytování obrázků se nepodporuje u zdrojů znalostí, které používají ingestionPermissionOptions k načítání oprávnění na úrovni dokumentu, včetně seznamů ACL, rozsahů RBAC nebo popisků citlivosti Microsoft Purview. Úložiště prostředků vytvoří podkladové úložiště znalostí a úložiště znalostí nepodporují dědičnost oprávnění.

  • Schéma odpovědi pro načtení nedefinuje pole pro jednotlivé cesty k obrázkům v úložišti prostředků ani pro binární data obrázků odesílaná modelu. Přehledy aktivity imageServing obsahují souhrnné statistiky o obrázcích načtených a odeslaných do modelu.

  • Přístup k obrázkům se řídí na úrovni účtu úložiště nezávisle na přístupu k indexovaného obsahu. Libovolná identita s oprávněním ke čtení k účtu úložiště assetů z něj může načíst obrázky.

  • Neukládejte tajné kódy (klíče účtu, tokeny, připojovací řetězce) ve zdrojových dokumentech, protože obsah se dá vrátit jako podkladová data.

  • Doručování obrázků může zvýšit latenci syntézy odpovědí kvůli stahování obrázků a zpracování multimodálních tokenů. Spusťte reprezentativní dotazy se zapnutým a vypnutým poskytováním obrázků a porovnejte latenci odpovědi s vykázanou aktivitou imageServing.

  • Funkce Content Understanding může vytvářet různé výsledky obrázků pro soubory PDF a DOCX. Pokud je vyžadována konzistentní extrakce vložených obrázků a slovní záslovnost, převeďte zdrojové dokumenty na PDF nebo otestujte každý zdrojový formát s reprezentativním obsahem.

Jak funguje doručování obrázků

Obsluha obrázků má dvě fáze:

  • Indexování: Když pro zdroj znalostí nakonfigurujete standardní extrakci obsahu a úložiště prostředků, vygenerovaná dovednost Content Understanding dokument sémanticky rozdělí na části, zachová tabulky ve formátu Markdown a použije nakonfigurovaný model LLM k popisu vložených obrázků. Popisy obrázku se stanou součástí rozšířeného Markdownu, který vektorizuje vložená dovednost. Dovednost také extrahuje obrázky do úložiště aktiv objektů blob a přidává odkazy image_path do překrývajících se segmentů.

    Když nakonfigurujete úložiště prostředků, vyhledávací služba také vytvoří úložiště znalostí vedle zdroje znalostí k ukládání extrahovaných obrazových artefaktů. Toto úložiště znalostí můžete kontrolovat a spravovat stejně jako jakékoli jiné.

  • Načtení: Když se akce načtení spustí s povoleným poskytováním obrázků, vyhledávací služba načte odpovídající obrázky z úložiště assetů, zakóduje je do formátu base64 a zahrne je jako multimodální obsah do promptu pro syntézu odpovědi.

Konfigurace úložiště prostředků a přístupu k aplikacím

Doručování obrázků prochází přes tři hranice důvěry. Při indexování vyhledávací služba ukládá obrazové artefakty do vašeho úložiště assetů. Při zpracování dotazu vyhledávací služba čte z úložiště assetů, aby získala obrázky. Vaše aplikace také čte z úložiště prostředků, pokud potřebuje vykreslit obrázky v uživatelském rozhraní. Nakonfigurujte každou cestu tak, aby sledovala přístup s nejnižšími oprávněními.

Přístup k úložišti prostředků vyhledávací službou

  • Pro vyhledávací službu použijte Microsoft Entra ID a managed identity. Přiřaďte identitě roli Storage Blob Data Contributor v oboru účtu úložiště, protože indexer zapisuje artefakty obrázků a akce retrieve je čte. Pokud zdrojový kontejner a kontejner prostředků sdílí tento účet, role poskytuje také přístup ke čtení zdrojového objektu blob.

  • Nepovolujte anonymní veřejný přístup v kontejneru úložiště prostředků.

Přístup aplikace k odkazům na obrázky

Vygenerovaný index ukládá image_path odkazy na obrázky v úložišti assetů. Schéma odpovědi pro operaci načtení nedefinuje samostatná pole pro jednotlivé cesty k obrázkům v úložišti assetů ani pro bajty obrázků odesílané modelu. Volitelné sourceData představuje strukturovaná referenční data a image_path v nich není vyžadováno.

Zobrazení indexovaného obrázku v aplikaci:

  1. Přiřaďte identitě vaší aplikace roli Čtenář dat objektů blob služby Storage v oboru účtu úložiště prostředků.

  2. Přiřaďte identitě aplikace roli Čtenář dat indexu vyhledávání , aby se mohl dotazovat na vygenerovaný index.

  3. Získání autorizovaného image_path z vygenerovaného indexu prostřednictvím dotazu řízeného aplikací nebo koncového bodu služby.

  4. Ověřte, že odkaz směřuje na očekávaný účet úložiště a kontejner assetů. Před vyhledáním objektu blob odmítněte nedůvěryhodné cesty.

  5. Načtěte výsledný název blobu z kontejneru assetu pomocí identity vaší aplikace.

Toto oddělení umožňuje odděleně řídit, kdo může zobrazovat zdrojové obrázky, nezávisle na tom, kdo může volat rozhraní API pro načítání.

Nakonfigurujte úložiště prostředků ve zdroji znalostí

Nakonfigurujte assetStore v ingestionParameters podporovaném indexovaném zdroji znalostí. Úložiště prostředků je kontejner blobů, který vlastníte a do kterého vyhledávací služba zapisuje artefakty obrazů.

Pokyny pro konkrétní zdroj najdete tady:

Minimální zdroj znalostí z objektů blob s povoleným poskytováním obrázků vypadá takto:

PUT https://{service-name}.search.windows.net/knowledgesources/my-blob-ks?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "name": "my-blob-ks",
  "kind": "azureBlob",
  "azureBlobParameters": {
    "connectionString": "ResourceId=<storage-resource-id>",
    "containerName": "source-documents",
    "ingestionParameters": {
      "assetStore": {
        "connectionString": "ResourceId=<storage-resource-id>",
        "containerName": "image-assets"
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://{foundry-resource}.services.ai.azure.com",
          "deploymentId": "gpt-4o",
          "modelName": "gpt-4o"
        }
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://{foundry-resource}.services.ai.azure.com",
          "deploymentId": "text-embedding-3-large",
          "modelName": "text-embedding-3-large"
        }
      },
      "contentExtractionMode": "standard",
      "aiServices": {
        "uri": "https://{foundry-resource}.services.ai.azure.com"
      }
    }
  }
}

Note

  • Nahraďte <storage-resource-id> za ID prostředku účtu Azure Storage. Formát ResourceId=<storage-resource-id> připojení říká vyhledávací službě, aby pro oba kontejnery používala svou spravovanou identitu.

  • Účet Azure Storage, který hostuje úložiště prostředků, musí zůstat dostupný a přístupný vyhledávací službě po celou dobu životnosti znalostní báze. Pokud změníte síťová pravidla, obměníte klíče, vyměníte identity nebo přesunete účet úložiště způsobem, který vyhledávací službě zabrání číst úložiště assetů, služba pro poskytování obrázků nebude moci tyto obrázky dodat modelu. Porovnejte imagesRetrieved s imagesSentToModel v rámci aktivity načítání a změny účtu úložiště pečlivě plánujte a testujte.

Výsledky konfigurace

Kombinace assetStore, disableImageVerbalizationa chatCompletionModel určuje, co indexer ukládá a co model vidí v době dotazu:

  • Úložiště prostředků + verbalizace (výchozí):assetStore nastaveno, disableImageVerbalization ponecháno jako false, chatCompletionModel nastaveno. Indexer trvale ukládá obrázky do úložiště assetů a textové popisy ukládá do indexu. Aktivita načítání může vykazovat verbalizationUsed jako true.

  • Pouze úložiště assetů:assetStore nastaveno, disableImageVerbalization nastaveno na true, chatCompletionModel není vyžadováno. Indexer ukládá obrázky do úložiště assetů, ale negeneruje textové popisy. Aktivita načítání může vykazovat verbalizationUsed jako false.

  • Žádné úložiště assetů, sada modelů:assetStore nenastaveno, chatCompletionModel nastaveno. Pouze popisy textu, žádné artefakty obrázků. Doručování obrázků se nepoužívá.

  • Žádné úložiště prostředků, žádný model: Žádné zpracování obrázků.

Ověřte konfiguraci úložiště assetů

Počkejte na dokončení ingesce, než budete pokračovat:

  • Zkontrolujte stav indexátoru v portálu Azure nebo použijte rozhraní REST API Get Indexer Status.

  • Zkontrolujte, jestli mají indexované bloky vyplněné image_path pole. Pokud je image_path prázdný, zkontrolujte stav indexeru, konfiguraci úložiště assetů zdroje znalostí, obsah zdrojového dokumentu a obsah kontejneru assetů.

  • Zkontrolujte kontejner úložiště prostředků. Měli byste vidět bloby obrázků, které indexer zapsal během ingestace.

Povolte zobrazování obrázků ve znalostní bázi

V odkazu na zdroj znalostí v definici znalostní báze nastavte enableImageServing na true. Toto nastavení se stane výchozím nastavením pro každý požadavek na načtení, který cílí na zdroj znalostí.

Definice znalostní báze také určuje LLM sloužící k syntéze odpovědí v době dotazu. Toto nastavení je nezávislé na jakémkoli chatCompletionModel, které nastavíte u zdroje znalostí ingestionParameters, jenž řídí verbalizaci obrázků během indexování.

Pokud vaše znalostní báze odkazuje na více zdrojů znalostí, nastavte enableImageServing pouze u podporovaných indexovaných typů založených na souborech, které mají nakonfigurováno assetStore. Nepodporované typy (například index vyhledávání, vzdálený SharePoint nebo web) stále přispívají k textovému ukotvení, ale neposkytují obrázky vložené v dokumentech pro následnou syntézu odpovědí.

PUT https://{service-name}.search.windows.net/knowledgebases/my-kb?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "name": "my-kb",
  "knowledgeSources": [
    {
      "name": "my-blob-ks",
      "enableImageServing": true
    }
  ],
  "outputMode": "answerSynthesis",
  "models": [
    {
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://{foundry-resource}.services.ai.azure.com",
        "deploymentId": "gpt-4o",
        "modelName": "gpt-4o"
      }
    }
  ]
}

Ověřte povolení poskytování obrázků

GET Odešlete žádost do koncového bodu znalostní báze a ověřte, že odkaz na zdroj znalostí obsahuje "enableImageServing": true.

Načtení pomocí obsluhy obrázků

Zavolejte akci retrieve nad znalostní databází. Chcete-li pro jednotlivé požadavky přepsat výchozí nastavení znalostní báze, nastavte enableImageServing v odpovídající položce pod knowledgeSourceParams.

POST https://{service-name}.search.windows.net/knowledgebases/my-kb/retrieve?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "retrievalReasoningEffort": { "kind": "medium" },
  "outputMode": "answerSynthesis",
  "includeActivity": true,
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "What's the wiring configuration shown in the installation guide?" }
      ]
    }
  ],
  "knowledgeSourceParams": [
    {
      "knowledgeSourceName": "my-blob-ks",
      "kind": "azureBlob",
      "enableImageServing": true
    }
  ]
}

Note

Obsluha image se spustí pouze v případech, kdy outputMode je answerSynthesis. Požadavky, které používají extractiveData, přeskočí doručování obrázků, i když je nastaveno enableImageServing.

Co se stane při načítání

Pro odkazy na obrázky spojené s odpovídajícím obsahem vyhledávací služba stáhne odpovídající obrázky z úložiště prostředků, zakóduje je base64 a předá je jako multimodální obsah do podřízeného modelu syntézy odpovědí. Prohlédněte si agregované statistiky doručování obrázků v activity.imageServing. Přesný tvar odpovědi najdete v referenční dokumentaci k načítání znalostí – načtení (REST API).

Ověření chování při načítání

Odpověď na požadavek načtení může poskytnout tyto signály pro doručování obrázků:

  • Když je includeActivitytrue, pole activity hlásí aktivitu imageServing pro zdroj znalostí, když služba zaznamenává operace poskytování obrázků.

  • Hodnota imagesSentToModel větší než 0 znamená, že služba hlásí, že do podřízeného modelu syntézy odpovědí poskytla obrázky.

Pravidla priority

Pokud je zadána definice znalostní báze i požadavek enableImageServingna načtení, má přednost hodnota v požadavku na načtení. Úplná priorita je:

  1. Hodnota v požadavku na načtení knowledgeSourceParams[].enableImageServing (pokud je nastavena).
  2. Hodnota odpovídajícího odkazu na zdroj znalostí v definici znalostní báze (pokud je nastavena).
  3. false (výchozí).

Následující tabulka shrnuje devět kombinací.

Definice znalostní báze (enableImageServing) Načíst požadavek (enableImageServing) Je povoleno doručování obrázků?
true true Ano
true false Ne
true Nenastaveno Ano
false true Ano
false false Ne
false Nenastaveno Ne
Nenastaveno true Ano
Nenastaveno false Ne
Nenastaveno Nenastaveno Ne

Zkontrolovat statistiky doručování obrázků

Když je spuštěna obsluha obrazu, odpověď operace retrieve obsahuje oddíl imageServing pro každý zdroj znalostí v poli activity. V této části můžete porovnat obrázky načtené z úložiště prostředků s obrázky odeslanými do modelu.

"activity": [
  {
    "type": "azureBlob",
    "knowledgeSourceName": "my-blob-ks",
    "imageServing": {
      "verbalizationUsed": true,
      "imagesRetrieved": 5,
      "imagesSentToModel": 4,
      "totalImageSizeBytes": 248361
    }
  }
]

Přehled polí:

  • verbalizationUsed: Službou hlášená statistika slovního popisu obrázku pro aktivitu načtení.

  • imagesRetrieved: Počet obrázků načtených z úložiště prostředků.

  • imagesSentToModel: Počet obrázků odeslaných do podřízeného modelu.

  • totalImageSizeBytes: Celková velikost obrázků odeslaných do modelu v bajtech.

Pokud imagesRetrieved je větší než imagesSentToModel, nebyl do modelu odeslán každý načtený obrázek.

Kontrolovat verbalizationUsed a imagesSentToModel nezávisle na sobě. Odpověď může uvádět jak verbalizationUsed ve formě true, tak jeden nebo více obrázků zaslaných modelu.

Test doručování obrázku v celém řetězci

K otestování úplného nastavení použijte jednu z následujících ukázek:

Ukázky vytvářejí zdroj znalostí blobů a znalostní bázi, porovnávají požadavky na načtení při vypnutém a zapnutém poskytování obrázků a zkoumají statistiky poskytování obrázků. K výběru a stažení daného prostředku také používají nezávislý indexový dotaz se zástupným znakem image_path . Ukázky vybírají jednu referenci oddělenou středníkem, odstraňují z relativní cesty prefix projekce, například 11.7:, nebo dekódují adresu URL absolutní cesty a odstraňují její počáteční segment kontejneru prostředků. Tyto transformace slouží pouze jako příklady chování, nikoli jako záruky rozhraní retrieve API. Vybraná položka není důkazem toho, že stejný obrázek byl použit při vytvoření konkrétní odpovědi operace načtení.

Typický kontrolní seznam porovnání A/B:

  • Vyberte otázku, na kterou lze odpovědět jenom z diagramu, grafu nebo naskenovaného obrázku.

  • Spusťte požadavek na načtení pomocí enableImageServing: false a zachyťte odpověď.

  • Spusťte stejný požadavek na načtení s enableImageServing: true a porovnejte odpovědi, latenci a vykázanou aktivitu.

  • Považovat rozdíly odpovědí za pozorovatelné signály A/B, nikoli důkaz, že obrázky způsobily rozdíly. Hodnota imagesSentToModel větší než 0 znamená, že služba hlásí, že do modelu zadala obrázky.

Vyčistěte zdroje

Před odstraněním zdroje znalostí odstraňte znalostní bázi. Odstraněním těchto Azure AI Vyhledávač prostředků se neodstraní zdrojové dokumenty ani projektované objekty blob obrázků v Azure Storage. Tyto bloby odstraňte samostatně pouze tehdy, pokud je již nepotřebuje žádný ponechaný kanál pro ingestování nebo načítání dat.

Řešení problémů

Použijte blok aktivity imageServing z Kontrola statistik doručování obrázků jako první diagnostický krok. V následující tabulce jsou uvedeny kontroly běžných příznaků bez předpokladu, že by došlo k jedné příčině.

Symptom Kontroly
imagesRetrieved je 0 pro dokumenty bohaté na obrázky Zkontrolujte stav a upozornění indexátoru, vyplněné hodnoty image_path v odpovídajících indexovaných blocích a bloby obrázků v kontejneru assetů. Ověřte, že zdrojové dokumenty obsahují extrahovatelné obrázky a že identita služby vyhledávání má v rozsahu účtu úložiště roli Storage Blob Data Contributor.
Odpověď operace načtení neobsahuje blok imageServing. Potvrďte, že požadavek nastavuje includeActivity na true. Zkontrolujte efektivní enableImageServing hodnotu po použití požadavku, znalostní báze a výchozí priority. Ověřte, že outputMode je ve stavu answerSynthesis, a zkontrolujte chyby a upozornění ve zdrojové aktivitě.
verbalizationUsed liší se od toho, co očekáváte Zkontrolujte disableImageVerbalization, chatCompletionModela nejnovější stav indexeru. Kontrolovat verbalizationUsed nezávisle na imagesSentToModel. Odpověď může obsahovat slovní vyjádření a obrázky odeslané společně.
Syntéza odpovědí selže nebo vyprší časový limit po povolení poskytování obrázků Porovnejte reprezentativní požadavky se zapnutým a vypnutým doručováním obrázků. Zkontrolujte chyby a upozornění u aktivit, stav nasazení modelu syntézy odpovědí, oprávnění identity vyhledávací služby k modelu a účtu úložiště a dostupnost úložiště prostředků.
Vaše aplikace nemůže zobrazit samostatně dotazovaný image_path Ověřte, že nezávislý indexový dotaz vrací použitelný objekt image_path, že odkazovaný blob existuje a že k němu aplikace může přistupovat nezávisle na operaci retrieve. Zkontrolujte, zda má identita aplikace roli Čtenář dat vyhledávacího indexu pro dotaz na index a Čtenář dat objektů blob služby Storage v rozsahu účtu úložiště prostředků.