Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure AI Content Understanding egy multimodális MI szolgáltatás, amely szemantikai tartalmat nyer ki dokumentumokból, videókból, hangokból és képfájlokból. Strukturálatlan tartalmat alakít át strukturált, géppel olvasható adatokká, amelyek optimalizáltak a lekérdezéssel bővített generálásra (RAG) és automatizált munkamenetekre.
Használd az Azure AI Content Understanding klienskönyvtárát a következőkhöz:
- Dokumentumtartalom kinyerése – Szöveg, táblázatok, ábrak, elrendezési információk és strukturált markdown kinyerése dokumentumokból (PDF, képek szöveggel vagy kézzel írt szöveggel, Office dokumentumok és még sok más)
- Hang átírása és elemzése – A hangtartalmat kereshető átiratokká alakítsa át beszélőnaplózással és időzítési információkkal
- Videótartalom elemzése – Vizuális képkörök kinyerése, hangsávok átírása, és strukturált összefoglalók generálása videófájlokból
Előre összeszerelt elemzők - Gyártásra kész, előre összeszerelt elemzőket használjunk különböző iparágakban, beleértve a finance és az adózást (számlák, számlák, adópapírok), személyazonosság-ellenőrzést (útlevelek, jogosítványokat), jelzáloghitelt és hitelezést (hitelkérelmek, értékbecslések), beszerzést és szerződéseket (beszerzési megrendelések, megállapodások), valamint közműveket (számlázási kivonatok)- Egyedi elemzők készítése – Területspecifikus elemzők fejlesztése speciális tartalomkivonási igényekhez mind a négy modalitásban (dokumentumok, videó, hang és képek)
- Dokumentumok és videók osztályozása – Automatikusan kategorizálni és kinyerni információkat dokumentumokból és videókból típus szerint
Főbb hivatkozások:
- Forráskód
- Csomag (NPM)
- Product dokumentáció
- Samples
Kezdő lépések
Jelenleg támogatott környezetek
- LTS verziók a Node.js
- A Safari, a Chrome, az Edge és a Firefox legújabb verziói.
További részletekért lásd a támogató szabályzatunkat
Előfeltételek
- Egy Azure előfizetés
- Egy
Microsoft Foundry erőforrás egytámogatott régióban
Telepítsd a @azure/ai-content-understanding csomagot
Telepítsd a Azure Content Understanding klienskönyvtárát JavaScripthez npm segítségével:
npm install @azure/ai-content-understanding
Konfiguráld a Microsoft Foundry erőforrásodat
A Content Understanding SDK használata előtt be kell állítani egy Microsoft Foundry erőforrást, és telepíteni kell a szükséges nagy nyelvi modelleket. A Tartalom Megértése jelenleg OpenAI GPT modelleket használ (például gpt-4.1, gpt-4.1-mini és szövegbeágyazás-3-large).
1. lépés: Microsoft Foundry erőforrás létrehozása
Fontos: A Microsoft Foundry erőforrásodat olyan régióban kell létrehoznod, amely támogatja a Tartalom Megértését. Az elérhető régiók listájáért lásd: Azure Tartalom Megértés régió és nyelvi támogatás.
- Kövesd a Azure Tartalom Megértés gyorsindítása lépéseit, hogy Microsoft Foundry erőforrást hozz létre a Azure portal
- Szerezze meg a Foundry erőforrás végpont URL-jét az Azure Portal-ról:
- Menj
Azure Portal - Navigálj a Microsoft Foundry forrásodhoz
- Menj az Erőforrás-kezelő>kulcsok és a végpont oldalra
- Másold ki a Endpoint URL-et (általában
https://<your-resource-name>.services.ai.azure.com/)
- Menj
Fontos: Szükséges engedélyek megadása
Miután létrehozta a Microsoft Foundry erőforrást, meg kell adnod magadnak a Kognitív Szolgáltatások Felhasználói szerepét, hogy engedélyezd az API-hívásokat az alapértelmezett modell telepítések beállításához:
- Menj
Azure Portal - Navigálj a Microsoft Foundry forrásodhoz
- Menj a bal oldali menüben a Access Control (IAM) menühöz
- Kattintson a Szerepkör-hozzárendelés hozzáadása elemre>
- Válaszd ki a Kognitív Szolgáltatások Felhasználói szerepét
- Rendeld hozzá magadnak (vagy annak a felhasználó/szolgáltatási alapfelének, aki futtatja az alkalmazást).
Megjegyzés: Ez a szereposztás akkor is kötelező, ha te vagy az erőforrás tulajdonosa. E szerep nélkül nem tudod hívni a Content Understanding API-t előre összeállított elemzők modelltelepítésének konfigurálásához.
2. lépés: Telepítsd a szükséges modelleket
Fontos: Az előre összeszerelt és egyedi analizátorok nagy nyelvi modell telepítést igényelnek. Legalább ezeket a modelleket kell telepíteni, mielőtt előre összeszerelt és egyedi analizátorokat használnánk:
-
prebuilt-documentSearch,prebuilt-imageSearch,prebuilt-audioSearch,prebuilt-videoSearchgpt-4.1-mini és text-embedding-3-large igény - Más előre összeszerelt analizátorok, mint
prebuilt-invoice,prebuilt-receiptgpt-4.1-et és szövegbeágyazás-3-large rendszert igényelnek
Modell üzembe helyezése:
- Microsoft Foundry-ben menj a Deployments>Deploy model>Deploy base model oldalra
- Keresd meg és válaszd ki azt a modellt, amit telepíteni szeretnél. Jelenleg az előre összeszerelt analizátoroknak olyan modelleket igényelnek, mint
gpt-4.1,gpt-4.1-mini, éstext-embedding-3-large - Fejezd be a telepítést a preferált beállításokkal
- Figyeld meg a választott telepítés nevét (konvenció szerint a modell nevét használd telepítés névként, például
gpt-4.1agpt-4.1modellnél)
Ismételd meg ezt a folyamatot minden előre összeállított analizátorod által szükséges modellnél.
További információért a modellek telepítéséről lásd: Create model deployments in Microsoft Foundry portal.
3. lépés: Modelltelepítések konfigurálása (előre összeszerelt analizátorokhoz szükséges)
FONTOS: Ez egy egyszeri beállítás a Microsoft Foundry erőforrás alapján, amely a telepített modelleket az előre összeszerelt elemzők és egyedi modellek igényeihez köti. Ha több Microsoft Foundry erőforrásod van, mindegyiket külön kell konfigurálnod.
Be kell állítanod az alapértelmezett modellleképezéseket a Microsoft Foundry erőforrásodban. Ez programozott módon is megvalósítható az SDK-val. A konfiguráció a telepített modelleket (jelenleg gpt-4.1, gpt-4.1-mini, és text-embedding-3-large) a nagy nyelvi modellekhez köti előre összeszerelt analizátorokat.
A modelltelepítések kóddal történő konfigurálásához lásd a Update Defaults sample teljes példáját. Íme egy gyors áttekintés:
import { ContentUnderstandingClient } from "@azure/ai-content-understanding";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = process.env["CONTENTUNDERSTANDING_ENDPOINT"]!;
const client = new ContentUnderstandingClient(endpoint, new DefaultAzureCredential());
// Map your deployed models to the models required by prebuilt analyzers
const updatedDefaults = await client.updateDefaults({
modelDeployments: {
"gpt-4.1": process.env["GPT_4_1_DEPLOYMENT"]!,
"gpt-4.1-mini": process.env["GPT_4_1_MINI_DEPLOYMENT"]!,
"text-embedding-3-large": process.env["TEXT_EMBEDDING_3_LARGE_DEPLOYMENT"]!,
},
});
console.log("Model deployments configured successfully!");
Megjegyzés: A konfiguráció a Microsoft Foundry erőforrásodban megőrizhető, így ezt csak egyszer kell futtatnod erőforrásonként (vagy amikor megváltoztatod a telepítés neveit).
Az ügyfél hitelesítése
Az ügyfél hitelesítéséhez szükséged van a Microsoft Foundry erőforrás végpontjára és a hitelesítőkártyádra. Használhatsz API kulcsot vagy Microsoft Entra ID hitelesítést.
DefaultAzureCredential használata
A hitelesítés legegyszerűbb módja a , használata DefaultAzureCredential, amely több hitelesítési módszert támogat, és jól működik helyi fejlesztési és gyártási környezetekben egyaránt.
Az alábbi DefaultAzureCredential szolgáltató vagy más, Azure SDK-val ellátott hitelesítő szolgáltatók használatához kérjük, telepítsék a @azure/identity csomagot:
npm install @azure/identity
A Node.js és a csomópontszerű környezetek használatával a DefaultAzureCredential osztály használatával hitelesítheti az ügyfelet.
import { ContentUnderstandingClient } from "@azure/ai-content-understanding";
import { DefaultAzureCredential } from "@azure/identity";
const client = new ContentUnderstandingClient("<endpoint>", new DefaultAzureCredential());
Böngészőkörnyezetekhez használd a InteractiveBrowserCredential csomag @azure/identity számát az autentifikációhoz.
import { InteractiveBrowserCredential } from "@azure/identity";
import { ContentUnderstandingClient } from "@azure/ai-content-understanding";
const credential = new InteractiveBrowserCredential({
tenantId: "<YOUR_TENANT_ID>",
clientId: "<YOUR_CLIENT_ID>",
});
const client = new ContentUnderstandingClient("<endpoint>", credential);
API kulcs használata
Hitelesítést is használhatsz egy API kulcs használatával a Microsoft Foundry erőforrásodból:
import { ContentUnderstandingClient } from "@azure/ai-content-understanding";
import { AzureKeyCredential } from "@azure/core-auth";
const endpoint = process.env["CONTENTUNDERSTANDING_ENDPOINT"]!;
const apiKey = process.env["CONTENTUNDERSTANDING_KEY"]!;
const client = new ContentUnderstandingClient(endpoint, new AzureKeyCredential(apiKey));
Az API kulcs megszerzéséhez:
- Menj
Azure Portal - Navigálj a Microsoft Foundry forrásodhoz
- Menj az Erőforrás-kezelő>kulcsok és a végpont oldalra
- Másolj le valamelyik kulcsot (Key1 vagy Key2)
További információért a hitelesítésről lásd: Azure Identity klienskönyvtár.
JavaScript-csomag
Ahhoz, hogy ezt az ügyfélkódtárat a böngészőben használhassa, először egy kötegelőt kell használnia. A részletekért to do ezekről kérjük, tekintse meg csomagolási dokumentációnkat.
Fő fogalmak
Előre összeállított elemzők
A Content Understanding gazdag előre összeszerelt elemzőkészletet kínál, amelyek konfiguráció nélkül is használhatók. Ezek az elemzők több ezer valós dokumentum példát tartalmazó tudásbázison alapulnak, lehetővé téve számukra a dokumentumszerkezet megértését, valamint a formátum és tartalom eltéréseihez való alkalmazkodást.
Az előre összeszerelt analizátorok több kategóriába vannak szervezve:
-
RAG analizátorok – Optimalizáltak a visszakereséssel bővített generálási forgatókönyvekre, szemantikai elemzéssel és markdown kivonással. Ezek az elemzők minden tartalom esetében árverést és egy bekezdést
Summaryadnak vissza:-
prebuilt-documentSearch- Dokumentumokból (PDF, képek, Office dokumentumok) kivonatot nyer ki elrendezés megőrzésével, táblázatfelismeréssel, ábraelemzéssel és strukturált markdown kimenetel. RAG helyzetekre optimalizálva. -
prebuilt-imageSearch- Elemezi az önálló képeket, és egy bekezdéses leírást ad a képtartalomról. Kép megértésére és keresési helyzetekre optimalizálva. Szöveget tartalmazó képekhez (beleértve kézzel írt szöveget is) használjprebuilt-documentSearch. -
prebuilt-audioSearch- Hanganyag átírása beszélőnaplózással, időzítési információkkal és beszélgetésösszefoglalókkal. Támogatja a többnyelvű átírást. -
prebuilt-videoSearch- Elemzi a videótartalmat vizuális képkocka-eltávolítással, hangátirattal és strukturált összefoglalókkal. Időbeli igazítást biztosít a vizuális és hangos tartalom között, és több szegmens is vissza tud adni videónként.
-
-
Tartalomkivonási elemzők – A hangsúly az OCR-re és az elrendezés elemzésére (pl.
prebuilt-read, )prebuilt-layout -
Alap analizátorok – Alapvető tartalomfeldolgozási képességek, amelyeket egyedi elemzők szülőelemzőként használnak (pl.
prebuilt-document, ,prebuilt-image,prebuilt-audio,prebuilt-video) - Domainspecifikus elemzők – előre konfigurált elemzők gyakori dokumentumkategóriákhoz, beleértve a pénzügyi dokumentumokat (számlák, nyugták, bankszámlakivonatokat), személyazonossági dokumentumokat (útlevelek, jogosítványokat), adózási űrlapokat, jelzálog-dokumentumokat és szerződéseket, valamint közműveket (számlázási kivonatok)
-
Hasznos analizátorok – Speciális eszközök sémák generálására és mezőkinyerésére (pl.
prebuilt-documentFieldSchema, )prebuilt-documentFields
Az elérhető előre összeszerelt analizátorok teljes listájáért lásd a Előre összeszerelt analizátorok dokumentációját.
Egyedi analizátorok
Egyedi elemzőket hozhatsz létre speciális mezősémákkal, amelyek multimodális tartalomfeldolgozáshoz (dokumentumok, képek, hang, videók). Egyedi elemzők lehetővé teszik, hogy a használati esetedhez igazított domainspecifikus információkat nyerj ki.
Tartalomtípusok
Az API a bemenet alapján különböző tartalomtípusokat ad vissza:
-
document- Dokumentumfájlok (PDF, HTML, képek, Office dokumentumok, mint Word, Excel, PowerPoint és mások). Alapvető információkat nyújt, mint például az oldalszám és a MIME típus. Részletes információkat gyűjts, beleértve oldalakat, táblázatokat, ábrákat, bekezdéseket és még sok mást. -
audioVisual- Hang- és videófájlokhoz. Alapvető információkat nyújt, mint például időzítési információk (kezdő/végidők) és képkockaméretek (videó esetén). Részletes információkat szerezzen le, beleértve az átiratok kifejezéseit, időzítési információkat, videóhoz pedig kulcsképkocka-hivatkozásokat és még sok mást.
Aszinkron műveletek
A Tartalom Megértési műveletek aszinkron, hosszú ideig futó műveletek. A munkafolyamat a következő:
- Kezdje meg az elemzést – Indítsa el az elemzési műveletet (azonnal visszaadja a művelet helyét)
- Eredmények felmérése – Kérdezze az operáció helyét, amíg az elemzés be nem fejeződik
- Folyamateredmények – Kivonatold és megjelenítse a strukturált eredményeket
Az SDK olyan pollertípusokat kínál, amelyek automatikusan kezelik a lekérdezést a pollUntilDone()használatával . Elemzési műveletekhez az SDK egy pollert ad vissza, amely access ad az művelet azonosítójának. Ez az operatív azonosító használható és getResultFiledeleteResult a metódusokkal.
Fő osztályok
-
ContentUnderstandingClient- A fő kliens a tartalomelemzésre, valamint az analizátorok létrehozására, kezelésére és konfigurálására -
AnalysisResult- Tartalmazza egy elemzési művelet strukturált eredményeit, beleértve a tartalmi elemeket, a markdown-okat és a metaadatokat
Szálbiztonság
Garantáljuk, hogy minden kliens instance metódus szálbiztonságú és független egymástól. Ez biztosítja, hogy az ügyfélpéldányok újrafelhasználására vonatkozó javaslat mindig biztonságos legyen, akár több szálon is.
További fogalmak
Ügyfélopciók | Válasz elérése | Hosszú működésű műveletek | Hibák kezelése | Diagnosztika | Ügyfél élettartama
Példák
Különböző API-kkal ismerkedhetsz meg a Samples segítségével.
A minták a következőket mutatják:
- Konfiguráció – Modelltelepítési alapadatok konfigurálása előre összeállított és egyedi analizátorokhoz
-
Dokumentumtartalom kivonása – Strukturált markdown tartalmat extract ki PDF-ekből és képekből,
prebuilt-documentSearchoptimalizálva RAG (Retrieval-Augmented Generation) alkalmazásokra -
Multimodális tartalomelemzés – Elemzed tartalmat URL-ekből minden modalitásban: dokumentumokból, képekből, hangból és videóból származó markdownokat és összefoglalókat ,
prebuilt-documentSearch,prebuilt-imageSearch, és használatávalprebuilt-audioSearch, , ésprebuilt-videoSearch -
Domain-Specific Elemzés – Strukturált mezők kivonása számlákból
prebuilt-invoice - Fejlett dokumentumfunkciók – Kivonatok diagramok, hiperhivatkozások, képletek és jegyzetek eltávolítása dokumentumokból
- Egyedi analizátorok – Egyedi analizátorok készítése mező sémákkal speciális kivonási igényekhez
- Dokumentumbesorolás – Hozz létre és használj osztályozókat dokumentumok kategorizálására
- Elemző menedzsment – Elemzők felvétele, listázása, frissítése, másolása és törlése
- Eredménykezelés – Eredményfájlok letöltése videóelemzésből és elemzési eredmények törlése
Markdown tartalom kinyerése dokumentumokból
Használd az prebuilt-documentSearch analizátort a markdown tartalma kinyerésére a dokumentumokból:
import { ContentUnderstandingClient } from "@azure/ai-content-understanding";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = process.env["CONTENTUNDERSTANDING_ENDPOINT"]!;
const client = new ContentUnderstandingClient(endpoint, new DefaultAzureCredential());
const documentUrl = "https://example.com/sample_invoice.pdf";
// Analyze document using prebuilt-documentSearch
const poller = client.analyze("prebuilt-documentSearch", [{ url: documentUrl }]);
const result = await poller.pollUntilDone();
// Extract markdown content
if (result.contents && result.contents.length > 0) {
const content = result.contents[0];
console.log("Markdown Content:");
console.log(content.markdown);
// Access document-specific properties
if (content.kind === "document") {
console.log(`Pages: ${content.startPageNumber} - ${content.endPageNumber}`);
}
}
Strukturált mezők kivonása számlákból
Használd az prebuilt-invoice elemzőt strukturált számlamezők kinyerésére:
import {
ContentUnderstandingClient,
type DocumentContent,
type ContentFieldUnion,
} from "@azure/ai-content-understanding";
import { DefaultAzureCredential } from "@azure/identity";
const endpoint = process.env["CONTENTUNDERSTANDING_ENDPOINT"]!;
const client = new ContentUnderstandingClient(endpoint, new DefaultAzureCredential());
const invoiceUrl = "https://example.com/invoice.pdf";
// Analyze invoice using prebuilt-invoice analyzer
const poller = client.analyze("prebuilt-invoice", [{ url: invoiceUrl }]);
const result = await poller.pollUntilDone();
if (result.contents && result.contents.length > 0) {
const content = result.contents[0] as DocumentContent;
// Helper function to extract field values
const getFieldValue = (field: ContentFieldUnion | undefined): string | undefined => {
if (!field) return undefined;
if ("valueString" in field) return field.valueString;
if ("valueDate" in field) return field.valueDate;
if ("valueNumber" in field) return String(field.valueNumber);
return undefined;
};
// Extract invoice fields
const customerName = getFieldValue(content.fields?.["CustomerName"]);
const invoiceTotal = getFieldValue(content.fields?.["InvoiceTotal"]);
const invoiceDate = getFieldValue(content.fields?.["InvoiceDate"]);
console.log(`Customer Name: ${customerName ?? "(None)"}`);
console.log(`Invoice Total: ${invoiceTotal ?? "(None)"}`);
console.log(`Invoice Date: ${invoiceDate ?? "(None)"}`);
}
A teljes példákért lásd a samples könyvtárat
Hibaelhárítás
Gyakori problémák
Error: "Access elutasítva érvénytelen előfizetési kulcs vagy rossz API végpont miatt"
- Ellenőrizd, hogy a végpont URL-je helyes, és tartalmazza a lecsapást
- Győződj meg róla, hogy az API kulcsod érvényes-e, vagy hogy a Microsoft Entra ID hitelesítéseidnek megfelelő jogosultságai vannak
- Győződj meg róla, hogy a Cognitive Services User szerep van hozzárendelve a fiókodhoz
Hiba: "Model telepítés nem talált" vagy "Alapértelmezett modell telepítés nem konfigurálva"
- Győződj meg róla, hogy telepítetted a szükséges modelleket (gpt-4.1, gpt-4.1-mini, text-embedding-3-large) a Microsoft Foundry-ben
- Ellenőrizd, hogy beállítottad az alapértelmezett modelltelepítéseket (lásd: Modell telepítések konfigurálása)
- Ellenőrizd, hogy a telepítési nevek egyeznek-e az alapértelmezettben beállított nevekkel
Hiba: "Művelet sikertelen" vagy időkorlát
- Tartalom megértési műveletek aszinkronok, és időbe telhet
- Győződj meg róla, hogy megfelelően szavazol az eredményekre a poller objektumon
pollUntilDone() - Nézd meg a működési állapotot a hibás részletekért
Logging
A naplózás engedélyezése segíthet a hibákról szóló hasznos információk feltárásában. A HTTP-kérések és válaszok naplójának megtekintéséhez állítsa a környezeti változót a AZURE_LOG_LEVEL következőre info: . Alternatívaként a naplózás futásidőben engedélyezhető úgy, hogy a setLogLevel@azure/logger hívják:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
A naplók engedélyezéséhez részletes utasításokat kereshetsz a @azure/logger csomag docs oldalán.
Testing
Ez az SDK átfogó teszteket tartalmaz, amelyek különböző módokban futtathatók.
Gyors kezdés
# Install dependencies
pnpm install
# Build the SDK
npx turbo build --filter=@azure/ai-content-understanding...
# Run tests in playback mode (no Azure resources needed)
pnpm test
Tesztmódok
- Lejátszási mód (alapértelmezett): Előre rögzített HTTP interakciókat használ, nincs szükség Azure erőforrásra
- Record Mode: Élő Azure szolgáltatások ellen fut, és rögzíti a interakciókat a jövőbeni lejátszáshoz
- Live Mode: Élő Azure szolgáltatások ellen fut felvétel nélkül
Környezet beállítása élő/rekordtesztekhez
Másolás
test/sample.env:test/.envcp test/sample.env test/.envSzerkesztés
test/.envés kitöltés a tényleges értékeid:-
CONTENTUNDERSTANDING_ENDPOINT: A Microsoft Foundry erőforrás végpontod -
CONTENTUNDERSTANDING_KEY: Az API kulcsod (opcionális, ha DefaultAzureCredentialot használsz) - Modelltelepítési nevek (előre összeszerelt analizátorokhoz szükséges)
-
Tesztek futtatása rekord módban
Új tesztinterakciók rögzítéséhez vagy a meglévők frissítéséhez:
# Run tests in record mode
TEST_MODE=record pnpm test
Tesztek futtatása lejátszási módban
Tesztek futtatásához Azure erőforrások nélkül (előre felvett interakciók használatával):
# Simply run tests (playback is the default mode)
pnpm test
# Or explicitly set playback mode
TEST_MODE=playback pnpm test
Csomag-hatótávolságú / gyorsabb munkafolyamatok
Csak ezt a csomagot és annak függőségeit építsd fel:
npx turbo build --filter=@azure/ai-content-understanding... --token 1Csak Node teszteket futtass a gyorsabb iteráció érdekében (hagyd ki a böngészőteszteket):
TEST_MODE=record pnpm test:node # or TEST_MODE=playback pnpm test:node
Környezeti változók
Többféleképpen állíthatod be a jogosultságokat:
Preferált: Készíts
test/.envképet az értékek másolásávaltest/sample.envés kitöltésévelTartalék: Helyezd el az a-t
.enva csomag gyökerén (ugyanaz a könyvtár, mintpackage.json)Shell export: Exportáld a hitelesítéseket közvetlenül a shelledbe:
export CONTENTUNDERSTANDING_ENDPOINT="https://<your-resource>.services.ai.azure.com/" export CONTENTUNDERSTANDING_KEY="<your_key_here>" TEST_MODE=record pnpm test:node
Hibakeresési tippek
A teszteket rekord módban futtatva figyeld a tesztbeállítás által kinyomtatott hibakeresési sorokat:
DEBUG ENV ENDPOINT DEFINED: true
DEBUG ENV KEY DEFINED: true
Fontos: NE kötelezz el valódi kulcsokat. Tartsd
test/sample.envmeg a sablont, és győződj megtest/.envróla, hogy benne.gitignorevan.
Hibaelhárítási tesztek
-
"kulcs nem üres string kell legyen": A tesztfolyamat nem találta meg a
CONTENTUNDERSTANDING_KEY. Ellenőrizdtest/.env, hogy a package-root.envjelen van, és tartalmazza a kulcsot (vagy exportálod a shellben), mielőtt teszteket futtatsz. - "Invalid request" LRO hibák: Győződj meg róla, hogy a szolgáltatásod/régiód támogatja a tesztek által használt elemzőt, és hogy hálózati access elérhető legyen URL-alapú bemenetekhez.
Helyi minták futtatása
A mintakönyvtárak kizárva vannak a pnpm munkaterületből, hogy elkerüljék a függőségi konfliktusokat. A csomag helyi fejlesztő verziójával végzett minták futtatásához:
Megjegyzés: A Samples mappák futtatása
pnpm linkéspnpm installbelseje frissíti a helyi fájlokat, mintpackage.jsona mintakönyvtárak alatt.pnpm-lock.yamlEzek a változtatások csak helyi tesztelésre vonatkoznak, és nem szabad bejelentkezni. Ha véletlenül módosítod őket, használdgit restore <path>a visszaállítást.
Építsd el a csomagot:
npx turbo build --filter=@azure/ai-content-understanding...Kapcsolja össze a helyi csomagot a mintakönyvtárakban:
cd sdk/contentunderstanding/ai-content-understanding/samples/v1/typescript pnpm link ../../../ cd ../javascript pnpm link ../../../Telepítsd a dependenceket a mintakönyvtárakba:
cd sdk/contentunderstanding/ai-content-understanding/samples/v1/typescript pnpm install cd ../javascript pnpm install
Alternatíva (nincs package.json/lockfile változtatás)
Ha a helyi csomagot szeretnéd használni mintamódosítás package.json nélkül, vagy pnpm-lock.yaml, telepíthetsz egy csomagolt tarballból mentés nélkül:
Építsd el a csomagot:
npx turbo build --filter=@azure/ai-content-understanding...Hozzon létre egy helyi tarballt:
cd sdk/contentunderstanding/ai-content-understanding pnpm pack --pack-destination /tmpTelepítsd a tarballt a mintákba (mentés nélkül, zárolófájl nélkül):
cd sdk/contentunderstanding/ai-content-understanding/samples/v1/typescript npm install --no-save --no-package-lock /tmp/azure-ai-content-understanding-*.tgz cd ../javascript npm install --no-save --no-package-lock /tmp/azure-ai-content-understanding-*.tgz
Mintavétel futtatása
A függőségek telepítése után egyéni mintákat futtathatsz.
Környezeti változók beállítása:
Másold a sample.env fájlt, hogy fájlt .env hozz létre a mintakönyvtár gyökérjében. A következő parancsokat futtassuk a csomaggyökérből (sdk/contentunderstanding/ai-content-understanding):
# For TypeScript samples
cp sample.env samples/v1/typescript/.env
# For JavaScript samples
cp sample.env samples/v1/javascript/.env
Ezután szerkesztsd a .env fájlt, és töltsd ki a tényleges értékeket:
CONTENTUNDERSTANDING_ENDPOINT=https://<your-resource>.services.ai.azure.com/
CONTENTUNDERSTANDING_KEY=<your-api-key>
Megjegyzés: A
.envfájlnak a mintamappagyökérnél kell lennie (ugyanazon a szinten, mintpackage.json), nem bentsrc/vagydist/.
TypeScript minták:
cd samples/v1/typescript
npm run build
node dist/analyzeBinary.js
JavaScript minták:
cd samples/v1/javascript
node analyzeBinary.js
A teljes beállítási utasításokért és elérhető mintákért lásd:
Következő lépések
- Fedezze fel a samples könyvtárat teljes kódpéldákért
- Részletes szolgáltatási információkért olvassa el a Azure AI Content Understanding dokumentációt
Közreműködés
Ha szeretnél hozzájárulni ehhez a könyvtárhoz, kérjük, olvasd el a hozzájárulás útmutatót hogy többet megtudj arról, hogyan lehet elkészíteni és tesztelni a kódot.
Kapcsolódó projektek
Azure SDK for JavaScript