AWS Germany – Amazon Web Services in Deutschland

Amazon Kendra, LangChain und Large Language Models – Unternehmensdaten als Basis für generative KI Anwendungen

Original von Abhinav Jawadekar, Abhishek Maligehalli Shivalingaiah, Firaz Akmal, Jean-Pierre Dodel und Mithil Shah
Übersetzt durch Jörg Wöhrle, Solutions Architect

Generative KI (GenAI) und Large Language Models (LLMs), wie sie bald über Amazon Bedrock und Amazon Titan verfügbar sein werden, verändern die Art und Weise, wie Entwickler und Unternehmen traditionell komplexe Herausforderungen im Zusammenhang mit der Verarbeitung und dem Verständnis natürlicher Sprache lösen. Zu den Vorteilen, die LLMs bieten, gehören die Möglichkeit, leistungsfähigere und überzeugendere KI gestützte Dialoge für Kundendienstanwendungen zu schaffen und die Produktivität der Mitarbeiter durch intuitivere und genauere Antworten zu verbessern.

Für diese Anwendungsfälle ist es jedoch wichtig, dass die GenAI-Anwendungen, die die Konversationserlebnisse implementieren, zwei wichtige Kriterien erfüllen: ihre Antworten auf Unternehmensdaten einschränken, um Modellhalluzinationen (falsche Aussagen) zu vermeiden, und Antworten entsprechend den Zugriffsberechtigungen der Nutzer zu filtern.

Um die Antworten der GenAI-Anwendung auf Unternehmensdaten zu beschränken, wird eine Technik mit dem Namen Retrieval Augmented Generation (RAG) verwendet. Eine Anwendung, die den RAG-Ansatz umsetzt, verwendet dabei einen mehrstufigen Prozess. Zunächst werden die für die Nutzeranfrage relevantesten Dokumente und Informationen aus einer unternehmensinternen Wissensdatenbank abgerufen. Danach werden die Ergebnisse dieser ersten Abfrage zusammen mit der ursprünglichen Anfrage gebündelt als Prompt an das LLM gesendet und die Antwort wird generiert. LLMs haben Einschränkungen in Bezug auf die maximale Wortzahl für die Eingabeaufforderung (Prompt). Daher hat die Auswahl der richtigen Passagen unter Tausenden oder Millionen von Dokumenten im Unternehmen direkte Auswirkungen auf die Genauigkeit des LLMs.

Um präzise Antworten generieren zu können ist es bei der Entwicklung effektiver RAG entscheidend dem LLM die Dokumente zur Verfügung zu stellen, die den relevantesten und prägnantesten Kontext aus Unternehmensinhalten enthalten. Hier spielt die hochpräzise, auf maschinellem Lernen (ML) basierende intelligente Suche in Amazon Kendra eine wichtige Rolle. Amazon Kendra ist ein vollständig verwalteter Service, der eine sofort einsatzbereite und auf dem neusten Stand der Technik basierende semantische Suchfunktionen für das Ranking von Dokumenten und Passagen bietet. Um die Qualität Ihrer RAG-Nutzdaten zu maximieren und bessere LLM-Antworten zu erhalten als mit herkömmlichen oder schlüsselwortbasierten Suchlösungen können Sie die hochpräzise Suche in Amazon Kendra verwenden, um die relevantesten Inhalte und Dokumente zu finden. Amazon Kendra bietet benutzerfreundliche Deep-Learning-Suchmodelle, die für 14 Domains vorab trainiert wurden und keine ML-Kenntnisse erfordern. Sie müssen sich also nicht mit Worteinbettungen, Dokumentenaufteilung und anderen komplexeren Vorgängen befassen, die normalerweise für RAG-Implementierungen erforderlich sind. Amazon Kendra stellt die Retrieve API bereit, die für den RAG-Anwendungsfall entwickelt wurde. Mit der Retrieve API können Sie, nach Relevanz sortiert, bis zu 100 semantisch relevante Passagen mit jeweils bis zu 200 Token-Wörtern abrufen. Amazon Kendra verfügt außerdem über vorgefertigte Konnektoren für gängige Datenquellen wie Amazon Simple Storage Service (Amazon S3), SharePoint, Confluence und Websites und unterstützt gängige Dokumentformate wie HTML, Word, PowerPoint, PDF, Excel und reine Textdateien. Um Antworten nur auf der Grundlage der Dokumente zu filtern, auf die der Nutzer Zugriff hat, bietet Amazon Kendra Konnektoren mit Unterstützung für Zugriffskontrolllisten (ACL). Amazon Kendra unterstützt auch die Integration von AWS Identity and Access Management (IAM) und AWS IAM Identity Center (Nachfolger von AWS Single Sign-On) für die Synchronisierung von Benutzergruppeninformationen mit Anbietern von Identitätslösungen wie Okta und Azure AD.

In diesem Blogpost zeigen wir, wie man einen RAG-Workflow implementiert. Dafür kombinieren wir die Funktionen von Amazon Kendra mit LLMs, um hochmoderne GenAI-Anwendungen zu erstellen, die Konversationserlebnisse über Ihre Unternehmensinhalte bieten. Nach der Markteinführung von Amazon Bedrock werden wir einen Folgebeitrag veröffentlichen, der zeigt, wie ähnliche GenAI-Anwendungen mit Amazon Bedrock implementiert werden können.  

Lösungsübersicht

Das folgende Diagramm zeigt die Architektur einer GenAI-Anwendung mit RAG-Ansatz. Architekturübersicht

Wir verwenden einen Amazon Kendra-Index, um unstrukturierte Unternehmensdaten aus Datenquellen wie Wiki-Seiten, MS SharePoint-Websites, Atlassian Confluence und Dokumenten-Repositorys wie Amazon S3 aufzunehmen. Wenn ein Benutzer mit der GenAI-App interagiert, sieht der Ablauf wie folgt aus:

  1. Der Benutzer stellt eine Anfrage an die GenAI-App.
  2. Die App stellt basierend auf der Benutzeranfrage eine Suchanfrage an den Amazon Kendra-Index
  3. Der Index gibt Suchergebnisse mit Auszügen relevanter Dokumente aus den indexierten Unternehmensdaten zurück.
  4. Die App sendet die Benutzeranfrage zusammen mit den aus dem Index abgerufenen Daten als Kontext in das LLM-Prompt.
  5. Das LLM gibt eine prägnante Antwort auf die Benutzeranfrage zurück, die auf den abgerufenen Daten basiert.
  6. Die Antwort des LLM wird an den Benutzer zurückgesendet.

Mit dieser Architektur können Sie das am besten zu Ihrem Anwendungsfall geeignete LLM auswählen. Zu den LLM-Optionen gehören unsere Partner Hugging Face, AI21 Labs, Cohere und andere, die auf einem Amazon SageMaker-Endpunkt gehostet werden, sowie Modelle von Unternehmen wie Anthropic und OpenAI. Mit Amazon Bedrock werden Sie via API die Möglichkeit haben Amazon Titan (Amazons eigenes LLM) oder Partner-LLMs wie die von AI21 Labs und Anthropic zu verwenden, ohne dass Ihre Daten das AWS-Ökosystem verlassen müssen. Zu den zusätzlichen Vorteilen, die Amazon Bedrock bieten wird, gehören eine serverlose Architektur, eine einzige API zum Aufrufen der unterstützten LLMs und ein verwalteter Service zur Optimierung des Entwickler-Workflows.

Um die besten Ergebnisse zu erzielen, muss eine GenAI-App den Prompt auf der Grundlage der Benutzeranfrage und des verwendeten spezifischen LLM ermitteln. Conversational KI-Apps müssen auch den Chat-Verlauf und den Kontext verwalten. Dazu können Entwickler von GenAI-Apps Open-Source-Frameworks wie LangChain verwenden. Diese stellen Module zur Integration in das LLM ihrer Wahl sowie Orchestrierungstools für Aktivitäten wie die Verwaltung des Chat-Verlaufs und das Prompt Engineering bereit. Wir haben die AmazonKendraRetriever Klasse bereitgestellt, die die LangChain-Retriever Schnittstelle implementiert. Zusammen mit weiteren LangChain Schnittstellen, wie z.B. chains, kann diese genutzt werden um Daten aus einem Amazon Kendra Index abzurufen. Die AmazonKendraRetriever Klasse verwendet die Retrieve API von Amazon Kendra, um Abfragen an den Amazon Kendra-Index zu stellen und die Ergebnisse mit den Auszügen abzurufen, die für die Abfrage am relevantesten sind. Einige Beispielanwendungen dazu finden Sie im GitHub Repo. Mit Hilfe der Schritt-für-Schritt-Anleitung können Sie die hier beschriebene Lösung in Ihrem AWS-Konto deployen.  

Vorraussetzungen

Für dieses Tutorial benötigen Sie ein Bash-Terminal (Linux, Mac oder Windows-Subsystem für Linux), mit installiertem Python 3.9 (oder höher), und ein AWS-Konto. Wir empfehlen außerdem, eine AWS Cloud9-Instanz oder eine Amazon Elastic Compute Cloud (Amazon EC2) Instanz zu verwenden.  

Implementierung des RAG-Workflows

Führen Sie die folgenden Schritte aus, um Ihren RAG-Workflow zu konfigurieren:

  1. Verwenden Sie das bereitgestellte AWS CloudFormation Template, um einen neuen Amazon Kendra-Index zu erstellen. Dieses Template enthält Beispieldaten aus der AWS-Dokumentation zu Amazon Kendra, Amazon Lex und Amazon SageMaker. Wenn Sie über einen Amazon Kendra-Index verfügen und Ihren eigenen Datensatz indexiert haben, können Sie diesen alternativ verwenden. Das Starten des Stacks dauert etwa 30 Minuten, gefolgt von etwa 15 Minuten, um ihn zu synchronisieren und die Daten in den Index aufzunehmen. Warten Sie daher nach dem Start des Stacks etwa 45 Minuten. Notieren Sie sich die Index-ID und die AWS-Region auf der Registerkarte Outputs des Stacks.
  2. Für die in diesem Tutorial verwendeten Beispielanwendungen benötigen Sie Zugriff auf ein oder mehrere LLMs von Flan-T5-XL, Flan-T5-XXL, Anthropic Claud-V1 und OpenAI-Text-DaVinci-003.
    1. Falls Sie Flan-T5-XL or Flan-T5-XXL verwenden, erstellen Sie einen Inferenz-Endpunkt mithilfe von Amazon SageMaker Studio Jumpstart.
      Amazon SageMaker JumpStart Screenshot

      Screenshot der die in Amazon SageMaker JumpStart verfügbaren Flan-T5 LLMs zeigt

    2. Wenn Sie mit Anthropic Claud-V1 oder OpenAI-DA-Vinci-003 arbeiten möchten, erstellen Sie sich die entsprechenden API-Schlüssel unter https://www.anthropic.com/ bzw. https://openai.com/.
  3. Folgen Sie den Anweisungen in der ReadMe des GitHub-Repos, um die Requirements, einschließlich LangChain und Beispielanwendungen, zu installieren.
  4. Bevor Sie die Beispielanwendungen ausführen, müssen Sie Umgebungsvariablen für die Amazon Kendra-Index ID und je nach verwendetem LLM API-Schlüssel bzw. dem SageMaker Endpunkt anlegen. Hier ein Beispielskript zum Setzen der Umgebungsvariablen (um die Beispiele zu testen, muss je nach verwendetem LLM nur eine Variable aus FLAN_XL_ENDPOINT, FLAN_XXL_ENDPOINT, OPENAI_API_KEY oder ANTHROPIC_API_KEY gesetzt werden):
    export AWS_REGION="<YOUR-AWS-REGION>"
    export KENDRA_INDEX_ID="<YOUR-KENDRA-INDEX-ID>"
    export FLAN_XL_ENDPOINT="<YOUR-SAGEMAKER-ENDPOINT-FOR-FLAN-T-XL>"
    export FLAN_XXL_ENDPOINT="<YOUR-SAGEMAKER-ENDPOINT-FOR-FLAN-T-XXL>"
    export OPENAI_API_KEY="<YOUR-OPEN-AI-API-KEY>"
    export ANTHROPIC_API_KEY="<YOUR-ANTHROPIC-API-KEY>“
    
  5. Wechseln Sie in einem Terminal vom Verzeichnis, in das Sie das GitHub-Repository geklont haben, in das Unterverzeichnis kendra_retriever_samples. Sie können die Beispiele von der Befehlszeile aus als Python ausführen. Verwenden Sie hierfür den Befehl python <sample-file-name.py>. Führen Sie die Streamlit-Web-App aus, indem Sie in das samples Verzeichnis wechseln und streamlit run app.py <anthropic|flanxl|flanxxl|openai> ausführen.
  6. Öffnen Sie die Datei kendra_retriever_flan_xxl.py im Editor Ihrer Wahl und finden Sie das Statement result = run_chain(chain, "What's SageMaker?"). „What’s SageMaker“ ist das Query, welches durch die Kette aus Flan-T-XXL als LLM und Amazon Kendra als Retriever läuft. Wenn Sie diese Datei ausführen, können Sie folgendes als Ausgabe beobachten: Die Benutzeranfrage wird an den Amazon Kendra Index geschickt und bekommt einen Auszug für die Top-3 Resultate zurück. Diese Auszüge werden dann zusammen mit der ursprünglichen Anfrage als der Kontext eines Prompts weitergeschickt und das LLM generiert eine prägnante Antwort. Die zugrunde liegenden Quellen (die URLs zu den Dokumenten, die in der generierten Antwort verwendet wurden) werden ebenfalls eingefügt.
  7. Als nächstes starten wir die Web App app.py mittels streamlit run app.py flanxxl. Hier verwenden wir ein Flan-T-XXL Model als LLM. Es öffnet sich ein Browserfenster in dem Sie eine Anfrage eingeben können. Wir verwenden „What is Amazon Lex?“. Wie im folgenden Screenshot zu sehen, gibt uns die Applikation eine Antwort und zusätzlich einen Abschnitt zu den Quellen. Diese Quellen stammen aus dem Amazon Kendra Index und enthalten die URLs der Dokumente, deren Auszüge zusammen mit der Useranfrage als Prompt und Kontext an das LLM geschickt wurden.
  8. Starten wir nun app.py mittels streamlit run app.py anthropic um ein Gefühl für die Dialogfähigkeiten zu bekommen. Dabei verwenden wir Anthropic Cloud-V1 als LLM.

Wie Sie im folgenden Video sehen generiert das LLM eine umfangreiche Antwort auf die Frage des Benutzers. Diese Antwort basiert auf den Dokumenten, die das LLM aus dem Amazon Kendra Index erhalten hat. Zusätzlich werden die URLs zu den Quelldokumenten, die benutzt wurden um die Antwort zu erstellen, zur Verfügung gestellt. Beachten Sie, dass die folgenden Anfragen Amazon Kendra nicht explizit erwähnen. Durch die Verwendung von ConversationalRetrievalChain (Teil des LangChain Frameworks, der es leichter macht dialogbasierte Applikationen zu erstellen), werden Chatverlauf und Kontext verwaltet um eine passende Antwort zu bekommen.

 

 

Des Weiteren sehen wir im folgenden Screenshot, dass Amazon Kendra als Antwort an die Nutzeranfrage Auszüge der Dokumente bereitstellt. Mit Hilfe dieser Auszüge, kann das LLM eine prägnantere Antwort generieren.

Screenshot der Beispielanwendung mit Ergebnissen für eine Anfrage

Ein Suchfeld mit der Frage „What’s Amazon Kendra and how do I use it with a chat bot?“ und der Liste der vom LLM generierten Antworten

 

In den folgenden Abschnitten werfen wir einen Blick auf zwei Einsatzmöglichkeiten für Generative AI mit Amazon Kendra.

Usecase 1: Generative AI für Unternehmen aus der Finanzdienstleistung

Finanzunternehmen erstellen Daten, wie z.B. Berichte oder juristische Dokumente, und speichern diese an unterschiedlichen Orten. Dadurch, dass sie dabei strengen regulatorischen Anforderungen und Aufsichtspflichten unterworfen sind, müssen Mitarbeiter die Möglichkeit haben relevante, genaue und verlässliche Informationen schnell zu finden. Die Suche über mehrere Datenquellen hinweg und das Aggregieren von Erkenntnissen aus diesen Daten gestaltet sich aufwändig und ist fehleranfällig. Mit Hilfe von generativer AI auf AWS können Nutzer schnell präzise Antworten generieren, und das über verschiedenste Datenquellen und -typen hinweg.

Wir haben uns für eine Lösung mit Amazon Kendra und dem AI21 Lab LLM Jurassic-2 Ultra (früher Jumbo Instruct) entschieden. Mit Amazon Kendra ist es einfach Daten aus verschiedensten Quellen wie z.B. Amazon S3, Webseiten oder ServiceNow aufzunehmen. Danach verwendet Amazon Kendra das Jurassic-2 Ultra LLM von AI21 Lab um verschiedene Arten von Inferenz, wie z.B. Zusammenfassungen oder Berichterstellung auszuführen. Amazon Kendra ergänzt dabei das LLM, in dem es dem Benutzer präzise und verifizierbare Informationen zur Verfügung stellt und damit dabei hilft das Problem der Halluzination, das beim Einsatz von LLMs entsteht, zu reduzieren. Mit der hier vorgeschlagenen Lösung können Finanzanalysten auf Grundlage präziser Daten schneller Entscheidungen treffen um zügig detaillierte und umfassende Portfolios erstellen zu können. Wir planen die Lösung in naher Zukunft als Open-Source Projekt zur Verfügung zu stellen.  

Beispiel

Mit der Kendra Chatbot Lösung können Finanzanalysten ihre Unternehmensdaten (Finanzberichte und Verträge) nutzen um verlässliche Antworten auf auditbezogene Fragen zu finden. Der Kendra Chatbot stellt Antworten zusammen mit Quellenverweisen dar und fasst lange Antworten zusammen.

Screenshot mit einer beispielhaften Unterhaltung zwischen Benutzer und Chatbot

Der Chatbot liefert Ergebnisse auf die Frage „who can audit Marketing Affiliate based on the agreements“

Der folgende Screenshot zeigt eine beispielhafte Unterhaltung mit dem Kendra Chatbot.

Architekturübersicht

Architekturdiagramm

Dokumente werden von S3 nach Amazon Kendra geladen, eine Lambda Funktion, die durch Amazon Lex ausgelöst wird, erhält die relevanten Passagen der Dokumente und gibt diese an das LLM um eine Antwort für den Benutzer zu generieren

Das folgende Diagramm zeigt die Architektur der Lösung Der Arbeitsablauf beinhaltet die folgenden Schritte:

  1. Finanzdokumente und Verträge sind auf Amazon S3 gespeichert und werden mit dem S3 Data Source Connector in den Amazon Kendra Index aufgenommen
  2. Das LLM wird als Amazon SageMaker Endpunkt zur Verfügung gestellt
  3. Für die Nutzerinteraktion über das Amazon Lex Web UI wird ein Amazon Lex Chatbot verwendet
  4. Für die Orchestrierung zwischen Amazon Kendra, Amazon Lex und dem LLM verwendet die Lösung verwendet eine AWS Lambda Funktion inklusive LangChain
  5. Wenn der Benutzer den Amazon Lex Chatbot nach einer Antwort aus einem Finanzdokument fragt, ruft Amazon Lex den LangChain Orchestrator auf um die Anfrage zu beantworten
  6. Der LangChain Orchestrator holt sich, basierend auf der Anfrage, die relevanten Finanzberichte und Absätze von Amazon Kendra
  7. Der LangChain Orchestrator schickt diese Dokumente zusammen mit der Anfrage an das LLM um die gewünschte Aktion auszuführen
  8. Das LLM bearbeitet die Anfrage des Orchestrators und gibt das Ergebnis zurück
  9. Der Orchestrator erhält das Ergebnis des LLMs und sendet es über den Amazon Lex Chatbot zurück an den Nutzer

 

Usecase 2: Generative AI für Gesundheitswesen und Ärzte

Als Teil ihrer Forschung analysieren Ärzte und Wissenschaftler oft tausende Artikel aus medizinischen Fachzeitschriften oder Gesundheitswebseiten der Regierung. Sie benötigen verlässliche Datenquellen um ihre Ergebnisse zu überprüfen und zu belegen. Dadurch, dass dieser Prozess Stunden intensiver Recherche, Analyse und Zusammenfassung benötigt, wird die Zeit, bis die Forschung Resultate und Innovation hervorbringen kann, in die Länge gezogen. Mit generativer AI auf AWS können Sie, basierend auf diesen verlässlichen Datenquellen, aus in natürlicher Sprache formulierten Anfragen Erkenntnisse erhalten, und das in Sekunden. Zusätzlich dazu können sie die Quellen, die verwendet wurden um diese Antworten zu generieren, überprüfen.

Wir haben uns für eine Lösung mit Amazon Kendra und dem LLM Flan-T5-XXL von Hugging Face entschieden. Zuerst verwenden wir Amazon Kendra um Textschnipsel von semantisch relevanten Dokumenten aus der Gesamtheit der Dokumente zu finden. Danach nutzen wir ein LLM, wie z.B. Flan-T5-XXL, um aus diesen Textschnipseln als Kontext eine Antwort in natürlicher Sprache zu erhalten. In dem hier beschriebenen Ansatz fungiert der Amazon Kendra Index als Passage Retriever Komponente der RAG Technik. Zu guter Letzt verwenden wir für das Frontend Amazon Lex um ein ansprechendes Benutzererlebnis zur Verfügung zu stellen. Wir planen die Lösung in naher Zukunft als Open-Source Projekt zur Verfügung zu stellen.  

Beispiel

Screenshot mit einer beispielhaften Unterhaltung zwischen Benutzer und Chatbot

Der Chatbot liefert Ergebnisse auf die Frage „What is diabetes?“ und „What is insulin?“

Der folgende Screenshot zeigt eine Webanwendung, die basierend auf dem in GitHub verfügbagen Template erstellt wurde. Der Text in Blau ist hierbei die Eingabe des Nutzers und der rote Text die Antwort des Amazon Kendra / LLM Systems.

Architekturübersicht

Die Architektur sowie der Ablauf für diese Lösung sind ähnlich zum Usecase 1.  

Aufräumen

Um Kosten zu sparen, löschen Sie alle Ressourcen, die Sie für dieses Tutorial erstellt haben. Wenn Sie den CloudFormation Stack erstellt haben, können Sie diesen über die AWS CloudFormation Konsole löschen. Analog dazu, können Sie sämtliche SageMaker Endpunkte, die Sie erstellt haben, über die SageMaker Konsole löschen.  

Zusammenfassung

Generative KI mit LLMs verändert die Art und Weise wie Menschen Erkenntnisse aus Informationen gewinnen und anwenden. Bei Anwendungsfällen für Unternehmen müssen diese Erkenntnisse jedoch basierend auf Unternehmensdaten gewonnen werden, um die Antworten domänenrelevant zu halten und um Halluzinationen zu minimieren. Dafür eignet sich der Ansatz des Retrieval Augmented Generation (RAG).

Dabei hängt die Qualität der vom LLM generierten Erkenntnisse von der Relevanz der Dokumente ab, die verwendet werden um eben diese Erkenntnisse zu erstellen. Dies macht es mehr und mehr notwendig Lösungen wie Amazon Kendra einzusetzen, die auf einfache Arte und Weise relevante Suchergebnisse mit hoher Treffgenauigkeit bereitstellen können. Um zügig mit dem Unternehmenseinsatz von Generativer KI mit Amazon Kendra als Retrieval Mechanismus zu starten helfen Ihnen Kendras Funktionalitäten wie die Retrieve API (die speziell für RAG erstellt wurde), das umfangreiche Ökosystem an Konnektoren für verschiedene Datenquellen, die Unterstützung üblicher Dateiformate sowie die eingebauten Sicherheitsmechanismen.

Für weitere Information dazu, wie Sie Generative AI auf AWS nutzen können verweisen wir auf Neue AWS Werkzeuge zur Nutzung Generativer KI.

Sie können die in diesem Blog beschriebenen Methoden benutzen um erste Experimente mit RAG zu machen, oder erste Proof-Of-Concepts (POCs) für GenAI Apps zu erstellen. Nachdem Amazon Bedrock verfügbar ist, werden wir einen weiteren Blogpost veröffentlichen, der zeigt wie Sie RAG mit Amazon Bedrock verwenden.

Über die Autoren

Abhinav Jawadekar ist ein Principal Solutions Architect, der sich auf Amazon Kendra im AI/ML-Sprachdiensteteam von AWS konzentriert. Abhinav arbeitet mit AWS-Kunden und -Partnern zusammen, um ihnen zu helfen, intelligente Suchlösungen auf AWS zu erstellen.
Jean-Pierre Dodel ist der Principal Product Manager für Amazon Kendra und leitet strategisch wichtige Produktfunktionen und die Priorisierung der Roadmap. Er bringt umfangreiche Enterprise Search und ML/AI-Erfahrung in das Team ein, mit vorherigen führenden Rollen bei Autonomy, HP und Suchmaschinen-Startups, bevor er vor 7 Jahren zu Amazon kam.
Mithil Shah ist ein ML/AI-Spezialist bei AWS. Derzeit hilft er Kunden aus dem öffentlichen Sektor, das Leben der Bürger durch den Aufbau von Machine Learning-Lösungen auf AWS zu verbessern.
Firaz Akmal ist ein leitender Produktmanager für Amazon Kendra bei AWS. Er ist ein Kundenvertreter und hilft Kunden, ihre Such- und generative KI-Anwendungsfälle mit Kendra auf AWS zu verstehen. Außerhalb der Arbeit genießt Firaz es, Zeit in den Bergen des Pazifischen Nordwestens zu verbringen oder die Welt aus der Perspektive seiner Tochter zu erleben.
Abhishek Maligehalli Shivalingaiah is a Senior AI Services Solution Architect at AWS with focus on Amazon Kendra. He is passionate about building applications using Amazon Kendra ,Generative AI and NLP. He has around 10 years of experience in building Data & AI solutions to create value for customers and enterprises. He has built a (personal) chatbot for fun to answers questions about his career and professional journey. Outside of work he enjoys making portraits of family & friends, and loves creating artworks.