Interviews
Dr. Ram Sriharsha, VP of Engineering at Pinecone – Interview-Serie

Dr. Ram Sriharsha ist der VP of Engineering und R&D bei Pinecone.
Bevor er zu Pinecone kam, hatte Ram VP-Rollen bei Yahoo, Databricks und Splunk. Bei Yahoo war er sowohl Principal Software Engineer als auch Forschungswissenschaftler; bei Databricks war er der Produkt- und Engineering-Lead für die Unified Analytics-Plattform für Genomik; und in seinen drei Jahren bei Splunk hatte er mehrere Rollen, darunter Sr. Principal Scientist, VP Engineering und Distinguished Engineer.
Pinecone ist eine vollständig verwaltete Vektor-Datenbank, die es ermöglicht, Vektor-Suche in Produktionsanwendungen hinzuzufügen. Sie kombiniert Vektor-Suchbibliotheken, Funktionen wie Filterung und verteilte Infrastruktur, um hohe Leistung und Zuverlässigkeit in jedem Maßstab zu bieten.
Was hat Sie ursprünglich zur maschinellen Lerntheorie hingezogen?
Hohe dimensionale Statistik, Lerntheorie und Themen wie diese haben mich zur maschinellen Lerntheorie hingezogen. Sie sind mathematisch gut definiert, können begründet und haben einige grundlegende Erkenntnisse zu bieten, was Lernen bedeutet und wie man Algorithmen entwerfen kann, die effizient lernen können.
Zuvor waren Sie Vice President of Engineering bei Splunk, einer Datenplattform, die hilft, Daten in Aktionen für Observability, IT, Security und mehr umzuwandeln. Was waren einige Ihrer wichtigsten Erkenntnisse aus dieser Erfahrung?
Ich hatte nicht realisiert, bis ich zu Splunk kam, wie vielfältig die Anwendungsfälle in der Unternehmenssuche sind: Menschen verwenden Splunk für Log-Analytics, Observability und Sicherheitsanalytik unter anderem. Und was vielen dieser Anwendungsfälle gemeinsam ist, ist die Idee, ähnliche Ereignisse oder sehr unähnliche (oder anomale) Ereignisse in unstrukturierten Daten zu erkennen. Dies stellt sich als ein hartes Problem heraus, und traditionelle Suchmethoden sind nicht sehr skalierbar. Während meiner Zeit bei Splunk habe ich Forschung in diesen Bereichen initiiert, um zu sehen, wie wir maschinelle Lerntheorie (und Deep Learning) für Log-Mining, Sicherheitsanalytik usw. verwenden können. Durch diese Arbeit kam ich zu dem Schluss, dass Vektor-Einbettungen und Vektor-Suche grundlegende Primitiven für neue Ansätze in diesen Bereichen werden.
Können Sie uns erklären, was Vektor-Suche ist?
Bei traditioneller Suche (auch bekannt als Keyword-Suche) suchen Sie nach Keyword-Übereinstimmungen zwischen einer Abfrage und Dokumenten (dies kann Tweets, Webdokumente, Rechtsdokumente usw. sein). Um dies zu tun, teilen Sie Ihre Abfrage in ihre Token auf, rufen Sie Dokumente ab, die das gegebene Token enthalten, und mergen und rangieren Sie, um die relevantesten Dokumente für eine gegebene Abfrage zu bestimmen.
Das Hauptproblem ist natürlich, dass Sie für relevante Ergebnisse Keyword-Übereinstimmungen in den Dokumenten benötigen. Ein klassisches Problem bei traditioneller Suche ist: Wenn Sie nach “Pop” suchen, werden Sie “Pop-Musik” finden, aber nicht “Soda”, da es keine Keyword-Übereinstimmung zwischen “Pop” und Dokumenten mit “Soda” gibt, obwohl wir wissen, dass “Pop” in vielen Bereichen der USA dasselbe bedeutet wie “Soda”.
Bei Vektor-Suche beginnen Sie damit, sowohl Abfragen als auch Dokumente in einen Vektor in einem hochdimensionalen Raum umzuwandeln. Dies geschieht normalerweise, indem Sie den Text durch ein Deep-Learning-Modell wie OpenAI’s LLMs oder andere Sprachmodelle übergeben. Was Sie als Ergebnis erhalten, ist ein Array von Fließkommazahlen, das als Vektor in einem hochdimensionalen Raum betrachtet werden kann.
Die Kernidee ist, dass nahe Vektoren in diesem hochdimensionalen Raum auch semantisch ähnlich sind. Wenn wir auf unser Beispiel von “Soda” und “Pop” zurückkommen, ist es wahrscheinlich, dass das Modell “Pop” und “Soda” semantisch ähnlich betrachtet und die entsprechenden Einbettungen nahe beieinander im Einbettungsraum liegen. Wenn dies der Fall ist, dann wird die Suche nach nahegelegenen Dokumenten für eine gegebene Abfrage zum Problem der Suche nach den nächsten Nachbarn des entsprechenden Abfragevektors in diesem hochdimensionalen Raum.
Können Sie uns erklären, was eine Vektor-Datenbank ist und wie sie die Erstellung von Hochleistungs-Vektor-Suchanwendungen ermöglicht?
Eine Vektor-Datenbank speichert, indexiert und verwaltet diese Einbettungen (oder Vektoren). Die Hauptprobleme, die eine Vektor-Datenbank löst, sind:
- Erstellung eines effizienten Suchindex über Vektoren, um nächste Nachbarn-Abfragen zu beantworten
- Erstellung effizienter Hilfsindices und Datenstrukturen, um Abfrage-Filterung zu unterstützen. Zum Beispiel, wenn Sie nur über einen Teil des Korpus suchen möchten, sollten Sie in der Lage sein, den bestehenden Suchindex zu nutzen, ohne ihn neu aufbauen zu müssen
Unterstützung effizienter Updates und Aufrechterhaltung der Daten und des Suchindex, frisch, konsistent, dauerhaft usw.
Welche Arten von maschinellen Lernalgorithmen werden bei Pinecone verwendet?
Wir arbeiten in der Regel an approximativen nächstgelegenen Nachbarn-Suchalgorithmen und entwickeln neue Algorithmen für effizientes Update, Abfrage und Umgang mit großen Datenmengen in einer kosteneffektiven Weise.
Wir arbeiten auch an Algorithmen, die dichte und sparse Retrieval für verbesserte Suchrelevanz kombinieren.
Welche Herausforderungen gibt es beim Aufbau skalierbarer Suche?
Obwohl approximative nächstgelegene Nachbarn-Suche seit Jahrzehnten erforscht wird, glauben wir, dass noch viel unentdeckt bleibt.
Insbesondere bei der Gestaltung großer nächstgelegener Nachbarn-Suche, die kosteneffektiv ist, bei der effizienten Filterung im großen Maßstab oder bei der Gestaltung von Algorithmen, die hohe Volumina-Updates und allgemein frische Indizes unterstützen, sind alle herausfordernde Probleme heute.
Welche Arten von Anwendungsfällen kann diese Technologie verwendet werden?
Das Spektrum der Anwendungsfälle für Vektor-Datenbanken wächst täglich. Neben ihrer Verwendung in semantischer Suche sehen wir sie auch in Bildsuche, Bildabruf, generativer KI, Sicherheitsanalytik usw. verwendet.
Was ist Ihre Vision für die Zukunft der Suche?
Ich denke, die Zukunft der Suche wird von KI getrieben sein, und ich denke, das ist nicht sehr weit entfernt. In dieser Zukunft erwarte ich, dass Vektor-Datenbanken eine grundlegende Primitive sein werden. Wir denken gerne an Vektor-Datenbanken als das langfristige Gedächtnis (oder die externe Wissensbasis) von KI.
Vielen Dank für das großartige Interview, Leser, die mehr erfahren möchten, sollten Pinecone besuchen: Pinecone.












