Eine Demonstration der semantischen Suche mithilfe des Vector Database Pinecone und des MusicCaps -Datensatzes von Google AI.
Durch das Notizbuch init-pinecone-Index.ipynb auf
Anmerkungen:
YOUR_API_KEY und YOUR_REGION durch die von der Registerkarte "API -Schlüssel in der Pinecone -Konsole angezeigten Werte ersetzen. Am Ende des Notizbuchs befindet sich eine Beispielabfrage. Ersetzen Sie den query und experimentieren Sie mit semantischer Suche über den MusicCaps -Datensatz.
query = 'lively eastern european folk music with strings outdoors'
search_pinecone ( query ){ 'matches' : [{ 'id' : '5327' ,
'metadata' : { 'aspect_list' : "['romanian folk music', 'live "
"performance', 'instrumental', "
"'accordion', 'upright bass', "
"'acoustic guitar', 'percussion', "
"'fiddle', 'lively', 'upbeat', "
"'joyful']" ,
'audioset_positive_labels' : '/m/0mkg' ,
'author_id' : 9.0 ,
'caption' : 'This is the live performance of a '
'Romanian folk music piece. It is '
'instrumental. There is an accordion '
'playing the leading melody while the '
'fiddle, acoustic guitar and the upright '
'bass play in the background. There is a '
'percussive element in the rhythmic '
'background. The atmosphere is lively '
'and joyful.' ,
'end_s' : 30.0 ,
'is_audioset_eval' : False ,
'is_balanced_subset' : False ,
'start_s' : 20.0 ,
'ytid' : 'xR2p3UED4VU' },
'score' : 0.658422887 ,
'values' : []},
...
],
'namespace' : '' } Sie werden ein Gefühl für die Ergebnisse bekommen, die das caption lesen und die score bemerken. Die ytid ist die YouTube -Video -ID und start_s definiert den Ausgangspunkt für das relevante Video.
streamlit run search-app.py 
Um die Such -App auszuführen, müssen Sie
git clone https://github.com/ben-ogden/musiccaps.git
cd musiccaps
pipenv shell
pipenv install pinecone-client streamlit
streamlit version
...
Streamlit, version 1.22.0 Erstellen Sie eine Secrets -Datei in ~/.streamLit/ PINECONE_KEY und PINECONE_ENV
PINECONE_KEY = "..." streamlit run search-app.py 
Dieser Datensatz könnte ein guter Kandidat für das Experimentieren mit Hybridsuche oder Verwendung aspect_list metadata Schlüsselwörter sein.