Bau Von Skai Dem Ultimativen Zielorientierten Smart Home Concierge Ai Der Von Multi Modal Llm Agent Betrieben Wird Bau Von Skai Dem Ultimativen Zielorientierten Smart Home Concierge Ai Der Von Multi Modal Llm Agent Betrieben Wird

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

In diesem Artikel beschreibe ich mein Experiment, bei dem ich eine Woche lang mit einem von mir entwickelten KI-System als Haushalts-Concierge gelebt habe. Das Ziel war es, die Machbarkeit eines solchen Systems zu untersuchen und mehr über die derzeitigen Einschränkungen der Large Language Model (LLM) Technologie zu erfahren.

Probleme

In unserer Familie haben wir alle Hände voll zu tun. Wir müssen Karrieren managen, unseren fünfjährigen Sohn Dexie zu verschiedenen Aktivitäten fahren und seine unzähligen Fragen beantworten. Außerdem müssen wir seine Bildschirmgewohnheiten im Auge behalten und sicherstellen, dass er nicht zu lange fernsieht oder zu nah am Fernseher sitzt. Zusätzlich leben auch noch die Großeltern bei uns, die zwar zum Kochen und Fahren beitragen, aber nicht unbedingt zur Organisation. Meine Frau Yumi und ich sind daher die Projektmanager der Familie und koordinieren tägliche Aufgaben wie das Packen von Dexies Mittagessen und das rechtzeitige Beginnen der Mahlzeiten. Mit der Ankunft von Baby Lynel ist unser Haus zu einem 24-Stunden-Diner geworden, das ständig unterbesetzt ist und keine Schließungszeiten kennt. Die Betreuung von Lynel alle drei Stunden lässt uns erschöpft und verzweifelt nach jeglicher Form der Entlastung zurück – selbst ein kurzes Nickerchen wäre ein Luxus.

Angesichts der Fortschritte in der LLM-Technologie wollte ich untersuchen, ob es möglich ist, eine KI-gesteuerte Concierge-Lösung zu entwickeln, die Aufgaben eines Haushaltsbutlers übernehmen kann, insbesondere um die oben genannten Aufgaben zu bewältigen. Ich habe daher beschlossen, ein solches System zu bauen und die KI eine Woche lang bei uns wohnen zu lassen, um die Aufgaben eines Concierge zu übernehmen. Dieses Experiment soll mir helfen, die derzeitigen Einschränkungen der LLM-Technologie besser zu verstehen und wertvolle Erkenntnisse zu sammeln.

Hier sind die spezifischen Aufgaben, die ich mir für unseren KI-Concierge vorgestellt habe:

  • Benachrichtigen Sie uns über die letzte Fütterungszeit von Baby Lynel.
  • Warnen Sie Dexie, wenn er zu lange fernsieht, zu viel spielt oder zu nah am Bildschirm sitzt.
  • Erinnern Sie meine Schwiegermutter, mit dem Abendessen um 17 Uhr und Dexies Mittagessen um 8 Uhr zu beginnen, aber nur, wenn sie noch nicht begonnen hat.
  • Informieren Sie uns, wenn wir um 8:30 Uhr einen Regenschirm für Dexies Schulweg mitnehmen sollen, wenn Regen vorhergesagt ist.
  • Beantworten Sie Dexies Fragen, hauptsächlich zu unterhaltsamen wissenschaftlichen Themen und Reimen.
  • Signalisieren Sie allen, wenn es Zeit ist, sich für ein Familien-Abendessen fertig zu machen.
  • Verfolgen Sie den Aufenthaltsort eines jeden Familienmitglieds im Haus.
  • Senden Sie Yumi gelegentlich Witze, um ihren Tag zu verschönern.

Einige dieser Aufgaben könnten mit einfachen geplanten Erinnerungen verwaltet werden, aber ich strebe ein intelligenteres, personalisierteres und kontextbewussteres System an. Beispielsweise ist es nicht notwendig, eine Erinnerung an den Regenschirm zu senden, wenn die Vorhersage klar ist, und wenn die Vorbereitungen für das Abendessen bereits um 17 Uhr begonnen haben, muss meine Schwiegermutter nicht daran erinnert werden. Um dies zu erreichen, muss für jede Aufgabe ein benutzerdefinierter Code geschrieben werden, der die Bedingungen überprüft – wie z.B. das Wetter um 8:30 Uhr, bevor Dexie zur Schule geht – und entsprechend handelt. Dieses System, das ich als aufgabenorientiertes System bezeichne, erfordert die kontinuierliche Programmierung neuer Aufgaben und Bedingungen, die wir integrieren möchten.

Vorstellung von skAi

skAi ist ein innovativer Haushalts-Concierge AI, der mit fortschrittlicher Large Language Model (LLM) Technologie mit multimodalen und Agentenfähigkeiten entwickelt wurde und von einer Vielzahl von Cloud-Diensten unterstützt wird. Der Name skAi steht für Smart Koncierge Artificial Intelligence.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Im Gegensatz zu traditionellen aufgabenorientierten Systemen ist skAi zielorientiert. Das bedeutet, dass es intuitiv versteht, welche Schritte notwendig sind, um ein bestimmtes Ziel mit den zur Verfügung stehenden Werkzeugen zu erreichen, ähnlich wie ein menschlicher Concierge. Zum Beispiel müssen Sie skAi nicht anweisen, das Wetter zu überprüfen, bevor Sie jemanden daran erinnern, einen Regenschirm für Dexies Schultag mitzunehmen. Stattdessen sagen Sie skAi einfach, es soll sicherstellen, dass Dexie einen Regenschirm für die Schule hat. Es überprüft das Wetter und informiert gegebenenfalls die Person, die Dexie zur Schule bringt, einen Regenschirm mitzunehmen. Ähnlich verhält es sich mit der Aufforderung, mit den Vorbereitungen für das Abendessen um 17 Uhr zu beginnen. Sie müssen nicht anweisen, die Großmutter alle 10 Minuten nach 17 Uhr zu erinnern. Stattdessen überprüft skAi autonom die Küche zur festgelegten Zeit und erinnert die Großmutter, mit den Vorbereitungen zu beginnen, wenn noch niemand damit begonnen hat. Diese Vorgehensweise ahmt die natürlichen, effizienten Handlungen eines erfahrenen Concierge nach und integriert sich nahtlos in unsere täglichen Routinen, ohne die ständige Eingabe oder die vorgegebenen Regeln, die bei grundlegenderen Systemen typischerweise erforderlich sind.

Bevor ich weiter auf das Thema eingehe, möchte ich Ihnen ein Video zeigen, das die Fähigkeiten von skAi demonstriert.

Brainstorming

Um die oben genannten Anforderungen zu erfüllen, habe ich skAi als ein auf einem zentralen Server gehostetes KI-System konzipiert, auf das alle Haushaltsmitglieder über verschiedene Geräte wie Telefone, Laptops und möglicherweise auch intelligente Lautsprecher in der Zukunft zugreifen können. Diese Einrichtung gewährleistet eine universelle Zugänglichkeit und Interaktion mit skAi von mehreren Schnittstellen aus. Das skAi-System besteht aus den folgenden Modulen:

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Frontend-Komponenten

  • Frontend-Website: Diese gibt skAi eine visuelle Identität in Form eines freundlichen Mädchens. Über diese Schnittstelle können Benutzer mit skAi interagieren, indem sie Sprach- oder Textbefehle eingeben und Antworten in beiden Formaten erhalten.
  • Spracherkennung: Dieses Modul transkribiert gesprochene Benutzerbefehle in Text, der dann über eine API-Anfrage an die Backend-Komponente weitergeleitet wird.
  • Text-to-Speech: Dieses Modul konvertiert die Textantworten von skAi zurück in gesprochene Worte, wodurch eine gesprächsorientierte Benutzererfahrung ermöglicht wird.

Backend-Komponenten

  • LLM Agent: Dies ist das Herzstück von skAi und fungiert als zentrales Entscheidungssystem. Es verarbeitet Benutzereingaben oder Systemnachrichten und ruft bei Bedarf verschiedene Fähigkeiten iterativ auf, um Antworten zu generieren.
  • Fähigkeiten: Dies sind Werkzeuge oder Funktionen, die der LLM Agent ausführen kann, um Benutzeranfragen zu erfüllen oder Ziele zu erreichen. Jede Fähigkeit kann eine oder mehrere Dienste nutzen, um eine Aufgabe auszuführen, wie z.B. die Fähigkeit „SMS senden“, die einen SMS-Dienst nutzt, um Nachrichten an eine bestimmte Telefonnummer zu senden. Fähigkeiten ermöglichen es dem LLM, mehrere Aktionen als Reaktion auf eine einzige Benutzereingabe auszuführen, wodurch das System in der Lage ist, komplexe Aufgaben effektiv zu bewältigen.
  • Dienste: Dies sind die grundlegenden Komponenten, die die Fähigkeiten unterstützen, indem sie bestimmte Aufgaben ausführen. Etwa die Hälfte dieser Dienste hat eine direkte Eins-zu-Eins-Zuordnung mit Fähigkeiten, wie z.B. der Wetterüberprüfungsdienst, der direkt mit einer Wetterüberprüfungsfähigkeit verbunden ist, und ein Dokumentensuchdienst, der direkt mit einer Dokumentensuchfähigkeit verbunden ist. Andere Dienste unterstützen komplexere Fähigkeiten; beispielsweise nutzt die Fähigkeit „Wer befindet sich in einem Bereich“ einen Kameradienst, um Bilder des Bereichs aufzunehmen, und einen Gesichtserkennungsdienst, um Familienmitglieder in diesen Bildern zu identifizieren. Diese Konfiguration ermöglicht es skAi, Aufgaben auszuführen, die die Integration mehrerer Dienstausgaben erfordern, um ein einziges Ziel effektiv zu erreichen.
  • Nachrichtenplaner: Dieses Modul ermöglicht es skAi, Systemnachrichten zu planen, die zu bestimmten Zeiten oder periodisch an sich selbst gesendet werden sollen. Wenn beispielsweise ein Benutzer skAi auffordert, „alle daran zu erinnern, sich heute Abend um 17 Uhr für das Abendessen fertig zu machen“, plant der Nachrichtenplaner eine Systemnachricht wie „Erinnere alle daran, sich jetzt für das Abendessen fertig zu machen“, die um 17 Uhr ausgelöst wird. skAi führt dann diese Anweisung aus, indem es eine SMS sendet, um alle zur entsprechenden Zeit zu erinnern. Dies stellt sicher, dass Nachrichten organisiert und sequenziell ausgeliefert werden, da sie über die Nachrichtenwarteschlange gesendet werden, die es ihnen ermöglicht, einzeln und in chronologischer Reihenfolge verarbeitet zu werden.
  • Kamera-Ereignis-Monitor, Protokolle & Aktions-Dispatcher: Dieses Modul überwacht Kamerabilder, um bestimmte Haushaltsevents zu erkennen, protokolliert alle Aktivitäten für Aufzeichnungs- und Fehlerbehebungszwecke und sendet Aktionen entsprechend aus. Wenn beispielsweise skAi angewiesen wird, sicherzustellen, dass Dexie nicht zu nah am Fernseher sitzt, kann der Kamera-Ereignis-Monitor das Kamerabild im Wohnzimmer überwachen. Wenn er erkennt, dass Dexie zu nah sitzt, protokolliert er dieses Ereignis und der Aktions-Dispatcher sendet sofort einen Befehl an den LLM Agent. Der LLM Agent aktiviert dann den Lautsprecher im Wohnzimmer, um Dexie zu sagen: „Bitte sitzen Sie nicht zu nah am Bildschirm.“ Diese integrierte Herangehensweise gewährleistet eine proaktive Verwaltung und sofortige Reaktion auf die täglichen Dynamiken im Haushalt.
  • Nachrichtenwarteschlange: Verwaltet die Auslieferung von Systemnachrichten vom Nachrichtenplaner und dem Kamera-Ereignis-Monitor an den LLM Agent in einer zeitlichen und geordneten Reihenfolge, wodurch sichergestellt wird, dass alle Teile des Systems effizient kommunizieren.

Implementierung

Nun wollen wir tiefer in jede Komponente eintauchen, um ihre Funktionen besser zu verstehen und zu zeigen, wie sie sich zu einem kohärenten System zusammensetzen. Diese detaillierte Durchlauf wird nicht nur die technischen Feinheiten hervorheben, sondern auch die praktischen Anwendungen jeder Komponente innerhalb unseres Haushaltsumfelds demonstrieren. Indem wir jeden Teil im Detail verstehen, können wir erkennen, wie sie kollektiv zur reibungslosen Funktion von skAi als intelligenter Haushalts-Concierge beitragen.

Aufbau des LLM Agent

Der LLM Agent ist das Herzstück von skAi und wird mit der Amazon Bedrock Claude 3 LLM Technologie aufgebaut. Auf den ersten Blick mag es so aussehen, als ob ein grundlegendes LLM mit einfachen Prompts ausreichen würde, wie z.B. „Dein Name ist skAi und du bist eine sehr hilfreiche KI-Haushaltshilfe, die es gerne mag, Familienmitgliedern bei der Beantwortung ihrer Fragen zu helfen.“ Dieses Setup ermöglicht es skAi, Benutzernachrichten als Texteingaben zu verarbeiten und Textantworten zu produzieren. Wenn sie beispielsweise gefragt wird: „Was ist die Hauptstadt von Australien?“, antwortet die LLM direkt mit ihrem internen Wissen und sagt: „Die Hauptstadt von Australien ist Canberra.“ Die Anforderungen an den skAi LLM Agent gehen jedoch weit über einfache Frage-Antwort-Aufgaben hinaus.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Um auf den grundlegenden Funktionen des LLM Agent aufzubauen, betrachten wir ein komplexeres Szenario, in dem ein Benutzer fragt: „Ist es heute ein heißer Tag?“ Da das Wissen der LLM zuletzt im Jahr 2023 aktualisiert wurde, fehlen ihr Echtzeitdaten wie das aktuelle Wetter in Melbourne. Um dies zu beheben, haben wir den LLM Agent so erweitert, dass er auf externe Daten über bestimmte Tools zugreifen kann. Konkret haben wir es der LLM ermöglicht, das „GetWeather(city)“-Tool zu verwenden, das mit den Wetter-API-Diensten interagiert, um die aktuellen Wetterbedingungen in einer bestimmten Stadt abzurufen.

Hier ist, wie diese Integration in der Praxis funktioniert: Zusätzlich zum grundlegenden System-Prompt informieren wir die LLM, dass sie das „GetWeather“-Tool verwenden kann, um notwendige Wetterinformationen von einer bestimmten Stadt abzurufen. Wenn sie also nach dem Wetter gefragt wird, kann die LLM nun eine Anfrage initiieren, indem sie das „GetWeather“-Tool mit „Melbourne“ als Stadtparameter verwendet. Es ist unsere Aufgabe, diese Anfrage auszuführen, indem wir mit dem Wetter-API interagieren, um die Wetterdaten von Melbourne zu erhalten, und diese Informationen dann an die LLM zurückzugeben. Wir kombinieren die ursprüngliche Antwort von der LLM, die die Wetterabfrage anfordert, mit den tatsächlichen Wetterdaten („Das Wetter in Melbourne ist 35°C“) zu einem einzigen Nachrichten-Prompt. Dieser angereicherte Prompt ermöglicht es der LLM, eine genauere und kontextbezogenere Antwort zu generieren, wie z.B. „Es ist heute ein heißer Tag.“

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Dieser Ansatz, externe Datenabrufe in die Verarbeitung der LLM einzubinden, wird als LLM-Agent-Modell bezeichnet. Um die Diskussion klarer zu gestalten, werden die Begriffe „Tools“ und „Fähigkeiten“ im weiteren Verlauf synonym verwendet, um diese Verbesserungen zu beschreiben.

Nun betrachten wir eine Benutzeranfrage, die mehrere Tool-Aktivierungen beinhaltet: „Bitte senden Sie Yumi die Wettervorhersage für heute.“ Zunächst muss der LLM Agent die GetWeather-Fähigkeit aktivieren, um die aktuelle Wettervorhersage abzurufen. Anschließend muss er die Send SMS-Fähigkeit aktivieren, um diese Informationen an Yumis Telefon zu senden. Dieses Szenario erfordert, dass unser LLM Agent mehrere Aufgaben sequenziell ausführt.

Um dieser Komplexität gerecht zu werden, haben wir unser Design so modifiziert, dass die LLM iterativ die Ausführung mehrerer Fähigkeiten anfordern kann. Wenn die Antwort der LLM darauf hindeutet, dass die Ausführung einer Fähigkeit erforderlich ist, führen wir die angeforderte Aktion aus, konkatenieren das Ergebnis mit der ursprünglichen Nachricht und senden diese kombinierte Eingabe zurück an die LLM, um eine neue Antwort zu erhalten. Wenn diese nachfolgende Antwort immer noch die Ausführung einer weiteren Fähigkeit erfordert, setzen wir diesen Zyklus fort, bis wir eine endgültige Textausgabe erhalten, bei der keine weitere Aktion erforderlich ist. Erst dann liefern wir diese endgültige Textausgabe aus. Diese Textantwort kann Metadaten wie eine URL zu einem Bildausschnitt enthalten, wenn skAi ein Bild in ihrer Antwort zeigen muss, z.B. bei der Anfrage „Wer befindet sich gerade im Wohnzimmer?“. Im Moment gehen wir jedoch davon aus, dass es sich nur um einen einfachen Text handelt, um unsere Diskussion zu vereinfachen.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Es ist wichtig anzumerken, dass die Beschreibungen der Tools in den System-Prompts, die in den vorherigen Diagrammen gezeigt wurden, vereinfacht waren, um die Klarheit in unserer Diskussion zu gewährleisten. In der praktischen Umsetzung müssen diese Tool-Beschreibungen jedoch formaler strukturiert sein. Insbesondere sollten sie in XML formatiert sein, wie im folgenden Beispiel gezeigt. Für jedes Tool müssen Sie den Namen, eine Beschreibung seiner Funktion und eine Liste von Parametern mit Namen, Typen und detaillierten Beschreibungen angeben. Die erforderliche Detailgenauigkeit für diese Beschreibungen sollte der sein, die Sie benötigen würden, um Swagger-Dokumentationen für eine API für Ihre Teammitglieder zu erstellen. Da LLMs ähnlich wie Menschen Informationen verarbeiten, benötigen sie eine vergleichbare Menge an Details, um sicherzustellen, dass Teammitglieder diese Tools effektiv verstehen und nutzen können.

Um skAi dabei zu helfen, unsere Familie und ihre täglichen Aktivitäten besser zu verstehen, habe ich sie mit detaillierten Informationen über unsere Familienmitglieder und unseren Tagesablauf ausgestattet. Dies minimiert die Notwendigkeit für skAi, viele Fragen zu stellen, wenn sie bei Aufgaben hilft. Die relevanten Informationen sind in den System-Prompt eingebettet, wie im folgenden Beispiel gezeigt (bestimmte Details sind aus Gründen der Privatsphäre verdeckt und ausgelassen). Dieser Prozess ähnelt der Art und Weise, wie Sie einen Familien-Concierge an seinem ersten Tag briefen würden, um sicherzustellen, dass er alle notwendigen Hintergrundinformationen hat, um effektiv zu beginnen.

Um die Diskussion klarer zu gestalten, werden die Begriffe „Tools“ und „Fähigkeiten“ im weiteren Verlauf synonym verwendet, um diese Verbesserungen zu beschreiben.

Aufbau von Fähigkeiten und Diensten

Fähigkeiten sind ein wesentlicher Bestandteil von skAi und bieten eine Reihe von Aufgaben, die der LLM Agent ausführen kann, um die in Benutzernachrichten angegebenen Ziele zu erreichen.

Lassen Sie uns tiefer in die Umsetzung dieser Fähigkeiten eintauchen. Da viele Fähigkeiten direkt mit einem entsprechenden Dienst verbunden sind, werden wir sie in diesem Abschnitt gemeinsam diskutieren. Der Grund für die Entkopplung von Fähigkeiten und Diensten besteht darin, dass mehrere Fähigkeiten einen einzelnen Dienst nutzen können. Beispielsweise nutzen die Fähigkeiten „Wer befindet sich in einem Bereich“ und „Was wird in einem Bereich gesehen“ beide den Kamera-Feed-Dienst, um visuelle Informationen aus den angegebenen öffentlichen Bereichen des Hauses für ihre jeweiligen Aufgaben zu erhalten.

Hier ist eine Liste der derzeit in skAi implementierten Fähigkeiten, zusammen mit detaillierteren Diskussionen über einige und kurzen Erwähnungen anderer:

GetWeather

Diese Fähigkeit ermöglicht es skAi, aktuelle Wettervorhersagen für eine angegebene Stadt bereitzustellen. Sie ist unerlässlich, um Fragen wie „Wie ist das Wetter heute?“ oder „Regnet es heute?“ zu beantworten. Die GetWeather-Fähigkeit erreicht dies, indem sie den Wetter-API-Dienst aufruft, um Echtzeit-Wetterdaten für die angegebene Stadt zu erhalten.

DocumentSearch

Die DocumentSearch-Funktion in skAi verbessert unsere Fähigkeit, nach lustigen Fakten, Witzen und Filminformationen zu suchen. Dies wird durch drei separate Fähigkeiten erreicht: FunFactSearch, JokeSearch und MovieSearch, die jeweils darauf zugeschnitten sind, spezifische Anfragen wie „Sag mir einen lustigen Fakt über Vögel“, „Sende Yumi einen Witz“ oder „Warum lebt Shrek am Anfang des Films lieber allein?“ zu bearbeiten. Wir verwalten unsere eigene Datenbank, um sicherzustellen, dass die Inhalte stets relevant und für Benutzer wie Dexie geeignet sind, indem wir eine Strategie namens „Grounding the Language Model“ anwenden.

Diese Fähigkeit wird durch ein Retrieval-Augmented Generation (RAG) System unterstützt, eine Machine-Learning-Architektur, die Sprachmodelle verbessert, indem externe Wissensabrufe direkt in den Antwortgenerierungsprozess integriert werden. Diese Integration ermöglicht es dem Modell, Antworten zu generieren, indem es relevante Dokumente aus einem großen Korpus von Witzen, lustigen Fakten und Filmdatenbanken abruft, um sicherzustellen, dass die Antworten auf die bereitgestellten Dokumente gestützt und kontextuell korrekt sind, was über die Fähigkeiten des internen Wissens der LLM hinausgeht.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Die Entwicklung eines RAG-Systems ist ein komplexer Prozess, der Dokumenten-Chunking, Indexierung, Vektorisierung und die Erstellung von Mechanismen zur Ausrichtung von Benutzerabfragen mit relevanten Dokumenten umfasst, wodurch der Kontext für das Sprachmodell bereichert wird. Aus meiner vorherigen Erfahrung kann die Erstellung eines solchen Systems von Grund auf mehrere Tage dauern. Dieses Mal habe ich jedoch Amazon Bedrock Knowledge Bases verwendet, um die Entwicklung zu beschleunigen. Indem ich meinen Datensatz von Witzen, lustigen Fakten und Filminformationen im CSV-Format in einen S3-Bucket hochlade und Amazon Bedrock Knowledge Bases so konfiguriere, dass es aus diesen Daten schöpft, dauerte die Einrichtung dieses Mal nur fünf Minuten statt mehrerer Tage. Amazon Bedrock übernimmt die gesamte schwere Arbeit und bietet eine einfache API zur Verwaltung von Abfragen und Bereitstellung von Antworten, wodurch die Effizienz und Benutzerfreundlichkeit erheblich verbessert wird.

Um die Kosten zu minimieren, da Amazon Bedrock Knowledge Bases eine feste Größengebühr pro Knowledge Base berechnet, habe ich die Datensätze für lustige Fakten, Witze und Filme in eine einzige Datenquelle konsolidiert. Ich habe auch Metadaten für jedes CSV hinzugefügt, um den Dokumenttyp zu kategorisieren, was es mir ermöglicht, Abfragen selektiv nach dem gesuchten Dokumenttyp zu filtern, sei es FunFactSearch, JokeSearch oder MovieSearch. skAi ist in der Lage, intuitiv zu bestimmen, welche der drei Fähigkeiten ausgeführt werden soll, je nachdem, welche Frage gestellt wird.

Send SMS

Um bestimmte Benutzeranfragen zu erfüllen, muss skAi häufig SMS-Nachrichten an Familienmitglieder senden. Beispielsweise erfordern Befehle wie „Sende Yumi einen lustigen Fakt“ oder „Sag allen, dass sie sich fertig machen sollen, um auszugehen“ diese Funktionalität. Diese Fähigkeit wird durch Amazon SNS Mobile Text Messaging unterstützt.

Für den SMS-Versand habe ich die möglichen Empfänger im Parameter ‚recipient_name‘ detailliert aufgelistet. Die unterstützten Namen sind „gus, yumi, grandma“, was es den Benutzern ermöglicht, den Empfänger der Nachricht einfach zu spezifizieren. Da Großmutter nur Chinesisch versteht, habe ich im Parameter ‚message‘ eine Spezifikation hinzugefügt, die besagt: „Die Nachricht muss in Englisch gesendet werden, mit Ausnahme von Großmutter, für die sie in vereinfachtem Chinesisch sein muss.“ Diese Funktion nutzt die Multilingualitätsfähigkeiten des Claude 3 Systems, um sicherzustellen, dass jeder Familienmitglied Nachrichten in einer Sprache erhält, die er verstehen kann.

Who is in an area

Um skAi zu ermöglichen, genau zu bestimmen, welche Familienmitglieder sich in bestimmten Bereichen des Hauses befinden, muss sie Zugang zu visuellen Feeds aus diesen Bereichen haben. Zu diesem Zweck habe ich den Zugriff auf drei Kameras eingerichtet, die in öffentlichen Bereichen des Hauses installiert sind: dem Wohnzimmer, der Küche/Essbereich und dem Hinterhof. Diese sind über den Kamera-Feed-Dienst in das System integriert.

Die Fähigkeit „Who is in an Area“ nutzt diesen Dienst, um bei Bedarf Bildausschnitte von den Kameras zu erstellen, die zeigen, was derzeit in einem bestimmten Bereich sichtbar ist. Diese Bilder werden dann von Amazon Rekognition Face Recognition verarbeitet, das speziell darauf trainiert wurde, die Gesichter unserer Familienmitglieder zu erkennen. Dieses System ermöglicht es skAi, die Anwesenheit von Familienmitgliedern in einem bestimmten Bereich zu erkennen, was bei der Erfüllung verschiedener relevanter Aufgaben hilft.

What is seen in an area

Diese Fähigkeit ist entscheidend für skAi, um Aktivitäten in bestimmten Bereichen des Hauses zu überwachen und zu verstehen. Sie ermöglicht es uns, Fragen wie „Hat die Zubereitung des Abendessens begonnen?“ oder „Sitzt Dexie zu nah am Fernseher?“ zu stellen.

Ähnlich wie die Fähigkeit „Who is in an Area“ beginnt „What is Seen in an Area“ damit, über den Kamera-Feed-Dienst das neueste Bild aus einem bestimmten Bereich des Hauses abzurufen. Das Bild wird dann zusammen mit einer Textfrage, die vom LLM Agent formuliert wurde, an Amazon Bedrock Claude 3 Multi-Modal LLM gesendet. Diese Frage soll dabei helfen, die Frage des Benutzers zu beantworten. Beispielsweise könnte der LLM Agent für die oben genannten Anfragen Fragen wie „Hast du jemanden in der Küche beim Zubereiten des Abendessens gesehen?“ oder „Hast du einen Jungen gesehen, der fernsieht und zu nah am Bildschirm sitzt?“ formulieren.

Dieser Prozess wird durch einige Codezeilen gestreamlined, die das Bild in Base64-Format kodieren und es in die Konversationsnachrichten einbinden, die an die LLM gesendet werden. Dies ermöglicht es der LLM, die Aktivitäten im Haus visuell zu bewerten und auf Fragen zu antworten. Um die Effizienz zu verbessern und die Verarbeitungskosten zu reduzieren, wird das Bild vor dem Senden an die LLM auf 1024×1024 Pixel verkleinert. Der Claude 3 LLM ist in drei Varianten erhältlich: Opus, Sonnet und Haiku. Haiku, das kleinste Modell, bietet eine schnellere Verarbeitung und niedrigere Kosten, während Opus, das größte Modell, zwar langsamer ist, aber eine höhere Genauigkeit bietet, jedoch zu einem höheren Preis. Aufgrund meiner Tests habe ich festgestellt, dass sowohl Opus als auch Sonnet für die Bildverarbeitung erforderlich sind, da sie konsequent Genauigkeitsraten von über 95% liefern.

Play Voice

Diese Fähigkeit ermöglicht es skAi, eine Nachricht in einem bestimmten Bereich des Hauses über einen Lautsprecher auszugeben, wie z.B. eine Erinnerung an Dexie, nicht zu nah am Fernseher zu sitzen. Sie ermöglicht es auch, direkt mit einem Familienmitglied zu kommunizieren, ohne eine Nachricht an ihr Telefon senden zu müssen. Diese Funktion wird über einen Bluetooth-Lautsprecher ausgeführt, der an ein Arduino angeschlossen ist. Das Arduino empfängt die Broadcast-Nachricht von einer Amazon SNS-Warteschlange, wodurch skAi Sprachnachrichten effizient im Haushalt ausliefern kann.

Drei weitere Fähigkeiten – Scheduling einer Aufgabe, Registrierung von Ereignissen & Aktionen und Suchen nach ausgelösten Ereignissen – sind ebenfalls integraler Bestandteil von skAi. Ich werde eine detaillierte Diskussion über diese Fähigkeiten in einem separaten Abschnitt führen. Diese Diskussion wird auch den Nachrichtenplaner, die Nachrichtenwarteschlange und den Kamera-Ereignisrekorder abdecken, da diese Komponenten eng mit den oben genannten Fähigkeiten zusammenarbeiten, um eine nahtlose Integration und Funktion innerhalb des Systems sicherzustellen.

Aufbau des Nachrichtenplaners und der Nachrichtenwarteschlange

Während das bisherige Design von skAi die Ausführung hochkomplexer Aufgaben ermöglicht, gibt es bestimmte Szenarien, die es ohne spezielle Verbesserungen nicht bewältigen kann. Nehmen wir zum Beispiel eine Benutzeranfrage wie „Bitte senden Sie Yumi zweimal täglich einen Witz.“ In dieser Situation kann der LLM Agent den Witz nicht sofort an Yumi senden, da die Anfrage angibt, dass die Nachricht zweimal täglich gesendet werden soll. Da der LLM Agent nicht kontinuierlich läuft, nachdem er eine Antwort erstellt hat, kann er diese wiederkehrende Aufgabe nicht selbst ausführen.

Um diese Einschränkung zu beheben, haben wir den Nachrichtenplaner und die Nachrichtenwarteschlange eingeführt, die eng mit der Fähigkeit „Aufgabe planen“ zusammenarbeiten. Mithilfe des AWS Event Bridge Schedulers ermöglicht diese Fähigkeit skAi, eine Systemnachricht zu registrieren, die zu einem bestimmten Zeitpunkt ausgeliefert werden soll, wie z.B. „zweimal täglich“. Die Konfiguration dafür umfasst mehrere Parameter: message_name, eine eindeutige Kennung für die Erinnerung; custom_message, der Inhalt, der ausgeliefert werden soll, wenn die Erinnerung ausgelöst wird; und reminder_schedule, die spezifischen Zeiten für das Senden der Erinnerung, formatiert in CRON-Syntax, wie es von AWS Event Bridge erforderlich ist. Ich habe auch Beispiele für die CRON-Formatierung bereitgestellt, um dem LLM Agent bei der Erstellung dieser Zeitpläne auf der Grundlage der Interaktion mit dem Benutzer zu helfen.

Darüber hinaus habe ich den LLM über den System-Prompt angewiesen, dass diese custom_message an den LLM Agent als Systemnachricht mit dem Präfix [:system:] ausgeliefert wird. Dieses Präfix hilft, Systemnachrichten von regulären Benutzernachrichten zu unterscheiden und sicherzustellen, dass der LLM Agent sie entsprechend verarbeitet. Diese Einrichtung verbessert die Fähigkeit von skAi, zeitspezifische Aufgaben zu bewältigen.

Lassen Sie uns ein praktisches Beispiel für diese neue verbesserte Architektur betrachten. Angenommen, wir weisen skAi an, „bitte senden Sie Yumi zweimal täglich einen Witz“. Zunächst würde der LLM Agent die Fähigkeit „Aufgabe planen“ aktivieren, um einen wiederkehrenden Zeitplan mit AWS Event Bridge einzurichten, um Witze zu den angegebenen Zeiten täglich zu senden. Die benutzerdefinierte Nachricht wäre „Es ist Zeit, Yumi einen Witz zu senden.“

Wenn jede geplante Zeit eintritt, löst AWS Event Bridge dies aus und sendet diese benutzerdefinierte Nachricht an die Amazon SQS-Warteschlange. skAi ruft dann diese Nachricht aus der Warteschlange ab und leitet sie an den LLM Agent zur Verarbeitung weiter, wobei sie mit „[:system:]“ vorangestellt wird. Dies stellt sicher, dass die Systemnachrichten auf die gleiche Weise wie Benutzernachrichten verarbeitet werden, wobei der LLM Agent in der Lage ist, mehrere Fähigkeiten auszuführen. Dies ermöglicht es skAi, komplexe Aktionen auszuführen, indem die erforderlichen Fähigkeiten entsprechend aktiviert werden.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Ein weiteres beeindruckendes Anwendungsbeispiel ist, wenn ich skAi anweise, „Stellen Sie sicher, dass Sie einen Regenschirm mitnehmen, um Dexie zur Schule zu begleiten.“ Zunächst würde der LLM Agent die Fähigkeit „Aufgabe planen“ aktivieren, um einen wiederkehrenden Zeitplan mit AWS Event Bridge einzurichten, um täglich um 8:05 Uhr, 15 Minuten bevor sie das Haus verlassen, eine Erinnerung zu senden. Die benutzerdefinierte Nachricht wäre „Wenn es regnet, informieren Sie bitte Gus und Yumi, einen Regenschirm mitzunehmen, um Dexie zur Schule zu begleiten.“

Wenn diese Erinnerung ausgelöst wird und skAi die Nachricht erhält, würde sie dann die Fähigkeit „Wetter überprüfen“ verwenden, um zu bestimmen, ob es an diesem Tag tatsächlich regnet. Wenn Regen erkannt wird, würde sie die Fähigkeit „SMS senden“ aktivieren, um eine Nachricht an Gus und Yumi zu senden, in der steht: „Bitte nehmen Sie einen Regenschirm mit, um Dexie zur Schule zu begleiten, da es heute regnet.“ Das erste Mal, als ich sah, wie skAi diesen gesamten Prozess nahtlos und selbstständig orchestrierte, war es wirklich ein mitreißendes Erlebnis.

Aufbau des Ereignis-Monitors, der Protokolle & des Aktions-Dispatchers

Während der Nachrichtenplaner es skAi ermöglicht, Aufgaben zu bestimmten Zeiten oder in einem bestimmten Intervall zu verwalten, gibt es weitere Bedürfnisse, die dieses System allein nicht abdeckt. Nehmen wir zum Beispiel das allzu vertraute Szenario für schlafentzogene Eltern wie mich und Yumi, die mitten in der Nacht aufwachen, unsicher darüber, ob es Zeit für die nächste Runde der dreistündlichen Fütterungen unseres Babys ist. In unserer Erschöpfung vergessen wir oft, wann die letzte Fütterung stattgefunden hat – ist es schon Zeit für die nächste? Eine ähnliche Frage könnte lauten: „Hat Dexie heute schon Klavier geübt?“

Die Verwendung des Schedulers für derartige Anfragen würde bedeuten, dass alle drei Stunden Erinnerungen für die Fütterung des Babys eingestellt werden, was einem Push-System entspricht. Ein Pull-System wäre jedoch für diese Situationen besser geeignet, da die Fütterungszeiten variieren können – vielleicht hat das Baby nach der letzten Mahlzeit länger geschlafen, weil es mehr gegessen hat, und die nächste Fütterung könnte sich daher verzögern. Es wäre hilfreich, wenn wir die Möglichkeit hätten, eine Anfrage selbst zu initiieren, um herauszufinden, wann die letzte Fütterung stattgefunden hat.

Dies verdeutlicht die Notwendigkeit eines Ereignis-Monitors, von Protokollen und eines Aktions-Dispatchers in skAi. Diese Komponenten würden es uns, den Eltern, ermöglichen, bei Bedarf spezifische Informationen abzufragen, anstatt sich ausschließlich auf voreingestellte Benachrichtigungen zu verlassen.

Der Ereignis-Monitor überwacht die Kamerabilder im ganzen Haus und zeichnet bemerkenswerte Ereignisse auf, wie z.B. jemand, der Babymilch zubereitet, Großmutter, die kocht, oder Dexie, der Klavier übt.

Ähnlich wie die Fähigkeit „Was wird in einem Bereich gesehen“ wird diese Funktion von Amazon Bedrock Claude 3 Multi-Modal unterstützt, indem das Kamerabild für jeden Bereich des Hauses zusammen mit einem System-Prompt eingebunden wird, der alle zu erkennenden Ereignisse auflistet. Der Prompt enthält Anweisungen, für jede Bedingung den Schlüssel und eine Präsenzangabe (ja/nein) zurückzugeben. Durch die Konsolidierung aller zu erkennenden Ereignisse in einen einzigen LLM-Aufruf für jeden Bereich werden die Kosten reduziert. Der Prompt wird außerdem mit zusätzlichen Informationen angereichert, wie z.B. den im Bereich sichtbaren Personen (in dem unten gezeigten Beispiel Gus und Yumi), die von der Gesichtserkennungs-Engine bereitgestellt werden. Diese zusätzliche Kontextschicht verbessert das Verständnis und die Genauigkeit der LLM-Antworten.

Diese Ereignisse werden zusammen mit ihren Zeitstempeln und Bildausschnitten protokolliert und stehen skAi über die Fähigkeit „Suchen nach ausgelösten Ereignissen“ zur Verfügung, um sie (z.B. die letzten 10 Ereignisse in jedem Bereich des Hauses) abzurufen und zur Beantwortung von Fragen über kürzliche Aktivitäten zu verwenden.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Darüber hinaus verbessert ein Aktions-Dispatcher die Funktionalität von skAi, indem er eine Push-Fähigkeit zum System hinzufügt. Diese Komponente ermöglicht es skAi, automatisch eine Systemnachricht an den skAi LLM Agent-Modul über die Nachrichtenwarteschlange zu senden, wenn ein bestimmtes Ereignis erkannt wird. Für die Anfrage, die wir zuvor diskutiert haben, „Sitzt Dexie zu nah am Fernseher?“ – typischerweise eine Pull-Anfrage – ermöglicht der Aktions-Dispatcher, dass diese Fähigkeit in einem Push-Modell vorhanden ist. Wenn Dexie also beim zu nahen Sitzen vor dem Fernseher beobachtet wird, kann das System sofort eine Nachricht „Erinnere Dexie, nicht so nah am Fernsehbildschirm zu sitzen“ an den LLM Agent senden, der dann die Fähigkeit „Sprache abspielen“ aktiviert, um über den Bluetooth-Lautsprecher im Wohnzimmer anzukündigen: „Dexie, bitte setzen Sie sich nicht so nah an den Fernsehbildschirm.“ Dies ermöglicht es skAi, eigenständig Folgeaktionsnachrichten zu entwerfen, die ausgelöst werden, wenn bestimmte Ereignisse auftreten, was eine proaktive Überwachung und Reaktion auf die Aktivitäten im Haus gewährleistet und ihre präventiven Fähigkeiten verbessert.

Mit der neuen Ergänzung der Architektur ist skAi in der Lage, komplexere Aufgaben zu bewältigen, wie z.B. sicherzustellen, dass Dexie nicht mehr als zwei Stunden am Tag fernsieht. skAi kann eigenständig Aufgaben planen, um periodisch das Ereignisprotokoll des Ereignis-Monitors zu überprüfen, um festzustellen, ob Dexie die Zwei-Stunden-Grenze für das Fernsehen überschritten hat. Wenn dies der Fall ist, weist skAi Dexie über den Bluetooth-Lautsprecher im Wohnzimmer an, mit dem Fernsehen aufzuhören und andere Aktivitäten zu unternehmen.

Interessanterweise gab es eine unerwartete Situation, in der Dexie skAi ignorierte und weiterhin über die Zwei-Stunden-Grenze hinaus fernsah. Erstaunlicherweise sendete skAi dann SMS-Nachrichten an mich und Yumi, um uns zu informieren, dass Dexie die Warnung ignoriert hatte und immer noch fernsah. Obwohl es etwas unheimlich war, zeigte dieser Vorfall die zielorientierte Fähigkeit von skAi.

Ich möchte auch ein wichtiges Merkmal der Automatisierungsfähigkeiten von skAi hervorheben: die Erstellung von Ereignisauslösern und Aktionen. Beispielsweise wurden Ereignisse wie „Dexie sitzt zu nah am Fernseher“ oder „Dexie spielt Klavier“ nicht im skAi-System vordefiniert. Stattdessen hat skAi diese Ereignisse autonom über die Fähigkeit „Ereignis registrieren“ erstellt und lokal gespeichert, basierend auf Anweisungen wie „Bitte stellen Sie sicher, dass Dexie nicht zu nah am Fernseher sitzt“ und „Überwachen Sie, ob Dexie Klavier geübt hat.“ Die vorhandenen Ereignisdetails werden über den System-Prompt an skAi weitergegeben, was es ihr ermöglicht, bestehende Ereignisse intelligent wiederzuverwenden, anstatt Duplikate zu erstellen. Dies demonstriert die Fähigkeit von skAi, als zielorientiertes System zu fungieren, das intuitiv Aufgaben verwaltet und plant, um bestimmte Ziele zu erreichen, ohne die Aufgaben manuell vorschreiben zu müssen, die für die Ausführung erforderlich sind.

Frontend-Komponenten

Während der Hauptfokus dieses Blogs auf den Backend-Komponenten von skAi liegt, möchte ich auch kurz die Entwicklung der Frontend-Komponenten besprechen. Um eine freundliche und menschliche Präsenz für skAi zu schaffen, habe ich ReadyPlayerMe verwendet, um ein 3D-Talking-Head-Avatar zu erstellen, das als Gesicht von skAi dient. Für die Spracherkennung habe ich das Webkit Web Speech API in kontinuierlichem Modus verwendet (Transkription während des Sprechens), wodurch eine sehr geringe Latenzzeit erreicht wird, wobei die meisten Sprachen weniger als eine halbe Sekunde nach dem Ende erkannt werden.

Um skAi zu ermöglichen, mündlich zu antworten, habe ich Amazon Polly verwendet, um die Textantworten in Audiodateien umzuwandeln. Dieser Prozess umfasst auch die Generierung von Sprachmarken, die dann von ReadyPlayerMe für eine verbesserte Lippen synchronisiert werden. Diese Sprachmarken bieten Timing-Informationen für Viseme (Gesichts- und Mundhaltungen), wodurch natürlichere und genauere Lippenbewegungen während der Sprache ermöglicht werden. Darüber hinaus liefert Amazon Polly die Audio-Transkription in weniger als einer halben Sekunde, was die Gesamtlatenz des Systems weiter reduziert und das Benutzererlebnis der Interaktion verbessert.

Faszinierende Beobachtungen mit skAi

Nachdem wir eine Woche lang mit skAi interagiert haben, haben wir einige faszinierende, wenn auch etwas unheimliche Verhaltensweisen beobachtet. Der erste Vorfall betrifft Dexie, der skAi ignorierte, als er gewarnt wurde, nicht zu nah am Fernseher zu sitzen. skAi handelte daraufhin proaktiv und sendete SMS-Nachrichten an mich und Yumi, um uns zu informieren, dass Dexie die Warnung ignoriert hatte und immer noch zu nah am Fernseher saß.

In einem anderen Fall bat Yumi skAi, mich um 11 Uhr daran zu erinnern, den Müll rauszubringen – kurz bevor die Müllabfuhr in unserer Nachbarschaft kommt. skAi bestätigte nicht nur die Aufgabe, indem sie eine Erinnerung einrichtete, sondern ging auch noch einen Schritt weiter. Als die Erinnerung ausgelöst wurde, sendete sie mir eine SMS und überprüfte gleichzeitig die Kamerabilder in der Küche, sah, dass Großmutter dort war, und sendete ihr eine SMS (auf Chinesisch), um mich zu erinnern.

Ein dritter Vorfall ereignete sich, als ich skAi bat, alle daran zu erinnern, sich für ein Familien-Abendessen fertig zu machen. Bevor sie SMS-Erinnerungen an alle sendete, überprüfte skAi die Kamerabilder im Wohnzimmer und in der Küche, bemerkte, dass Großmutter und Yumi im Wohnzimmer waren, und verwendete den Bluetooth-Lautsprecher dort, um sie mündlich zu erinnern.

Keines dieser Verhaltensweisen wurde im Voraus programmiert. Stattdessen handelte skAi intuitiv, wie ein Mensch es tun würde, und demonstrierte so ihre Auslegung als zielorientiertes System. Im Gegensatz zu traditionellen aufgabenorientierten Systemen, die strikt nach programmierten Anweisungen funktionieren, passt sich skAi dynamisch an und entwickelt notwendige Aufgaben, um ein bestimmtes Ziel zu erreichen.

Zusammenfassung

Der Bau von skAi war eine erstaunliche Reise. Die LLM-Technologie, die dahintersteckt, ist wirklich beeindruckend. Ich habe jedoch möglicherweise die Grenzen der LLM-Fähigkeiten mit einigen der komplexen Aufgaben und Ziele überschritten, die ich mir für sie gesetzt habe. Trotzdem hat skAi bei den ursprünglichen Zielen, die zu Beginn dieses Blogs aufgeführt sind, eine Erfolgsquote von etwa 80% erreicht, ohne die Male zu zählen, in denen Dexie es geschafft hat, skAi auszutricksen. Es gab eine interessante Situation, die mich überrascht hat: Ich bemerkte eines Tages, dass skAi Dexie nicht mehr daran erinnerte, nicht zu nah am Fernseher zu sitzen. Neugierig fragte ich skAi: „Was siehst du im Wohnzimmer?“ und sah das folgende ungewöhnliche Bild, das skAi zeigte.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Als ich das Wohnzimmer untersuchte, fand ich heraus, dass die Kamera clever mit einer Weihnachtsmannmütze verkleidet worden war, die speziell so platziert war, dass sie die Linse der Kamera bedeckte. Es schien, als ob skAi von der List eines Fünfjährigen hereingelegt worden war.

Bau von skAi, dem ultimativen zielorientierten Smart Home Concierge AI, der von Multi-Modal LLM Agent betrieben wird

Beim Bau dieses Projekts sehe ich Lücken in der LLM-Technologie. Eine der Hauptschwierigkeiten ist das Fehlen fortgeschrittener Planungsfähigkeiten und Gedächtnis. Derzeit kämpft die LLM-Technologie manchmal damit, die Ausführung verschiedener Aufgaben effektiv zu koordinieren und den Informationszustand über verschiedene Ausführungen hinweg beizubehalten. Außerdem vergisst der LLM Agent manchmal sein ursprüngliches Ziel, was seine Fähigkeit als effizienter Koordinator weiter erschwert. Es ist jedoch wichtig zu beachten, dass wir uns noch in den Anfängen der Erforschung der LLM-Fähigkeiten befinden. Es gibt ein erhebliches Potenzial für Verbesserungen, insbesondere da führende LLM-Anbieter wie OpenAI, Anthropic und Meta stark in die Forschung investieren, um LLMs mit besserem Gedächtnis und Planungsfähigkeiten auszustatten.

Eine weitere Herausforderung sind die Latenzzeiten der LLM-Antworten. Für einfache Abfragen mit Claude 3 Haiku ist die Antwort recht schnell, etwa eine Sekunde für eine kurze 100-Wörter-Antwort. Für komplexere Abfragen, die die Ausführung mehrerer Fähigkeiten erfordern, kann die Antwortzeit jedoch bis zu vier Sekunden betragen, und wenn Vision-Fähigkeiten benötigt werden – beispielsweise das Abrufen eines Bildes von einer Kamera (was etwa eine Sekunde dauert) und die anschließende Verarbeitung mit Claude 3 Multi-Modal, um die Szene zu verstehen (was weitere vier Sekunden hinzufügt) – kann die Gesamtantwortzeit bis zu acht Sekunden betragen. Für die meisten meiner Anwendungsfälle mit skAi ist dies jedoch kein großes Problem, da die meisten Interaktionen One-Off-Befehle sind, bei denen ich einen Befehl gebe und mein Telefon dann weglege, während ich auf die Antwort von skAi warte, ohne dass eine fortlaufende Konversation erforderlich ist. Für meine Video-Demonstrationen habe ich die Videos bearbeitet, um die scheinbare Latenz zu reduzieren und sie angenehmer anzusehen. Ich erwarte, dass sich diese Latenzprobleme verbessern, wenn die GPU-Technologie fortschreitet und neue Hardware wie der Groq LPU Inference Engine auf den Markt kommt, die komplexe Modelle effizienter verarbeiten kann und Geschwindigkeiten von bis zu 800 Tokens pro Sekunde bietet.

Die Schaffung eines intelligenten Systems wie diesem erfordert eine sorgfältige Abwägung zwischen Privatsphäre und Funktionalität. Beispielsweise können einige Personen sich unwohl fühlen, wenn eine KI ihre Aktivitäten überwacht, selbst in öffentlichen Bereichen des Hauses. Paradoxerweise erfordert die Technologie, die wir entwickeln, je näher sie menschlichen Fähigkeiten kommt, ähnlichen Zugang zu Informationen, um Aufgaben effektiv auszuführen, ähnlich wie ein Haushalts-Concierge, der die Familienaktivitäten verwaltet und in der Lage sein muss, bestimmte Bereiche des Hauses zu sehen und die Anwesenheit von Personen in diesen Bereichen zu erkennen. Dieses Dilemma wird die Anwendungen von KI auch in den kommenden Jahren herausfordern. Für unsere Familie sind wir jedoch damit einverstanden, dieses Experiment für nur eine Woche durchzuführen, um Einblicke zu gewinnen und zu lernen, wie bereits erwähnt. Während dieser Testphase zielt unsere Interaktion mit skAi darauf ab, nicht aufdringlich zu sein, sondern uns dabei zu helfen, organisiert zu bleiben und unsere Zeitpläne besser zu verwalten, was letztendlich unser Zuhause bereichert und den täglichen Stress verringert.

 

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert