Jitterbit Sales Agent
Übersicht
Jitterbit stellt den Sales Agent Kunden über den Jitterbit Marketplace zur Verfügung. Dieser Agent soll das interne Vertriebsteam Ihrer Organisation unterstützen. Der Agent nutzt die Retrieval-Augmented Generation (RAG)-Technik, die LLM-Reasoning mit Zugriff auf externe Tools und Datenquellen kombiniert. Er führt folgende Aufgaben aus:
- Verbindung zu NetSuite und Salesforce, um Echtzeitdaten zu Verkaufsaufträgen, Preisen und Kundendaten mit Jitterbit Studio abzurufen.
- Integration mit einem LLM zur Bereitstellung eines intelligenten Sales Agent-Chatbots, auf den über eine mit Jitterbit API Manager erstellte benutzerdefinierte API zugegriffen wird.
Dieses Dokument erklärt die Einrichtung und den Betrieb dieses KI-Agenten. Es behandelt Architektur und Voraussetzungen, Beispiel-Prompts, die zeigen, was der Agent kann, sowie Schritte zur Installation, Konfiguration und zum Betrieb des KI-Agenten.
KI-Agent-Architektur
Das folgende Diagramm zeigt die im Sales Agent implementierte Architektur:
Slack bot) GENERIC_UI_APP(
Generic UI app) JB_APIM_A((
Jitterbit API Manager
custom API)) JB_APIM_B((
Jitterbit API Manager
custom API)) MAIN_ENTRY(Main Entry - Slack API Request Handler workflow) GENERIC_API_RH(Generic API Request Handler workflow) MAIN(Main - AI Agent Tools Logic workflow) AUTH_UTIL@{ shape: delay, label: "Authorization utility" } AUTH_WF[Utility - User Authorization and Session workflow] HISTORY_CONTEXT_UTIL@{ shape: delay, label: "History context utility" } INSERT_QUERY_QA_HIST_WF[Utility - Bot Chat History Storage workflow] TOOLS_ROUTER_OP[Tools Router operation] DECISION@{ shape: diamond, label: "Identify which function is called based on LLM response" } CUSTOMER_LOOKUP_TOOL@{ shape: delay, label: "Customer lookup tool" } CUSTOMER_LIST_WF[Tool - Customer Lookup workflow] PRICING_TOOL@{ shape: delay, label: "Pricing tool" } PRICING_DETAILS_WF[Tool - Pricing Sheets workflow] ORDER_FORM_TOOL@{ shape: delay, label: "Order form tool" } ORDER_FORM_DETAILS_WF[Tool - Customer Order Details workflow] FUNCTION_RESPONSE_TO_OPENAI[Function response to Azure Open AI] FUNCTION_RESPONSE[Function response] subgraph BOUNDARY[**Sales agent architecture**] LLM_NAT_LANG_REPLY[LLM-crafted natural-language reply] AZURE_OPENAI[ Azure Open AI] subgraph CHATBOT_UI_APPS[Chatbot UI apps] SLACK_BOT GENERIC_UI_APP end subgraph JB_AI[ **Jitterbit Studio project**] JB_APIM_A JB_APIM_B MAIN_ENTRY GENERIC_API_RH MAIN DECISION TOOLS_ROUTER_OP subgraph GROUP2[ ] HISTORY_CONTEXT_UTIL AUTH_UTIL ORDER_FORM_TOOL PRICING_TOOL CUSTOMER_LOOKUP_TOOL end subgraph GROUP3[ ] CUSTOMER_LIST_WF PRICING_DETAILS_WF ORDER_FORM_DETAILS_WF AUTH_WF end subgraph GROUP4[ ] FUNCTION_RESPONSE --> FUNCTION_RESPONSE_TO_OPENAI FUNCTION_RESPONSE_TO_OPENAI -->|Store Q and A| INSERT_QUERY_QA_HIST_WF end end end SLACK_BOT --User question--> JB_APIM_A GENERIC_UI_APP -->|User question| JB_APIM_B JB_APIM_A --> MAIN_ENTRY --> MAIN JB_APIM_B --> GENERIC_API_RH --> MAIN MAIN --> HISTORY_CONTEXT_UTIL MAIN ----> AUTH_UTIL --> AUTH_WF MAIN --> DECISION --> TOOLS_ROUTER_OP HISTORY_CONTEXT_UTIL --> INSERT_QUERY_QA_HIST_WF TOOLS_ROUTER_OP --> ORDER_FORM_TOOL ORDER_FORM_TOOL --> ORDER_FORM_DETAILS_WF ORDER_FORM_DETAILS_WF --> FUNCTION_RESPONSE TOOLS_ROUTER_OP --> PRICING_TOOL PRICING_TOOL --> PRICING_DETAILS_WF PRICING_DETAILS_WF --> FUNCTION_RESPONSE TOOLS_ROUTER_OP --> CUSTOMER_LOOKUP_TOOL CUSTOMER_LOOKUP_TOOL --> CUSTOMER_LIST_WF CUSTOMER_LIST_WF --> FUNCTION_RESPONSE FUNCTION_RESPONSE_TO_OPENAI ---->|REST call| AZURE_OPENAI AZURE_OPENAI -->|Response| FUNCTION_RESPONSE_TO_OPENAI CHATBOT_UI_APPS --- LLM_NAT_LANG_REPLY LLM_NAT_LANG_REPLY --- FUNCTION_RESPONSE_TO_OPENAI classDef Clear fill:white, stroke:white, stroke-width:0px classDef Plain fill:white, stroke:black, stroke-width:3px, rx:15px, ry:15px classDef BoundaryStyle fill:white, stroke-width:0px, rx:15px, ry:15px class CHATBOT_UI_APPS,JB_AI Plain class GROUP2,GROUP3,GROUP4 Clear class BOUNDARY BoundaryStyle
Voraussetzungen
Für die Verwendung des Sales Agent sind folgende Komponenten erforderlich oder im Design des Agenten vorgesehen.
Harmony-Komponenten
Sie benötigen eine Jitterbit Harmony-Lizenz mit Zugriff auf folgende Komponenten:
- Jitterbit Studio
- Jitterbit API Manager
- Jitterbit Sales Agent als Lizenz-Add-on erworben
- Jitterbit Cloud Datastore (optional)
Unterstützte Endpunkte
Die folgenden Endpunkte sind im Design des Agenten enthalten, aber andere Systeme können durch Änderung der Endpunktkonfigurationen und Workflows des Projekts unterstützt werden.
Large Language Model (LLM)
Der KI-Agent verwendet Azure OpenAI als LLM-Anbieter. Um Azure OpenAI zu verwenden, benötigen Sie ein Microsoft Azure-Abonnement mit Berechtigungen zur Erstellung und Verwaltung von Azure OpenAI mit einem bereitgestellten gpt-4o-Modell.
Tipp
Um Preisstufen basierend auf Ihren spezifischen Anforderungen und erwarteten Nutzungen zu wählen, beachten Sie Azure OpenAI-Preise.
Chat-Schnittstelle
Das Design des Agenten nutzt Slack als Chat-Schnittstelle für die Interaktion mit dem KI-Agenten.
NetSuite
Der Agent verbindet sich mit NetSuite als primäre Quelle für Kundenauftragsformulare. Die Integration ermöglicht es dem Agenten, Auftragsdaten in Echtzeit während Benutzerinteraktionen abzurufen, zu aktualisieren oder zu validieren.
Salesforce
Der Agent nutzt Salesforce, um Kundenkonten und Produktpreise zu verwalten. Diese Integration versorgt den Agenten mit aktuellen Daten, die erforderlich sind, um genaue Angebote und Kontodaten zu generieren.
Beispiel-Prompts
Hier sind Beispiel-Prompts, die der Sales Agent mit Zugriff auf die entsprechenden Daten bearbeiten kann:
Kundensuch-Fragen
- „Zeige mir alle Kunden in Kalifornien."
- „Welche Kunden haben ihren Sitz in Sydney?"
Auftragsformular / Lizenzdetails-Fragen
- „Welche Produkte hat Acme Corp gekauft?"
- „Wie viele ‚Product X' ist ByteTech GmbH lizenziert?"
- „Kannst du mir die Auftragsdetails für AcmeCloud Ltd geben?"
- „Wie lange ist das Abonnement für Zento Systems?"
Produktpreis- oder Tarifanfragen
- „Wie hoch ist der Preis von ‚Product X' in USD?"
- „Wie viel kostet das Professional-Abonnement?"
- „Welcher Abonnement-Plan ermöglicht 10 Umgebungen?"
- „Kannst du die Kosten für 15 ‚Product X' und 4 ‚Product Y' berechnen?"
Kontoverantwortliche-Anfragen
- „Wer verwaltet Acme Corp?"
- „Welche Kunden werden von jsmith@abc.com verwaltet?"
- „Zeige Kunden, die von David Brown in Texas betreut werden."
- „Liste Konten auf, die von Grace in Großbritannien verwaltet werden."
Installation, Konfiguration und Betrieb
Befolgen Sie diese Schritte, um diesen KI-Agenten zu installieren, zu konfigurieren und zu betreiben:
- Anpassungen herunterladen und das Projekt installieren.
- Microsoft Azure-Ressourcen erstellen.
- Slack-App erstellen.
- Jitterbit Cloud Datastore vorbereiten.
- Projektvariablen konfigurieren.
- Verbindungen testen.
- Projekt bereitstellen.
- Benutzerdefinierte Jitterbit-API erstellen.
- Projekt-Workflows überprüfen.
- Projekt-Workflows auslösen.
Anpassungen herunterladen und das Projekt installieren
Befolgen Sie diese Schritte, um Anpassungsdateien herunterzuladen und das Studio-Projekt zu installieren:
-
Melden Sie sich beim Harmony-Portal unter https://login.jitterbit.com an und öffnen Sie Marketplace.
-
Suchen Sie den KI-Agenten namens Jitterbit Sales Agent. Um den Agenten zu finden, können Sie die Suchleiste verwenden oder im Bereich Filter unter Typ die Option KI-Agent auswählen, um die Anzeige auf die verfügbaren KI-Agenten zu beschränken.
-
Klicken Sie auf den Link Dokumentation des KI-Agenten, um dessen Dokumentation in einem neuen Tab zu öffnen. Halten Sie den Tab offen, um später darauf zu verweisen.
-
Klicken Sie auf Projekt starten, um einen zweistufigen Konfigurationsdialog zu öffnen, um Anpassungen herunterzuladen und den KI-Agenten als Studio-Projekt zu importieren.
Hinweis
Wenn Sie den KI-Agenten noch nicht erworben haben, wird stattdessen Agent abrufen angezeigt. Klicken Sie darauf, um einen Informationsdialog zu öffnen, und klicken Sie dann auf Senden, um einen Vertreter zu bitten, Sie zum Kauf des KI-Agenten zu kontaktieren.
-
In Konfigurationsschritt 1, Anpassungen herunterladen, werden die folgenden Dateien bereitgestellt, um die Einrichtung des Index und des Indexers in Azure AI Search sowie die Erstellung der Slack-App zu erleichtern. Wählen Sie die Dateien aus und klicken Sie auf Dateien herunterladen:
-
Azure AI Search-Index- und Indexer-JSON-Definitionsdateien
Azure_AI_Search_Datasource_Definition.jsonAzure_AI_Search_Index_Definition.jsonAzure_AI_Search_Indexer_Definition.json
-
Slack-App-Manifestdatei
slack_app_manifest.json
Tipp
Der Konfigurationsdialog enthält eine Warnung, die Vorlage nicht zu importieren, bevor Endpunkt-Anpassungen angewendet werden. Diese Warnung gilt nicht für diesen KI-Agenten und kann ignoriert werden. Befolgen Sie die empfohlene Schrittfolge in dieser Dokumentation.
Klicken Sie auf Weiter.
-
-
In Konfigurationsschritt 2, Neues Projekt erstellen, wählen Sie eine Umgebung aus, in der Sie das Studio-Projekt erstellen möchten, und klicken Sie auf Projekt erstellen.
-
Ein Fortschrittsdialog wird angezeigt. Nachdem er anzeigt, dass das Projekt erstellt wurde, verwenden Sie den Dialog-Link Zu Studio wechseln oder öffnen Sie das Projekt direkt über die Seite Projekte von Studio.
Microsoft Azure-Ressourcen erstellen
Erstellen Sie die folgenden Microsoft Azure-Ressourcen und behalten Sie die folgenden Informationen bei, um den KI-Agenten zu konfigurieren. Um diese Ressourcen zu erstellen und zu verwalten, benötigen Sie ein Microsoft Azure-Abonnement mit den entsprechenden Berechtigungen.
Azure Blob-Container
Man muss einen Azure Blob-Container erstellen, um Kundendetails zu speichern. Daten aus dem Blob-Container werden mit einem Index und einem Indexer in Azure AI Search indiziert.
Man benötigt die SAS-URL des Containers, um die Werte der Azure Blob Storage-Projektvariablen zu bestimmen. So generiert man die SAS-URL:
- Navigieren Sie im Azure-Portal zu Speicherkonten und öffnen Sie das entsprechende Speicherkonto.
- Wählen Sie im Ressourcenmenü unter Datenspeicher die Option Container aus und öffnen Sie den gewünschten Container.
- Wählen Sie im Ressourcenmenü unter Einstellungen die Option Shared Access Tokens aus.
- Verwenden Sie das Menü Berechtigungen, um zu überprüfen, dass die Shared Access Signature (SAS)-URL für diesen Container mindestens die Berechtigungen Lesen und Schreiben hat:

- Klicken Sie auf Generate SAS token and URL (SAS-Token und URL generieren).
- Kopieren Sie die Blob SAS URL, die unten angezeigt wird.
- Bestimmen Sie die Werte der Azure Blob Storage-Projektvariablen aus der SAS-URL. Die SAS-URL hat das Format
{{ azure_blob_base_url }}/{{ Azure_Customer_Details_Container }}?{{ azure_customer_detail_blob_sig }}.
Wenn Sie die JSON-Definitionsdateien in den Anpassungsdateien des KI-Agenten verwenden, um den Index und den Indexer zu generieren, benötigen Sie auch den Azure Blob Storage-Kontoschlüssel. Um Kontenzugriffstasten anzuzeigen:
- Navigieren Sie im Azure-Portal zu Speicherkonten und öffnen Sie das spezifische Speicherkonto.
- Wählen Sie im Ressourcenmenü unter Security + networking (Sicherheit + Netzwerk) die Option Access keys (Zugriffstasten) aus.
-
Klicken Sie auf Show keys (Tasten anzeigen), um den Zugriffstasten anzuzeigen, der während der Konfiguration von Azure AI Search verwendet werden soll.

Azure AI Search-Dienst
Sie müssen einen Azure AI Search-Dienst erstellen und dessen Index und Indexer konfigurieren, um die Daten aus dem Blob-Container zu verarbeiten.
Sie benötigen die URL und den API-Schlüssel des Azure AI Search-Dienstes, um die Werte der Azure AI Search-Projektvariablen zu bestimmen:
- URL: Um den Wert für
azure_ai_search_urlzu erhalten, lesen Sie die Azure-Dokumentation Get service information (Dienstinformationen abrufen). - API-Schlüssel: Um den Wert für
azure_ai_search_api_keyzu erhalten, lesen Sie die Azure-Dokumentation Configure role-based access (Rollengestützten Zugriff konfigurieren).
Sie können die JSON-Definitionsdateien in den Anpassungsdateien des KI-Agenten verwenden, um den Index und den Indexer zu generieren, oder Sie können diese selbst erstellen.
Wenn Sie die bereitgestellten Definitionsdateien verwenden, müssen Sie die folgenden Platzhalter durch Ihre eigenen Konfigurationswerte ersetzen:
Azure_AI_Search_Indexer_Definition.json
| Platzhalter | Beschreibung |
|---|---|
{{Your Azure AI Search Service Name}} |
Der Name des Azure AI Search-Dienstes. |
Azure_AI_Search_Datasource_Definition.json
| Platzhalter | Beschreibung |
|---|---|
{{Your Azure AI Search Service Name}} |
Der Name des Azure AI Search-Dienstes. |
{{Your Azure Blob Account Name}} |
Der Name des Azure Blob-Kontos. |
{{Your Azure Blob Account Key}} |
Der Zugriffstasten für das Azure Blob Storage-Konto, wie in Azure Blob-Container oben beschrieben. |
{{your_azure_blob_container_name}} |
Der Name des Azure Blob-Containers. |
Azure OpenAI-Ressource
Sie müssen eine Azure OpenAI-Ressource erstellen und ein gpt-4o- oder gpt-4.1-Modell über das Azure AI Foundry-Portal bereitstellen.
Sie benötigen den Bereitstellungsnamen, die Azure OpenAI-Endpunkt-URL und den API-Schlüssel, um die Werte der Azure OpenAI-Projektvariablen zu bestimmen. Um diese Werte zu finden:
- Öffnen Sie im Azure AI Foundry-Portal die spezifische OpenAI-Ressource.
-
Die Werte für die Endpoint-URL (
azure_openai_base_url) und den API-Schlüssel (azure_openai_api_key) werden auf der Landingpage der Ressource angezeigt:
-
Wählen Sie im Navigationsmenü unter Gemeinsame Ressourcen die Option Bereitstellungen aus. Der Bereitstellungsname (
Azure_OpenAI_Deployment_Name) wird angezeigt.
Slack-App erstellen
Führen Sie diese Schritte aus, um die Sales Agent Chat-Oberfläche in Slack zu erstellen:
-
Erstellen Sie eine Slack-App mit der Slack-App-Manifestdatei (
slack_app_manifest.json), die mit den Anpassungsdateien dieses KI-Agenten bereitgestellt wird. Alternativ können Sie die App von Grund auf neu erstellen. -
Wenn Sie die bereitgestellte Manifestdatei verwenden, ersetzen Sie die folgenden Platzhalter durch Ihre eigenen Konfigurationswerte:
Platzhalter Beschreibung {{Replace with Slack bot name}}Der Name, den Ihr Slack-Bot haben soll und der Benutzern angezeigt wird. Ersetzen Sie diesen Wert an zwei Stellen im Manifest. {{Replace with Jitterbit API URL}}Die Service-URL der Jitterbit Custom API, die Sie unter Jitterbit Custom API erstellen erstellt haben. -
Installieren Sie die App in Ihrem Slack-Arbeitsbereich.
-
Rufen Sie das Bot-Token ab (für das Feld Bot User OAuth Token der Slack-Verbindung) und geben Sie dessen Wert für die Projektvariable
slack_bot_oauth_user_tokenein. -
Konfigurieren Sie die Projektvariable
slack_channel_namemit dem Kanal, an den Benachrichtigungen gesendet werden sollen. -
Geben Sie den Bot-Token-Wert für die Projektvariable
slack_bot_oauth_user_tokenund den Kanalnamen für die Projektvariableslack_channel_nameein. Sie konfigurieren diese im nächsten Schritt.
Jitterbit Cloud Datastore vorbereiten
Erstellen Sie zwei Schlüsselspeicher in Jitterbit Cloud Datastore: Bot_Authorized_Users und askjb_sales_q_and_a. Die Felder Key, AlternativeKey und Value sind standardmäßig vorhanden. Fügen Sie die benutzerdefinierten Felder hinzu, die die in den folgenden Tabellen aufgeführten Namen und Typen haben.
Nach dem Hinzufügen benutzerdefinierter Felder fügen Sie für jeden Benutzer, der den KI-Agenten-Bot verwenden darf, ein Schlüsselspeicherregister hinzu. Sie müssen die in den folgenden Tabellen markierten Werte manuell definieren. Sie können die Werte von Feldern, deren Werte automatisch ausgefüllt werden oder nicht verwendet werden, leer lassen.
Bot_Authorized_Users
Dieser Schlüsselspeicher enthält die Liste der autorisierten Benutzer und deren Sitzungen. Sie müssen die E-Mail-Adressen von Benutzern, die berechtigt sind, auf den KI-Agenten-Bot zuzugreifen, manuell eingeben. Keine benutzerdefinierten Felder erforderlich.
| Feldname | Typ | Beschreibung |
|---|---|---|
Key |
Text | Manuell eingeben. Die E-Mail-Adresse des Benutzers, der berechtigt ist, mit dem KI-Agenten über den Slack-Bot zu interagieren. |
AlternativeKey |
Text | Automatisch ausgefüllt. Die Sitzung für den Benutzer wird während der Ausführung generiert. Keine manuelle Eingabe erforderlich. |
Value |
Text | Manuell eingeben. Die E-Mail-Adresse des Benutzers, der berechtigt ist, mit dem KI-Agenten über den Slack-Bot zu interagieren. Ein Wert ist erforderlich, damit der KI-Agent funktioniert. |
askjb_sales_q_and_a
Dieser Schlüsselspeicher speichert den Chat-Verlauf eines Bots, um Gedächtniskontext für das LLM bereitzustellen. Er wird von der Integration verwendet, um Frage- und Antwort-Verlauf zu speichern. Alle Daten werden während der Interaktionsausführung automatisch eingegeben. Fügen Sie die folgenden benutzerdefinierten Felder hinzu:
| Feldname | Typ | Beschreibung |
|---|---|---|
Key |
Text | Automatisch ausgefüllt. Gibt die eindeutige Kennung an, die dem System zugewiesen wird. |
AlternativeKey |
Text | Automatisch ausgefüllt. Gibt die eindeutige Kennung an, die einem Chat-Session vom System zugewiesen wird. |
Value |
Text | Nicht verwendet. |
slackChannel |
Text | Automatisch ausgefüllt. Die Slack-Kanal-ID, von der die Nachricht gesendet wird. |
User |
Text | Automatisch ausgefüllt. Der Slack-Benutzername des Benutzers, der die Nachricht sendet. |
FirstName |
Text | Automatisch ausgefüllt. Vorname des Benutzers, der die Nachricht sendet. |
LastName |
Text | Automatisch ausgefüllt. Nachname des Benutzers, der die Nachricht sendet. |
Email |
Text | Automatisch ausgefüllt. E-Mail-Adresse des Benutzers, der die Nachricht sendet. |
MessageTimestampText |
Text | Automatisch ausgefüllt. Der Zeitstempel der Nachricht. |
UserQuestion |
Big Text | Automatisch ausgefüllt. Die Frage oder Nachricht, die der Benutzer dem KI-Agenten übermittelt. |
AIAnswer |
Big Text | Automatisch ausgefüllt. Die Antwort, die der KI-Agent auf die Benutzerfrage generiert. |
ai_reformulate_question |
Big Text | Automatisch ausgefüllt. Die vom KI-Agenten umformulierte oder umgangssprachlich ausgedrückte Benutzerfrage, um das Verständnis zu verbessern. |
Projektvariablen konfigurieren
Im Studio-Projekt, das zuvor über den Marketplace installiert wurde, müssen Sie Werte für die folgenden Projektvariablen festlegen.
Um Projektvariablen zu konfigurieren, verwenden Sie das Aktionsmenü des Projekts, um Projektvariablen auszuwählen. Dies öffnet eine Schublade am unteren Rand der Seite, in der Sie die Werte überprüfen und festlegen können.
Salesforce
| Variablenname | Beschreibung |
|---|---|
SF_Login_URL |
Server Host in der Salesforce-Verbindung |
SF_Password |
Passwort in der Salesforce-Verbindung |
SF_Security_Token |
Sicherheitstoken in der Salesforce-Verbindung |
SF_User_Name |
Benutzername in der Salesforce-Verbindung |
NetSuite
| Variablenname | Beschreibung |
|---|---|
NetSuite_Account |
Konto in der NetSuite-Verbindung |
NetSuite_Consumer_Key |
Consumer Key in der NetSuite-Verbindung |
NetSuite_Consumer_Secret |
Consumer Secret in der NetSuite-Verbindung |
NetSuite_Base_URL |
NetSuite-Basis-URL, wie z. B. https://{{NetSuite_Account}}.suitetalk.api.netsuite.com. |
NetSuite_Token_Key |
Token Key in der NetSuite-Verbindung |
NetSuite_Token_Secret |
Token Secret in der NetSuite-Verbindung |
Azure Blob Storage
| Variablenname | Beschreibung |
|---|---|
Azure_Customer_Details_Container |
Der Name des Azure Blob-Containers zum Speichern von Kundeninformationen aus Bestellformularen. |
azure_customer_detail_blob_sig |
SAS-URL-Signatur für Azure_Customer_Details_Container. |
azure_blob_base_url |
Azure-Containerdienst-Basis-URL für Azure_Customer_Details_Container. |
Tipp
Diese Werte können aus der SAS-URL abgeleitet werden, die das Format {{ azure_blob_base_url }}/{{ Azure_Customer_Details_Container }}?{{ azure_customer_detail_blob_sig }} hat.
Azure AI Search
| Variablenname | Beschreibung |
|---|---|
customer_search_index_name |
Der Name des Azure-Index, der Kundeninformationen aus Bestellformularen speichert. |
Azure_SalesOrders_Customer_Indexer |
Der Name des Azure-Indexers, der Daten aus Azure_Customer_Details_Container in den Index customer_search_index_name indiziert. |
azure_ai_search_url |
Basis-URL des Azure AI Search-Diensts. |
azure_ai_search_api_key |
API-Schlüssel für den Azure AI Search-Dienst. |
Azure OpenAI
| Variablenname | Beschreibung |
|---|---|
Max_Output_Tokens |
Die maximale Anzahl von Token, die das LLM in einer Antwort generieren kann. GPT-4.1 unterstützt bis zu 32768 Token, während GPT-4o bis zu 16384 unterstützt. |
Azure_OpenAI_Deployment_Name |
Der Name der Bereitstellung für das LLM in Azure OpenAI. |
azure_openai_base_url |
Basis-URL des Azure OpenAI-Diensts. |
azure_openai_api_key |
API-Schlüssel für den Azure OpenAI-Dienst. |
Slack
| Variablenname | Beschreibung |
|---|---|
salesorder_slack_bot_token |
Das Slack-Bot-Token, das nach dem Erstellen der Slack-App abgerufen wird und für das Bot-Benutzer-OAuth-Zugriffs-Token in der Slack-Verbindung verwendet wird. |
Hinweis
Die Slack-App wird in einem späteren Schritt erstellt. Vorerst können Sie diese Variable leer lassen.
Allgemein
| Variablenname | Beschreibung |
|---|---|
Authorized_User_Admin |
Kontaktname/E-Mail, die in der Antwort an den Benutzer angezeigt wird, wenn ein Fehler auftritt. |
Customer_LastOrder_DefaultDate |
Das Standarddatum (mm/dd/yyyy), ab dem Bestellungen bei der ersten Ausführung oder einer historischen Ausführung aus NetSuite abgerufen werden, wenn incrementalRun auf false gesetzt ist. Beispiel: 06/01/2004. |
Default_Last_Sync_Date |
Standardmäßiges letztes Synchronisierungsdatum, das verwendet wird, wenn der Cache-Wert nicht verfügbar ist. |
incrementalRun |
Wenn true, werden nur inkrementelle (neue oder aktualisierte) Bestellungen aus NetSuite abgerufen. Wenn false oder leer, wird eine vollständige Bestellhistorie ab dem Standarddatum abgerufen. |
Only_Unexpired_Orders |
Wenn true, werden nur Bestellungen mit nextbilldate größer als das heutige Datum aus NetSuite abgerufen. |
Verbindungen testen
Testen Sie die Endpunktkonfigurationen, um die Konnektivität mit den definierten Projektvaribablenwerten zu überprüfen.
Um Verbindungen zu testen, rufen Sie die Projektendpunkte und Konnektoren-Registerkarte in der Designkomponentenpalette auf, halten Sie den Mauszeiger über jeden Endpunkt und klicken Sie auf Testen.
Das Projekt bereitstellen
Stellen Sie das Studio-Projekt bereit.
Um das Projekt bereitzustellen, wählen Sie im Aktionsmenü des Projekts die Option Bereitstellen aus.
Erstellen Sie die benutzerdefinierte Jitterbit-API
Erstellen Sie eine benutzerdefinierte API mit API Manager für eine der folgenden Optionen:
- Slack-Bot-API-Request-Handler: Erforderlich, wenn Sie die im Design dieses KI-Agenten enthaltene Slack-Benachrichtigung verwenden.
- Generischer API-Request-Handler: Optional. Verwenden Sie diese Option für die Verarbeitung von API-Anfragen aus einer beliebigen Anwendung.
Erstellen Sie den Slack-Bot-API-Request-Handler
Diese benutzerdefinierte Jitterbit-API löst den Vorgang Slack Bot API Request Handler aus. Konfigurieren und veröffentlichen Sie die benutzerdefinierte API mit den folgenden Einstellungen:
- API-Service:
Slack Bot API Request Handler - Pfad:
/ - Projekt: Wählen Sie das Studio-Projekt aus, das aus dem
Jitterbit Sales Agentim Marketplace erstellt wurde - Auszulösender Vorgang:
Slack Bot API Request Handler - Methode:
POST - Antworttyp:
System Variable
Behalten Sie die Service-URL der veröffentlichten API für die Verwendung beim Erstellen der Slack-App bei. Die Service-URL finden Sie in der API-Detailansicht auf der Registerkarte Services, indem Sie den Mauszeiger über die Spalte Aktionen des Service bewegen und API-Service-URL kopieren anklicken.
Generischer API-Request-Handler
Diese benutzerdefinierte Jitterbit-API löst den Vorgang Generic API request Handler aus. Dies ist nicht erforderlich. Erstellen Sie diese API, wenn Sie andere Anwendungen zur Verarbeitung von HTTP-API-Anfragen verwenden. Konfigurieren und veröffentlichen Sie die benutzerdefinierte API mit den folgenden Einstellungen:
- Servicename:
Generic API request Handler - Projekt: Wählen Sie das Studio-Projekt aus, das aus dem
Jitterbit Sales Agentim Marketplace erstellt wurde - Vorgang:
Generic API request Handler - Methode:
POST - Antworttyp:
System Variable
Tipp
Sie können auch ein Sicherheitsprofil für die Authentifizierung hinzufügen.
{
"username": "abc@abc.com",
"sessionId": "123608",
"prompt": "Order Forms details for xyz"
}
{
"message": "Based on order forms, here are the complete order details: ...",
"status_code": 200
}
Projekt-Workflows überprüfen
Überprüfen Sie die Workflows im offenen Studio-Projekt zusammen mit den folgenden Beschreibungen, um zu verstehen, was sie bewirken. Die folgenden Beschreibungen zeigen auf, wo Sie das System durch Änderung der Endpunktkonfigurationen und Workflows des Projekts ersetzen könnten.
-
Utility-Upload Customer Order Forms to Azure
Dieser Workflow automatisiert die Verarbeitung von Bestellformularen, indem er Details aus NetSuite extrahiert, Dokumente in Azure Blob Storage hochlädt und diese im Azure AI Search-Index indiziert.
Dieser Workflow muss zuerst ausgeführt werden, um alle aktiven Kundendaten zu laden und Kundendetails für den KI-Agent verfügbar zu machen. Die Ausführung des Workflows wird unter Projekt-Workflows auslösen später auf dieser Seite beschrieben.
Falls sich die Bestellformdaten Ihrer Organisation in einem anderen System als NetSuite befinden, müssen Sie die Operationen des Workflows ändern, um NetSuite-spezifische Komponenten durch die für Ihren Endpunkt vorgesehenen zu ersetzen.
-
Main Entry - Slack API Request Handler
Dieser Workflow verwaltet eingehende Slack-Bot-Anfragen und überprüft die Benutzerautorisierung. Er wird jedes Mal über eine benutzerdefinierte Jitterbit-API ausgelöst, wenn Ihr Sales-Team mit der Slack-Bot-Chat-Benutzeroberfläche interagiert (d. h. eine Slack-Nachricht an diesen sendet). Die Konfiguration der benutzerdefinierten Jitterbit-API wird unter Benutzerdefinierte Jitterbit-API erstellen später auf dieser Seite beschrieben.
Falls Sie Slack nicht verwenden, kann dieser Workflow ignoriert werden und wird nicht ausgelöst. Um eine andere Chat-Benutzeroberfläche für die Interaktion Ihres Sales-Teams zu verwenden, nutzen Sie den Workflow
Generic API Request Handler, der ebenfalls über eine benutzerdefinierte Jitterbit-API ausgelöst wird. -
Main - AI Agent Tools Logic
Nach Erhalt der Benutzerautorisierung von entweder dem Workflow
Main Entry - Slack API Request HandleroderGeneric API Request Handlerverwaltet dieser Workflow Funktionsaufrufe an das Large Language Model (LLM) und trifft Entscheidungen darüber, welches Tool basierend auf der Antwort des LLM ausgeführt werden soll. Es gibt drei Hauptfunktionsaufrufe:-
Customer_Order_Function: Dieses Tool beantwortet Benutzerabfragen zu Kundenbestellformularen, indem es die Operation
Main - Get Customer Order Form Detailsim WorkflowTool-Customer Order Detailsaufruft. -
Pricing_Function: Dieses Tool beantwortet Benutzerabfragen zur Produktpreisgestaltung, indem es die Operation
Main - Pricing Sheetim WorkflowTool-Pricing Sheetsaufruft. -
Customer_Lookup_By_Location_Function: Dieses Tool beantwortet Benutzerabfragen zum Abrufen von Kunden nach Standort oder Kontoeigentümer, indem es die Operation
Main - Customer Lookupim WorkflowTool - Customer Lookupaufruft.
-
-
Tool-Customer Order Details
Dieser Workflow ruft Kundenbestelldetails aus NetSuite ab.
Um einen anderen Endpunkt als NetSuite zu verwenden, erstellen Sie eine neue Operation zum Abrufen von Bestellformularen aus dem System und weisen Sie die Ergebnisse der globalen Variable
extractedContentzu. Lösen Sie dann die neue Operation aus der OperationMain - Get Customer Order Form Detailsaus. -
Tool-Pricing Sheets
Dieser Workflow ruft Produktpreise aus Salesforce ab.
In der Konfiguration der Salesforce Query-Aktivität ruft die folgende Abfrage Produktpreisinformationen nach Agent ab. Falls Ihre Salesforce-Organisation diese Objekte und Felder nicht verwendet oder die Produktpreisinformationen in anderen Objekten/Feldern gespeichert sind, funktioniert dieser Workflow nicht ordnungsgemäß. In diesem Fall kann der Agent keine Preisfragen beantworten. Passen Sie die Abfrage in diesem Workflow an Ihr Salesforce-Organisationsdatenmodell an:
SELECT Product2.Description, Product2.Family, Product2.ProductCode, CurrencyIsoCode, Name, UnitPrice, Pricebook2.Name, Id FROM PricebookEntry WHERE IsDeleted = false AND IsArchived = false AND IsActive = true AND Pricebook2.IsActive = true AND Pricebook2.IsDeleted = false AND Pricebook2.IsArchived = false AND Product2.IsActive = true AND Product2.IsDeleted = false AND Product2.IsArchived = false AND CurrencyIsoCode = '{{ currencycode }}' ORDER BY NameUm einen anderen Endpunkt als Salesforce zu verwenden, erstellen Sie eine neue Operation zum Abrufen von Produktpreisen aus dem System und weisen Sie die Ergebnisse der globalen Variable
pricing_sheetzu. Lösen Sie dann die neue Operation aus der OperationMain - Pricing Sheetaus. -
Tool - Customer Lookup
Dieser Workflow ruft Kunden aus Salesforce ab.
In der Konfiguration der Salesforce Query-Aktivität ruft die folgende Abfrage Kundenkonten-Informationen ab. Falls Ihre Salesforce-Organisation unterschiedliche Felder oder Objekte für Kundendetails verwendet, passen Sie diese Abfrage in diesem Workflow entsprechend an:
SELECT Id, BillingCity, BillingCountry, BillingState, Name FROM Account WHERE Type = 'Customer'Um einen anderen Endpunkt als Salesforce zu verwenden, erstellen Sie einen neuen Vorgang, um Kunden aus dem System abzurufen, und weisen Sie die Ergebnisse der globalen Variable
extractedContentzu. Triggern Sie dann den neuen Vorgang aus dem VorgangMain - Customer Lookup. -
Utility - Get All Account Owners
Dieser Workflow ruft Kontoeigentümer aus Salesforce ab.
In der Konfiguration der Salesforce Query-Aktivität ruft die folgende Abfrage Kontoeigentümer (Name und E-Mail) für alle Konten des Typs
CustomeroderPartnerab. Falls Ihre Salesforce-Organisation unterschiedliche Kontotypen oder benutzerdefinierte Felder zur Klassifizierung von Konten verwendet, passen Sie diese Abfrage in diesem Workflow entsprechend an:SELECT OwnerId, Owner.Email, Owner.Name FROM Account WHERE Type IN ('Customer', 'Partner')Um einen anderen Endpunkt als Salesforce zu verwenden, erstellen Sie einen neuen Vorgang, um Kontoeigentümer aus dem System abzurufen, und weisen Sie die Ergebnisse der Variable
Account_Owner_Listzu. Triggern Sie dann den neuen Vorgang aus dem VorgangMain - Get Owner List. -
Utility-User Authorization And Session
Dieser Workflow verwaltet die Benutzerautorisierung und Sitzung. Er verwendet Jitterbit Cloud Datastore, um eine Liste autorisierter Benutzer und ihrer aktiven Sitzungen zu führen.
Um diesen Workflow mit einem alternativen Datenspeicher oder einem anderen Autorisierungsmechanismus zur Verwaltung des Benutzerzugriffs und der Sitzungen zu konfigurieren, ändern Sie die Vorgänge des Workflows entsprechend.
-
Utility - Bot Chat History Storage
Dieser Workflow verwaltet die Speicherung des Chat-Verlaufs des Bots, was für die Bereitstellung von Speicherkontext für LLMs erforderlich ist. Er nutzt Jitterbit Cloud Datastore zu diesem Zweck.
Um die Integration mit anderen Datenspeicherlösungen zum Speichern und Abrufen des Chat-Verlaufs durchzuführen, ändern Sie die Vorgänge des Workflows entsprechend.
-
Generic API Request Handler
Dieser Workflow verarbeitet HTTP-API-Anfragen von jeder Anwendung. Um die Integration mit Ihren Anwendungen durchzuführen, erstellen Sie eine benutzerdefinierte Jitterbit-API, die den Vorgang
Generic API request Handlertriggert. Die URL dieser API kann dann von jeder Anwendung verwendet werden, um Anfragen zu senden und zu empfangen.Die Konfiguration der benutzerdefinierten Jitterbit-API wird in Create the Jitterbit custom API später auf dieser Seite beschrieben.
Trigger the project workflows
Führen Sie für das anfängliche Laden der Daten den Vorgang im ersten Workflow aus, Utility-Upload Customer Order Forms to Azure. Dies können Sie über die Run-Option des Vorgangs durchführen, die beim Überfahren des Vorgangs angezeigt wird. Sie müssen diesen Vorgang später erneut ausführen, falls Ihre Daten aktualisiert werden.
Tipp
Sie können diesen Vorgang auf einen Zeitplan setzen, um regelmäßig aktualisierte Daten zu erhalten. Dies können Sie über das -Menü Einstellungen > Zeitpläne des Vorgangs durchführen.
Die beiden anderen Haupt-Workflows werden durch die benutzerdefinierten Jitterbit-APIs ausgelöst:
-
Main Entry - Slack API Request Handler: Dieser Workflow wird von Slack über die benutzerdefinierte APISlack Bot API Request Handlerausgelöst. Das Senden einer direkten Nachricht an die Slack-App initiiert den Trigger der benutzerdefinierten API. -
Generic API Request Handler: Dieser Workflow wird von einer anderen Anwendung über die benutzerdefinierte APIGeneric API request Handlerausgelöst. Das Senden einer Anfrage an die konfigurierte API initiiert den Trigger der benutzerdefinierten API.
Alle anderen Workflows werden durch andere Vorgänge ausgelöst und sind nachgelagert gegenüber den oben aufgelisteten. Sie sollen nicht von selbst ausgeführt werden.
Fehlerbehebung
Bei Problemen können die folgenden Protokolle überprüft werden, um ausführliche Informationen zur Fehlerbehebung zu erhalten:
Für weitere Unterstützung wenden Sie sich an den Jitterbit-Support.