Build a Patent Search Assistant with AlloyDB and Vertex AI Agent Builder – Part 2

1. Übersicht

Die Patentrecherche ist umfangreich und komplex. Das Durchsuchen unzähliger technischer Zusammenfassungen, um relevante Innovationen zu finden, ist eine entmutigende Aufgabe. Herkömmliche stichwortbasierte Suchanfragen sind oft ungenau und zeitaufwendig. Die Zusammenfassungen sind lang und technisch, sodass es schwierig ist, die Kernidee schnell zu erfassen. Das kann dazu führen, dass Forschende wichtige Patente übersehen oder Zeit mit irrelevanten Ergebnissen verschwenden.

Die Geheimzutat hinter dieser Revolution ist die Vektorsuche. Bei der Vektorsuche wird Text nicht nur anhand von einfachen Stichwortübereinstimmungen, sondern auch anhand von numerischen Darstellungen (Einbettungen) analysiert. So können wir anhand der Bedeutung der Anfrage suchen, nicht nur anhand der verwendeten Wörter. In der Welt der Literatursuche ist das ein Gamechanger. Stellen Sie sich vor, Sie finden ein Patent für einen „tragbaren Herzfrequenzmesser“, auch wenn der genaue Begriff im Dokument nicht verwendet wird.

Die Herausforderung:Moderne Literatursuchen sollen sofortige Antworten und intelligente Empfehlungen liefern, die auf die individuellen Vorlieben abgestimmt sind. Mit herkömmlichen Suchmethoden lässt sich dieses Maß an Personalisierung oft nicht erreichen.

Die Lösung:Unsere wissensbasierte Chatanwendung geht diese Herausforderung direkt an. Dabei wird eine umfangreiche Wissensdatenbank genutzt, die aus Ihrem Patent-Dataset abgeleitet wird, um die Kundenabsicht zu verstehen, intelligent zu reagieren und hochrelevante Ergebnisse zu liefern.

Aufgaben

In diesem Lab (Teil 2) werden Sie:

  1. Einen Agent in Vertex AI Agent Builder erstellen
  2. AlloyDB-Tool in den Agent einbinden

Voraussetzungen

  • Ein Browser, z. B. Chrome oder Firefox
  • Google Cloud-Projekt mit aktivierter Abrechnungsfunktion.

2. Architektur

Datenfluss: Sehen wir uns genauer an, wie Daten durch unser System fließen:

Aufnahme:

Patentdaten werden in AlloyDB geladen.

Analytics Engine:

Wir verwenden AlloyDB als Analyse-Engine, um Folgendes auszuführen:

  1. Kontext extrahieren: Die Engine analysiert die in AlloyDB gespeicherten Daten, um den Patentsatz zu verstehen.
  2. Erstellung von Einbettungen: Für die Nutzeranfrage und die in AlloyDB gespeicherten Informationen werden Einbettungen (mathematische Darstellungen von Text) generiert.
  3. Vektorsuche: Die Engine führt eine Ähnlichkeitssuche durch und vergleicht die Anfrageeinbettung mit den Einbettungen von Patentzusammenfassungen. Damit wird der relevanteste „nächste Nachbar“ für den Kontext identifiziert, nach dem der Nutzer sucht.

Antwortgenerierung:

Die validierten Antworten werden in einem JSON-Array strukturiert und die gesamte Engine wird in einer serverlosen Cloud Run-Funktion verpackt, die über den Agent Builder aufgerufen wird.

Die oben genannten Schritte werden bereits in Teil 1 des Labs behandelt.

Wir haben die technischen Details der Entwicklung einer wissensbasierten Analyse-Engine besprochen, die unseren intelligenten Patent-Suchassistenten unterstützt. Sehen wir uns nun an, wie wir die Magie von Agent Builder nutzen, um diese Engine in einer dialogorientierten Schnittstelle zum Leben zu erwecken. Halten Sie die Endpunkt-URL bereit, bevor Sie mit Teil 2 beginnen. Dieser nächste Schritt wird in diesem Lab behandelt:

Dialogorientierte Interaktion:

Agent Builder präsentiert die Antworten in einem Format in natürlicher Sprache, was einen Dialog ermöglicht.

3. Hinweis

Projekt erstellen

  1. Wählen Sie in der Google Cloud Console auf der Seite zur Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
  2. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist .
  3. Sie verwenden Cloud Shell, eine Befehlszeilenumgebung, die in Google Cloud ausgeführt wird und in der bq vorinstalliert ist. Klicken Sie oben in der Google Cloud Console auf „Cloud Shell aktivieren“.

Bild der Schaltfläche „Cloud Shell aktivieren“

  1. Sobald die Verbindung mit der Cloud Shell hergestellt ist, prüfen Sie mit dem folgenden Befehl, ob Sie bereits authentifiziert sind und für das Projekt schon Ihre Projekt-ID eingestellt ist:
gcloud auth list
  1. Führen Sie den folgenden Befehl in Cloud Shell aus, um zu bestätigen, dass der gcloud-Befehl Ihr Projekt kennt.
gcloud config list project
  1. Wenn Ihr Projekt nicht festgelegt ist, verwenden Sie den folgenden Befehl, um es festzulegen:
gcloud config set project <YOUR_PROJECT_ID>
  1. Aktivieren Sie die erforderlichen APIs. Alternativ zum gcloud-Befehl können Sie in der Konsole nach den einzelnen Produkten suchen oder diesen Link verwenden.

Wenn eine API fehlt, können Sie sie jederzeit während der Implementierung aktivieren.

Informationen zu gcloud-Befehlen und deren Verwendung finden Sie in der Dokumentation.

Wichtiger Hinweis:Sie müssen TEIL 1 des Labs abgeschlossen haben, um dieses Lab zu absolvieren.

4. Agent-Erstellung

Einführung von Agent Builder

Agent Builder ist ein leistungsstarkes Low-Code-Tool, mit dem wir schnell und effizient konversationelle Agenten erstellen können. Es vereinfacht das Entwerfen von Dialogabläufen, das Einbinden von Wissensdatenbanken und das Herstellen einer Verbindung zu externen APIs. In unserem Fall verwenden wir Agent Builder, um eine nahtlose Verbindung zum Cloud Functions-Endpunkt herzustellen, den wir in Teil 1 erstellt haben. So kann unser Patent-Suchassistent auf unsere Patent-Wissensdatenbank zugreifen und intelligent auf Nutzeranfragen reagieren.

Achten Sie darauf, dass die in Teil 1 erstellte Java Cloud Run-Funktion ein JSON-ARRAY anstelle von Nur-Text zurückgibt.

Agent erstellen

Wir beginnen mit der Erstellung dieses neuen KI-Agenten, der Nutzerfragen zu den Bekleidungsprodukten beantworten soll.

  1. Melden Sie sich zuerst in der Agent Builder-Plattform an. Wenn Sie aufgefordert werden, die API zu aktivieren, klicken Sie auf „FORTFAHREN UND API AKTIVIEREN“.
  2. Klicken Sie auf „APP ERSTELLEN“ und geben Sie Ihrem Agenten einen aussagekräftigen Namen (z.B. „Patent Search Assistant“).
  3. Klicken Sie auf den App-Typ „Agent“.

462bb48664e9a14e.png

  1. . Geben Sie Ihrem Agenten einen aussagekräftigen Namen wie Patent Search Assistant und legen Sie die Region auf us-central1 fest.
  2. Geben Sie die Details für den Agent ein:
  3. Ändern Sie den Namen des Agenten in Patent Search Agent.
  4. Fügen Sie das folgende Zielvorhaben hinzu:
You are a professional intelligent patent search agent! Your job is to help the customer find patents matching the context of their search text.

38f7d77d5ed0cb2a.png

  1. Speichern Sie die Datei und lassen Sie die Anleitung vorerst leer.
  2. Klicken Sie dann im Navigationsmenü auf „Tools“ und auf „ERSTELLEN“.

38f7d77d5ed0cb2a.png

Toolname eingeben:Patent Search Tool

Typ:OpenAPI

Tool-Beschreibung eingeben:

This tool refers to the dataset in the backend as the context information for product inventory. It takes as input the user's search text summarized by the agent and matches with the most appropriate list of items and returns as an array of items.

Schema eingeben – OpenAPI im YAML-Format:

Hier verwenden wir den Backend-Endpunkt, um den Agent zu betreiben. Kopieren Sie die OpenAPI-Spezifikation unten und ersetzen Sie den URL-Platzhalter (in spitzen Klammern) durch den Endpunkt Ihrer Cloud Functions-Funktion:

openapi: 3.0.0
info:
  title: Patent Search API
  version: v1
servers:
  - url: YOUR_CLOUDFUNCTION_ENDPOINT_URL
paths:
  /patent-search:
    post:
      summary: Search for patents using a text query.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                search:
                  type: string
                  description: The text query to search for patents.
                  example: A new Natural Language Processing related Machine Learning Model
      responses:
        '200':
          description: Successful search response with a JSON array of matching patents.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    result:
                      type: string
                      description: Patent title.
        '400':
          description: Invalid request body.
        '500':
          description: Internal server error.

Übernehmen Sie für die restlichen Einstellungen die Standardwerte und klicken Sie auf „Speichern“.

  1. Kehren Sie an dieser Stelle zum Agent zurück, da wir die Konfiguration „Tool“ den „Anweisungen“ des Agents hinzufügen möchten. Fügen Sie den Platzhalter für Anleitungen Folgendes hinzu. Die Einzüge sind wichtig, um den Ablauf zu definieren:
- Greet the users, then ask how you can help them today.
- Summarize the user's request and ask them to confirm that you understood correctly.
    - If necessary, seek clarifying details.
- Use ${TOOL:Patent Search Tool} to help the user with their task.
- Return the response from the ${TOOL:Patent Search Tool} to the user in a well formed string.
- Thank the user for their business and say goodbye.

Achten Sie darauf, dass das Tool „Patent Search Tool“ im Bereich „Available Tools“ (Verfügbare Tools) ausgewählt ist, und speichern Sie den Agenten dann noch einmal.

5. Agent testen

Im rechten Bereich sollte der Abschnitt „KI-Agenten in der Vorschau testen“ angezeigt werden, in dem Sie Ihren KI-Agenten testen können.

Wie Sie im Screenshot unten sehen, habe ich mich als Nutzer vorgestellt und meinen Chat mit einer Anfrage nach „Passendes Patent für eine Idee für einen Fitness-Tracker“ begonnen:

e4ffaa48b5c1f012.png

Das ist die JSON-Antwort:

b0ee0af57ba63943.png

Dies ist das Roh-JSON-Ergebnis der Cloud-Funktion, die die AlloyDB-Ähnlichkeitssuche verarbeitet. Geschafft! Wir sind jetzt mit dem Kundenservicemitarbeiter fertig.

6. Bereitstellung und Integration

Wenn Sie mit Ihrem Agent zufrieden sind, können Sie ihn mithilfe der Integrationen von Agent Builder ganz einfach auf verschiedenen Kanälen bereitstellen. Sie können ihn auf Ihrer Website einbetten, in beliebte Messaging-Plattformen einbinden oder sogar eine eigene mobile App erstellen. Wir können die Agent Builder API auch direkt in unseren Webclientanwendungen verwenden. Das haben wir in diesem Blog beschrieben.

7. Bereinigen

So vermeiden Sie, dass Ihrem Google Cloud-Konto die in diesem Beitrag verwendeten Ressourcen in Rechnung gestellt werden:

  1. Wechseln Sie in der Google Cloud Console zu Verwalten .
  2. Ressourcenseite
  3. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
  4. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.

8. Glückwunsch

Glückwunsch! Durch die Integration der Leistungsfähigkeit unserer speziell entwickelten Analyse-Engine in die intuitive Benutzeroberfläche von Agent Builder haben wir einen intelligenten Assistenten für die Literatursuche geschaffen, der die Literatursuche zugänglich, effizient und wirklich aussagekräftig macht. Durch die Kombination der Funktionen von AlloyDB, Vertex AI und Vektorsuche haben wir einen großen Schritt nach vorn gemacht, um kontextbezogene und Vektorsuchen zugänglich, effizient, wirklich bedeutungsorientiert und agentenbasiert zu machen.