import cohere import os import pinecone import pandas as pd import numpy as np from dotenv import dotenv_values env_name = "cred.env" config = dotenv_values(env_name) co = cohere.Client(config['cohere_api']) pinecone.init( api_key= config['pinecone_api'], environment= config['pinecone_env'] ) index = pinecone.Index(config['pinecone_index']) def embed_text(text): embeddings = co.embed( texts=[text], model='embed-english-v3.0', input_type='search_query' ) return embeddings def vector_search(desc): results = [] embeddings = co.embed( texts=[desc], model='embed-english-v3.0', input_type='search_query' ) res = index.query([embeddings.embeddings[0]], top_k=2, include_metadata=True) for match in res['matches']: results.append(match['metadata']['text']) return results def get_anime(res): data = pd.read_csv('mini_data.csv') df = pd.DataFrame() for desc in res: anime = data[data['description'] == desc] df = pd.concat([df, anime]) return df