Connect with us

Intervjuer

Dr. Ram Sriharsha, VP of Engineering at Pinecone – Intervju-serie

mm

Dr. Ram Sriharsha, er VP of Engineering and R&D at Pinecone.

Før han begynte hos Pinecone, hadde Ram VP-roller hos Yahoo, Databricks og Splunk. Hos Yahoo var han både hovedsoftwareingeniør og forskningsscientist; hos Databricks var han produkt- og ingeniørleder for det forente analytics-plattformen for genomics; og i hans tre år hos Splunk, hadde han flere roller, inkludert Sr Principal Scientist, VP Engineering og Distinguished Engineer.

Pinecone er en fullstendig administrert vektor-database som gjør det enkelt å legge til vektor-søk i produksjonsapplikasjoner. Den kombinerer vektor-søkebiblioteker, funksjoner som filtrering og distribuert infrastruktur for å gi høy ytelse og pålitelighet i enhver skala.

Hva var det som først tiltalte deg til maskinlæring?

Høydimensjonell statistikk, læringsteori og tema som dette var det som tiltalte meg til maskinlæring. De er matematisk godt definert, kan forstås og har noen grunnleggende insikt til å tilby på hva læring betyr, og hvordan man designer algoritmer som kan lære effektivt.

Tidligere var du Vice President of Engineering at Splunk, en data-plattform som hjelper å omdanne data til handling for Observability, IT, Sikkerhet og mer. Hva var noen av dine viktigste erfaringer fra denne opplevelsen?

Jeg hadde ikke realisert før jeg kom til Splunk hvor diverse brukstilfellene i bedriftssøk er: folk bruker Splunk for log-analyse, observability og sikkerhetsanalyse blant mange andre brukstilfeller. Og hva som er felles for mange av disse brukstilfellene er ideen om å detektere lignende hendelser eller høyt ulike (eller anomale) hendelser i ustrukturert data. Dette viser seg å være et hardt problem, og tradisjonelle måter å søke gjennom slik data på er ikke veldig skalerbare. Under min tid hos Splunk initierte jeg forskning omkring disse områdene på hvordan vi kunne bruke maskinlæring (og dyp læring) for log-mining, sikkerhetsanalyse osv. Gjennom dette arbeidet, kom jeg til å realisere at vektor-embeddings og vektor-søk ville ende opp med å være en grunnleggende primitiv for nye tilnærminger til disse domenene.

Kunne du beskrive for oss hva vektor-søk er?

I tradisjonell søk (også kjent som nøkkelordsøk), søker du etter nøkkelordsmatcher mellom en forespørsel og dokumenter (dette kan være tweets, webdokumenter, juridiske dokumenter osv.). For å gjøre dette, deler du opp forespørselen din i tokens, henter dokumenter som inneholder gitt token og slår sammen og rangerer for å bestemme de mest relevante dokumentene for en gitt forespørsel.

Hovedproblemet er selvfølgelig at for å få relevante resultater, må forespørselen din ha nøkkelordsmatcher i dokumentet. Et klassisk problem med tradisjonell søk er: hvis du søker etter “pop”, vil du matche “pop-musikk”, men vil ikke matche “brus” osv., fordi det ikke er noen nøkkelords-overlapp mellom “pop” og dokumenter som inneholder “brus”, selv om vi vet at i mange områder i USA, “pop” betyr det samme som “brus”.

I vektor-søk, begynner du med å konvertere både forespørsler og dokumenter til en vektor i et høydimentjonalt rom. Dette gjøres vanligvis ved å sende teksten gjennom en dyp læring-modell som OpenAI’s LLMs eller andre språkmodeller. Hva du får som resultat er en array av flyttall som kan tenkes som en vektor i et høydimentjonalt rom.

Kjerneideen er at nærliggende vektorer i dette høydimentjonale rommet også er semantisk like. Gå tilbake til vårt eksempel på “brus” og “pop”, hvis modellen er trent på riktig korpus, er det sannsynlig at den vil regne “pop” og “brus” som semantisk like og dermed vil tilhørende embeddings være nær hverandre i embeddings-rommet. Hvis det er tilfelle, så blir å hente nærliggende dokumenter for en gitt forespørsel problemet med å søke etter nærmeste naboer av den tilsvarende forespørselsvektoren i dette høydimentjonale rommet.

Kunne du beskrive hva en vektor-database er og hvordan den muliggjør bygging av høy-ytelses vektor-søke-applikasjoner?

En vektor-database lagrer, indexerer og håndterer disse embeddings (eller vektorer). De viktigste utfordringene en vektor-database løser er:

  • Bygging en effektiv søke-indeks over vektorer for å svare på nærmeste nabo-forespørsler
  • Bygging effektive hjelpe-indekser og datastrukturer for å støtte forespørsels-filtrering. For eksempel, hvis du ønsker å søke over bare en undergruppe av korpus, bør du kunne utnytte den eksisterende søke-indeksen uten å måtte bygge den på nytt

Støtte effektive oppdateringer og holde både data og søke-indeksen fersk, konsistent, varig osv.

Hva er de forskjellige typer maskinlærings-algoritmer som brukes hos Pinecone?

Vi arbeider generelt med approksimerte nærmeste nabo-søke-algoritmer og utvikler nye algoritmer for å effektivt oppdatere, spørre og ellers håndtere store mengder data på en så kostnadseffektiv måte som mulig.

Vi arbeider også med algoritmer som kombinerer tett og sparsom gjenfinning for å forbedre søke-relevans.

Hva er noen av utfordringene bak å bygge skalerbart søk?

Mens approksimert nærmeste nabo-søk har vært forsket i tiår, tror vi det er mye igjen å avdekke.

I særlig når det kommer til å designe stort skala nærmeste nabo-søk som er kostnadseffektivt, i å utføre effektiv filtrering i skala, eller i å designe algoritmer som støtter høy-volum oppdateringer og generelt ferske indekser er alle utfordrende problemer i dag.

Hva er noen av de forskjellige typer brukstilfellene som denne teknologien kan brukes for?

Spekteret av brukstilfeller for vektor-databaser vokser dag for dag. Bortsett fra dens bruk i semantisk søk, ser vi det også brukes i bilde-søk, bilde-gjenfinning, generativ AI, sikkerhetsanalyse osv.

Hva er din visjon for fremtiden av søk?

Jeg tror fremtiden av søk vil være AI-drevet, og jeg tror ikke dette er så langt unna. I den fremtiden, forventer jeg at vektor-databaser vil være en grunnleggende primitiv. Vi liker å tenke på vektor-databaser som det lange minnet (eller den eksterne kunnskapsbasen) til AI.

Takk for det flotte intervjuet, lesere som ønsker å lære mer bør besøke Pinecone.

Antoine er en visjonær leder og grunnleggende partner i Unite.AI, drevet av en urokkelig lidenskap for å forme og fremme fremtiden for AI og robotikk. En seriegründer, han tror at AI vil være like disruptiv for samfunnet som elektrisitet, og blir ofte tatt i å tale om potensialet for disruptiv teknologi og AGI.
Som en futurist, er han dedikert til å utforske hvordan disse innovasjonene vil forme vår verden. I tillegg er han grunnleggeren av Securities.io, en plattform som fokuserer på å investere i banebrytende teknologier som omdefinerer fremtiden og omformer hele sektorer.