Sprechen Sie mit InfoQ über Baidus Open-Source-Hochleistungssuchmaschine Puck

Kürzlich kündigte Baidu die selbst entwickelte Open-Source-Suchmaschine Puck unter dem Apache 2.0-Protokoll an, die auch die erste Open-Source-Vektorsuchmaschine in China ist, die für sehr große Datensätze geeignet ist. Vektorabrufalgorithmen spielen eine wichtige Rolle in Anwendungsszenarien wie personalisierten Empfehlungssystemen, multimodalem Abruf und Verarbeitung natürlicher Sprache, insbesondere bei der Verarbeitung großer Datenmengen und hochdimensionaler Merkmalsdaten.

Der Name „Puck“ ist vom intellektuellen Helden Puck im klassischen MOBA-Spiel DOTA abgeleitet, der Eleganz und Beweglichkeit symbolisiert. Dieses Projekt wurde bei Baidu viele Jahre lang sorgfältig verfeinert, und beim BIGANN-Wettbewerb, dem weltweit ersten Vektor-Retrieval-Wettbewerb, der Ende 2021 von Nerulps veranstaltet wurde, gewannen alle vier Projekte, an denen Puck teilnahm, den ersten Platz. InfoQ interviewte Ben, Chefarchitekt der Baidu Search Content Technology-Abteilung, um den Entwicklungsverlauf und die Kernvorteile des Projekts zu verstehen.

Open-Source-Adresse: https://github.com/baidu/puck

InfoQ: Könnten Sie uns bitte Ihre Berufserfahrung und Ihre aktuellen Hauptaufgaben vorstellen?

Ben : Ich bin gleich nach meinem Abschluss zu Baidu gekommen. Ich habe zunächst in der mobilen Suchabteilung gearbeitet, war für grundlegende Such- und Relevanzarbeit verantwortlich und habe die rasante Entwicklung von Mobilgeräten miterlebt. Später half er als Gründungsmitglied beim Aufbau der Multi-Mode-Suchabteilung, die für die visuelle Suche zuständig war. Er gehörte zu den ersten Baidu-Mitarbeitern, die in den KI-Bereich einstiegen. Derzeit arbeitet er in der Abteilung Search Content Technology und ist für inhaltsbezogene Technologien verantwortlich, darunter Inhaltserfassung, Inhaltsverständnis, Inhaltsberechnung, Inhaltsverarbeitung und -generierung usw.

InfoQ: Wann haben Sie begonnen, sich mit Open Source zu befassen? Was hat Sie dazu bewogen, Puck als Open-Source-Lösung zu nutzen? Was ist der Grund, sich derzeit für Open Source zu entscheiden?

Ben : Wir haben schon lange über Open Source nachgedacht. Wir haben gesehen, dass FAISS (eine große Vektor-Retrieval-Bibliothek, die von Facebook AI Research entwickelt wurde) nach der Open-Source-Veröffentlichung große Aufmerksamkeit und Anwendungen in der Branche erhalten hat. Wir hoffen auch, dass Open Source verfügbar ist Quelle Puck kann die Entwicklung der Community fördern und die Kraft der Community nutzen, um die Codequalität zu verbessern, technologische Innovationen zu beschleunigen und sich besser an Marktanforderungen anzupassen. Der selbst erforschte Open-Source-Markt wird reifer und standardisierter, was möglicherweise mehr Geschäftsmodelle und Kooperationsmöglichkeiten mit sich bringt.

Wir haben uns eigentlich schon lange auf Open Source vorbereitet und viel Vorbereitungsarbeit geleistet. Die Explosion großer Modelle hat zu einer breiten Aufmerksamkeit für die Vektor-Retrieval-Technologie geführt. Wir glauben, dass dies eine geeignete Open-Source-Möglichkeit ist.

InfoQ: Können Sie konkret über die Entwicklungsgeschichte von Puck auf Baidu sprechen und wo liegt aus Ihrer Sicht sein Wert für die Baidu-Suche?

Ben : Die Idee zu Puck kam ursprünglich aus dem visuellen Suchgeschäft. Wir brauchten eine ANN-Engine, die den Abruf von zig Milliarden ähnlichen Bildern unterstützen und gleichzeitig Anforderungen wie hohen Durchsatz, geringe Latenz, hohe Genauigkeit und niedrige Anforderungen unterstützen kann Speicher und hohe Flexibilität. Zu dieser Zeit gab es in der Branche keine Engine, die unsere Anforderungen erfüllen konnte, also begannen wir mit der Selbstforschung.

Im Jahr 2017 wurde Puck zum ersten Mal auf den Markt gebracht und erzielte bei den zig Milliarden Bildern äußerst erhebliche Verbesserungen bei Kosten und Wirkung. Später, als das Transformer-Modell im NLP-Bereich glänzte, wurde die auf Einbettung basierende semantische Abfrage immer wertvoller , und Puck Auch die Anwendung von Puck wird immer weiter verbreitet. Im Jahr 2019 war Puck Open Source innerhalb von Baidu, und die Zahl der unterstützten Unternehmen ist schnell gewachsen. Es wurde häufig in mehreren internen Produktlinien wie der Baidu-Suche, Empfehlung, Netzwerkfestplatte und Wissensgraph, und die Unterstützungsskala hat eine Billion überschritten. . Gegenwärtig ist ANN zu einer der zugrunde liegenden Basistechnologien des Internets, zum Eckpfeiler der KI-Ära und zu einer der wichtigsten unterstützenden Technologien für die Suche geworden.

InfoQ: In diesem Zeitraum wurden mehrere Optimierungen vorgenommen. Was sind die Kernpunkte der Optimierung? Können Sie sie im Detail beschreiben?

Ben : Heute ist Puck ein Produkt, das über viele Jahre hinweg ausgefeilt wurde. Es gibt unzählige Optimierungen im Prozess. Generell kann man ihn in folgende Phasen einteilen:

  1. Von 2016 bis 2019 haben wir den Kernalgorithmus und die Implementierung verfeinert, wobei wir uns auf die grundlegende Leistungsoptimierung, die ständige Anpassung von Details und die endgültige Optimierung unserer eigenen Szenarien konzentriert haben. Das Kernframework von Puck wurde in dieser Zeit erstellt und wird noch heute verwendet.

  2. Von 2019 bis 2021, geprägt von Open Source im Unternehmen, mit der Zunahme des Geschäftszugriffs, muss sich Puck an verschiedene Anwendungsszenarien und Anforderungen anpassen. Benutzerfreundlichkeit, Skalierbarkeit und Funktionsvielfalt sind zu den Hauptzielen geworden, wie z. B. High- Leistung, Echtzeiteinfügung, Multi-Bedingungsabruf, verteilter Datenbankaufbau und andere Funktionen wurden in diesem Zeitraum abgeschlossen.

  3. Von 2021 bis 2022 wird Puck sich auf die Optimierung der Leistung bei Einzelinstanz-Ultra-Large-Data-Daten konzentrieren und dabei die Chance großer Content-Relational-Computing-Anwendungen nutzen und die Leistung bei milliardenschweren Datensätzen durch groß angelegte Daten erheblich verbessern und die Kosten senken. Skalenquantifizierung und Optimierung von Indexstrukturen. . Die Teilnahme am weltweit ersten Vektor-Retrieval-Wettbewerb BIGANN und der Gewinn von vier ersten Plätzen beweisen den Wettbewerbsvorteil von Puck in diesem Bereich.

  4. Seit 2022 wurde der Kernalgorithmus erneuert, neue Algorithmen zur Anpassung an verschiedene Datenszenarien vorgeschlagen, weitere Funktionen hinzugefügt und unterstützende Einrichtungen verbessert, um sich auf externe Open Source vorzubereiten.

Dies ist nur eine grobe Einteilung. Tatsächlich besteht die Optimierung von Puck eher aus vielen kleinen Optimierungspunkten. Während der Diskussion kamen wir auf viele interessante Ideen und experimentierten viel. Insgesamt werden nur ein oder zwei von zehn Ideen zu offiziellen Features. Diese Optimierungen fügten sich schließlich zusammen und bildeten den Puck, den wir heute sehen.

InfoQ: Können Sie die Kernvorteile und Anwendungsszenarien von Puck im Detail vorstellen?

Ben : Das Open-Source-Projekt Puck umfasst zwei von Baidu selbst entwickelte Suchalgorithmen und eine Reihe zusätzlicher Funktionen. Der Hauptvorteil ist in erster Linie die Leistung. Nach Jahren des Polierens und Optimierens wurden Benchmark-Daten von mehreren zehn Millionen, Milliarden erreicht. Milliarden usw. Am Set hat Puck offensichtliche Leistungsvorteile und übertrifft Konkurrenzprodukte deutlich. Beim BIGANN-Wettbewerb, dem weltweit ersten Vektor-Retrieval-Wettbewerb von Nerulps Ende 2021, gewann Puck in allen vier Projekten, an denen es teilnahm, den ersten Platz .

Zweitens bietet Puck im Hinblick auf die Benutzerfreundlichkeit eine Reihe von Funktionen, die für verschiedene Szenarien geeignet sind. Beispielsweise bietet es auch einen benutzerfreundlichen API-Zugriff und stellt so wenige Parameter wie möglich bereit. Die meisten Parameter können durch die Verwendung von Standardeinstellungen eine gute Leistung erzielen Einstellungen. .

Schließlich ist Puck eine bewährte Engine. Nach Jahren der Verifizierung und Verfeinerung in tatsächlichen Großszenarien wird sie in mehr als 30 Produktlinien innerhalb von Baidu weit verbreitet, einschließlich Suche und Empfehlung, und unterstützt Billionen indizierter Daten und umfangreiche Suchvorgänge Anfragen. , mit einer sehr hohen Zuverlässigkeitsgarantie.

Die Puck-Engine verfügt über zwei Open-Source-Abrufalgorithmen, Puck und Tinker, die sich besser für sehr große Datensätze bzw. kleine und mittlere Datensätze eignen und fast die meisten Abrufanwendungsszenarien abdecken können. Es wird häufig in Baidus internen Such-, Empfehlungs- und anderen Produktlinien eingesetzt und deckt Datenmengen von einer Million bis zu einer Billion ab.

InfoQ: Angesichts der neuen KI-Welle werden große Modelle in der Branche immer beliebter. Wird Ihrer Meinung nach der Open-Source-Markt in Zukunft immer beliebter?

Ben : Das Aufkommen großer KI-Modelle hat den Wettbewerb in der Branche zwar verschärft, aber das ist keine schlechte Sache. Erstens hat die Entwicklung großer Modelle den Fortschritt der KI-Technologie gefördert und die Leistung und Effizienz der KI verbessert. Zweitens bringen große Modelle der Branche mehr Innovationsraum und -möglichkeiten und fördern die Entwicklung des Open-Source-Marktes.

In Zukunft wird der Wettbewerb auf dem von der Branche selbst entwickelten Open-Source-Markt intensiver, was jedoch nicht bedeutet, dass er komplizierter wird, sondern im Gegenteil unbegrenzte Möglichkeiten mit sich bringt. Da die Merkmale des Open-Source-Marktes Offenheit und Austausch sind, können Unternehmen und Einzelpersonen die neuesten KI-Technologien und -Modelle über den Open-Source-Markt beziehen, ohne sie von Grund auf neu entwickeln zu müssen. Dies hilft der gesamten Branche, die F&E-Kosten zu senken und die F&E-Effizienz zu verbessern.

Darüber hinaus ist der Open-Source-Markt auch eine Plattform für technischen Austausch und Innovation, auf der Branchenvertreter ihre Forschungsergebnisse teilen, Erfahrungen und Wissen anderer aufnehmen und gemeinsam die Entwicklung der KI-Technologie vorantreiben können. Auch wenn der Wettbewerb intensiver wird, können wir davon profitieren, solange wir uns an diesen Trend anpassen und uns aktiv an Kommunikation und Innovation beteiligen.

InfoQ: Wie wird Ihrer Meinung nach der zukünftige Entwicklungstrend von Open-Source-Projekten von Internetunternehmen aussehen? In welche Richtung wird es sich entwickeln?

Ben :

  1. Tiefe Spezialisierung: Mit der Unterteilung der Technologie werden Open-Source-Projekte möglicherweise spezialisierter und tiefgreifender und lösen spezifischere und tiefgreifendere Probleme. Es wird mehr Open-Source-Projekte geben, die sich immer auf ein bestimmtes Problem konzentrieren. Puck ist eines davon sie. .

  2. Diversifizierung: Die von Internetunternehmen entwickelten Open-Source-Projekte können mehr Branchen und Bereiche umfassen, eine grenzüberschreitende Integration von Technologie realisieren und Open-Source-Projekte für verschiedene Branchenlösungen bilden. Diese grenzüberschreitende Integration wird dazu beitragen, die Anwendung von Technologie in verschiedenen Branchen zu fördern . Breites Anwendungsspektrum in der Industrie.

  3. Größere Praktikabilität: Zukünftige Open-Source-Projekte konzentrieren sich möglicherweise mehr auf den tatsächlichen Kampf und die Anwendung als nur auf theoretische Forschung. Open-Source-Projekte werden mehr praktische Tools und Frameworks bereitstellen, um Entwicklern dabei zu helfen, die Theorie besser auf die praktische Arbeit anzuwenden.

  4. Konzentrieren Sie sich auf die Open Source von Daten und Algorithmen: Da die Bedeutung von Daten und Algorithmen immer wichtiger wird, könnten in Zukunft mehr Daten und Algorithmen Open Source sein, um die Entwicklung von KI und anderen Bereichen zu beschleunigen.

Diese Veränderungen werden stärkere Impulse zur Förderung der technologischen Entwicklung und zur Lösung praktischer Probleme geben.

InfoQ: Sie haben erwähnt, dass Puck intern häufig verwendet wird. Gibt es Produkte oder Szenarien, mit denen jeder vertraut ist? Kannst du mir ein Beispiel geben?

Ben : Die bekannte Baidu-Suche und die Informationsflussempfehlungen im mobilen Baidu nutzen beide die Puck-Technologie.

InfoQ: Haben Sie nach Open Source Feedback von der Community erhalten? Welche Inspiration hat es Ihnen gegeben?

Ben : Da Puck Open Source war, haben wir viel Feedback und Vorschläge von der Community erhalten. Dieses Feedback und diese Vorschläge sind für uns sehr wertvoll. Sie helfen uns nicht nur, einige Probleme und Mängel von Puck zu entdecken, sondern geben uns auch Hinweise zur Verbesserung und Optimierung.

Für mich persönlich hat dieses Feedback mich zu der Erkenntnis inspiriert, dass wir, obwohl wir über umfangreiche Erfahrungen mit der internen Verwendung von Puck verfügen, dennoch weiter lernen und uns verbessern müssen, wenn wir einer größeren Benutzergruppe gegenüberstehen. Die Bedürfnisse jedes Benutzers können unterschiedlich sein. Wir müssen die Bedürfnisse der Benutzer besser verstehen, um Puck besser zu optimieren und es für verschiedene Nutzungsszenarien besser geeignet zu machen.

Gleichzeitig ließen mich diese Rückmeldungen auch die Vitalität und den Innovationsgeist der Open-Source-Community tief spüren. Mich inspiriert der Geist des Engagements und des Beitrags, den viele Community-Mitglieder nicht nur gestellt haben, sondern auch aktiv Lösungen angeboten haben. Ich hoffe, dass wir in Zukunft enger mit der Community zusammenarbeiten können, um gemeinsam die Entwicklung von Puck voranzutreiben.

InfoQ: Was bedeutet Puck für Sie persönlich und welche Erwartungen haben Sie an die Zukunft von Puck?

Ben : Puck ist das Ergebnis langjähriger Forschung und harter Arbeit des Teams. Als Verantwortlicher von Puck empfinde ich eine tiefe Liebe und Beharrlichkeit für dieses Projekt. Für mich persönlich ist es nicht nur eine Suchmaschine, sondern ein Beitrag im Namen des Teams. Es ist die Kristallisation unserer harten Arbeit und Weisheit. Es ist unser Streben nach Technologie, unsere Beharrlichkeit bei Innovationen sowie unsere Erwartungen und Visionen für die Zukunft. Jede Aktualisierung und Optimierung von Puck dokumentiert unser Wachstum und Fortschritt.

Ich habe hohe Erwartungen an Pucks Zukunft. Zunächst einmal hoffe ich, dass Puck in der Entwickler-Community weit verbreitet ist und auch Feedback von der Community zur kontinuierlichen Optimierung und Verbesserung erhält. Ich freue mich darauf, dass sich mehr Menschen an der Entwicklung und Nutzung von Puck beteiligen. Durch die gemeinsamen Anstrengungen aller wird Puck zu einem einflussreichen Werkzeug im KI-Bereich werden. Zweitens hoffe ich, dass Puck weiterhin Innovationen und Optimierungen vorantreiben, seine Technologieführerschaft behaupten und sich nicht nur an bestehende technologische Anforderungen anpassen, sondern auch zukünftige technologische Trends vorhersehen und anführen kann. Abschließend hoffe ich, dass Puck seinen Wert in praktischeren Anwendungen entfalten, die Anwendung künstlicher Intelligenz in verschiedenen Branchen stark unterstützen und die Entwicklung von Wissenschaft und Technologie fördern kann.

Vorstellung der Interviewgäste :

Ben , Chefarchitekt der Baidu Search Content Technology-Abteilung, ist verantwortlich für das multimodale Inhaltsverständnis, die Berechnung von Inhaltsbeziehungen im großen Maßstab, die Inhaltsverarbeitung und -generierung, die Modelloptimierung und andere Richtungen.

Willkommen in der technischen Austauschgruppe von Punk : 913964818

Die Abteilung rekrutiert aktiv für mehrere Positionen, darunter ANN-Retrieval-Ingenieure, Modelloptimierungs-Ingenieure, F&E-Ingenieure für verteiltes Computing usw. Talente, die bereit sind, Herausforderungen anzunehmen und über ausgezeichnete Problemanalyse- und Problemlösungsfähigkeiten verfügen, sind herzlich willkommen, sich anzuschließen ~

Rekrutierungs-E-Mail: [email protected]

--ENDE--

Literatur-Empfehlungen

Eine kurze Diskussion über die Szenariotechnologie der Suchpräsentationsschicht und die tanGo-Praxis

Erste Einführung in die Suche: Die erste Lektion des Baidu-Suchproduktmanagers

Anwendung intelligenter Frage- und Antworttechnologie in der Baidu-Suche

Unterstützen Sie die Praxis der OC-Code-Rekonstruktion durch Python-Skript (1): Modulaufruf-Beziehungsanalyse

CVPR2023 Hervorragendes Papier | Analyse des Problems der mangelnden Generalisierung im AIGC-Algorithmus zur Bildidentifizierung von Fälschungen

Alibaba Cloud erlitt einen schwerwiegenden Ausfall und alle Produkte waren betroffen (wiederhergestellt). Tumblr hat das russische Betriebssystem Aurora OS 5.0 abgekühlt . Neue Benutzeroberfläche vorgestellt : Delphi 12 & C++ Builder 12, RAD Studio 12. Viele Internetunternehmen stellen dringend Hongmeng-Programmierer ein. UNIX-Zeit steht kurz vor dem Eintritt in die 1,7-Milliarden-Ära (bereits eingetreten). Meituan rekrutiert Truppen und plant die Entwicklung der Hongmeng-System-App. Amazon entwickelt ein Linux-basiertes Betriebssystem, um die Abhängigkeit von Android von .NET 8 unter Linux zu beseitigen. Die unabhängige Größe ist um 50 % reduziert. FFmpeg 6.1 „Heaviside“ ist erschienen
{{o.name}}
{{m.name}}

Je suppose que tu aimes

Origine my.oschina.net/u/4939618/blog/10140186
conseillé
Classement