Azure AI Discovery Client Library for JavaScript - Version 1.0.0

Dieses Paket enthält ein isomorphes SDK (läuft sowohl in Node.js als auch in Browsern) für den Azure AI Discovery Service.

Die Bibliothek stellt zwei Clients bereit:

  • WorkspaceClient – arbeiten Sie mit Gesprächen, Untersuchungen, Aufgaben und Tools in einem Discovery-Arbeitsbereich.
  • BookshelfClient — Wissensdatenbanken in einem Discovery-Bücherregal verwalten und abfragen.

Jeder Client zielt auf seinen eigenen Service-Endpunkt ab.

Wichtige Links:

Erste Schritte

Derzeit unterstützte Umgebungen

Weitere Informationen finden Sie in unserer Supportrichtlinie.

Voraussetzungen

Installieren Sie das @azure/ai-discovery-Paket

Installiere die Discovery-Client-Bibliothek für JavaScript mit npm:

npm install @azure/ai-discovery

Erstellen und authentifizieren Sie die Clients

Um ein Client-Objekt zu erstellen, benötigen Sie den Service endpoint und ein credential. Die Azure AI Discovery-Clients verwenden Microsoft Entra-Zugangsdaten zur Authentifizierung. WorkspaceClient Und BookshelfClient jeder zielt auf seinen eigenen Endpunkt ab, also erstelle die benötigten Client(en) mit dem entsprechenden Endpunkt. Die Endpunkte für deine Discovery-Ressourcen findest du im Azure-Portal.

Sie können sich mit der Microsoft Entra ID authentifizieren, indem Sie eine Zugangsdaten aus der @azure/identity-Bibliothek oder ein bestehendes Microsoft Entra-Token verwenden.

Um den unten gezeigten DefaultAzureCredential Anbieter oder andere Anmeldeinformationsanbieter zu verwenden, die mit dem Azure SDK bereitgestellt werden, installieren Sie bitte das @azure/identity Paket:

npm install @azure/identity

Sie müssen außerdem eine neue Microsoft Entra-Anwendung registrieren und Zugang zu Azure AI Discovery gewähren, indem Sie Ihrem Service Principal eine geeignete Rolle zuweisen (Hinweis: Rollen wie "Owner" diese gewähren nicht die erforderlichen Berechtigungen).

Weitere Informationen darüber, wie man eine Microsoft Entra-Anwendung erstellt, finden Sie in diesem Leitfaden.

Mit Node.js- und nodeähnlichen Umgebungen kannst du die DefaultAzureCredential Klasse nutzen, um die Clients zu authentifizieren.

import { DefaultAzureCredential } from "@azure/identity";
import { WorkspaceClient, BookshelfClient } from "@azure/ai-discovery";

const credential = new DefaultAzureCredential();
// WorkspaceClient exposes conversations, investigations, tasks, and tools.
const workspaceClient = new WorkspaceClient("<workspace-endpoint>", credential);
// BookshelfClient exposes knowledge bases.
const bookshelfClient = new BookshelfClient("<bookshelf-endpoint>", credential);

Verwenden Sie für Browserumgebungen die InteractiveBrowserCredential aus dem @azure/identity Paket, um sich zu authentifizieren.

import { InteractiveBrowserCredential } from "@azure/identity";
import { WorkspaceClient, BookshelfClient } from "@azure/ai-discovery";

const credential = new InteractiveBrowserCredential({
  tenantId: "<YOUR_TENANT_ID>",
  clientId: "<YOUR_CLIENT_ID>",
});
const workspaceClient = new WorkspaceClient("<workspace-endpoint>", credential);
const bookshelfClient = new BookshelfClient("<bookshelf-endpoint>", credential);

JavaScript-Bündel

Um diese Clientbibliothek im Browser zu verwenden, müssen Sie zuerst einen Bundler verwenden. Ausführliche Informationen dazu finden Sie in unserer Bündelungsdokumentation.

Zentrale Konzepte

WorkspaceClient

WorkspaceClient bietet Zugriff auf Discovery-Arbeitsbereich-Funktionen: Gespräche, Untersuchungen, Aufgaben und Werkzeuge. Erkunden Sie die Methoden dieses Kunden, um mit Ressourcen in einem Discovery-Arbeitsbereich zu arbeiten.

BücherregalClient

BookshelfClient bietet Zugang zu den Funktionen des Discovery-Bücherregals: Verwaltung und Abfrage von Wissensdatenbanken. Erkunden Sie die Methoden auf diesem Kunden, um mit Wissensbasen in einem Discovery-Bücherregal zu arbeiten.

Examples

Liste der Wissensbasen

Listen Sie die Wissensdatenbanken in einer Discovery Bookshelf-Ressource mit BookshelfClientauf.

import { BookshelfClient } from "@azure/ai-discovery";
import { DefaultAzureCredential } from "@azure/identity";

const client = new BookshelfClient("<bookshelf-endpoint>", new DefaultAzureCredential());
for await (const knowledgeBase of client.knowledgeBases.list()) {
  console.log(knowledgeBase.name);
}

Listen Sie Aufgaben in einer Untersuchung auf

Listen Sie die Aufgaben auf, die zu einer Untersuchung WorkspaceClientgehören.

import { WorkspaceClient } from "@azure/ai-discovery";
import { DefaultAzureCredential } from "@azure/identity";

const client = new WorkspaceClient("<workspace-endpoint>", new DefaultAzureCredential());
for await (const task of client.tasks.list("<project-name>", "<investigation-name>")) {
  console.log(task.name);
}

Troubleshooting

Protokollierung

Das Aktivieren der Protokollierung kann hilfreiche Informationen zu Fehlern aufdecken. Um ein Protokoll von HTTP-Anforderungen und -Antworten anzuzeigen, legen Sie die AZURE_LOG_LEVEL Umgebungsvariable auf infofest. Alternativ kann die Protokollierung zur Laufzeit durch Aufrufen von setLogLevel im @azure/loggeraktiviert werden:

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

Ausführlichere Anweisungen zum Aktivieren von Protokollen finden Sie in den @azure/Logger-Paketdokumenten.

Nächste Schritte

Schau dir den Ordner package samples an, der vollständig ausführbaren Code enthält.

Contributing

Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie bitte den mitwirkenden Leitfaden, um mehr über das Erstellen und Testen des Codes zu erfahren.