inmind/DSlogic
0
1from sentence_transformers import SentenceTransformer2import pinecone3import streamlit as st4from langchain_community.vectorstores import Qdrant5from qdrant_client import QdrantClient6model = SentenceTransformer('all-MiniLM-L6-v2')7 8# pinecone.init(api_key='', environment='us-east-1-aws')9# index = pinecone.Index('langchain-chatbot')10 11import os12 13# Access Qdrant API information14api_key_qdrant = os.environ['QDRANT_API_KEY']15url_qdrant = os.environ['QDRANT_URL']16 17qdrant_client = QdrantClient(18 url=url_qdrant, 19 api_key=api_key_qdrant,20)21 22 23collection_name = "dslogic"24def find_match(input):25 input_em = model.encode(input).tolist()26 results = qdrant_client.search(collection_name=collection_name, query_vector=input_em, limit=2, with_payload=True)27 return "\n".join(point.payload['page_content'] for point in results)28 29# def query_refiner(conversation, query):30 31# response = openai.Completion.create(32# model="text-davinci-003",33# prompt=f"Given the following user query and conversation log, formulate a question that would be the most relevant to provide the user with an answer from a knowledge base.\n\nCONVERSATION LOG: \n{conversation}\n\nQuery: {query}\n\nRefined Query:",34# temperature=0.7,35# max_tokens=256,36# top_p=1,37# frequency_penalty=0,38# presence_penalty=039# )40# return response['choices'][0]['text']41 42def get_conversation_string():43 conversation_string = ""44 for i in range(len(st.session_state['responses'])-1):45 46 conversation_string += "Human: "+st.session_state['requests'][i] + "\n"47 conversation_string += "Bot: "+ st.session_state['responses'][i+1] + "\n"48 return conversation_string