Uma demonstração de pesquisa semântica usando o banco de dados Vector Pinecone e o conjunto de dados MusicCaps do Google AI.
Passar pelo notebook init-pinecone-index.ipynb para
Notas:
YOUR_API_KEY YOUR_REGION API Keys no console do Pinecone. Há uma consulta de amostra no final do notebook. Substitua o valor query para experimentar a pesquisa semântica no conjunto de dados MusicCaps.
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' : '' } Você terá uma sensação para os resultados que leem o campo caption e observando a score . O ytid é o ID de vídeo do YouTube e start_s define o ponto de partida para o vídeo relevante.
streamlit run search-app.py 
Para executar o aplicativo de pesquisa, você precisará
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 Crie um arquivo de segredos em ~/.streamlit/secrets.toml e defina seu PINECONE_KEY e PINECONE_ENV
PINECONE_KEY = "..." streamlit run search-app.py 
Esse conjunto de dados pode ser um bom candidato para experimentar pesquisas híbridas ou usar a filtragem de metadados usando os valores no metadata aspect_list como palavras -chave.