Spaces:
Build error
Build error
| import streamlit as st | |
| import numpy as np | |
| from PIL import Image | |
| import os | |
| from sentence_transformers import SentenceTransformer | |
| from langchain.vectorstores import Pinecone | |
| import pinecone | |
| from apikey import llmkey, vec_db | |
| import os | |
| #from langchain.llms import OpenAI | |
| #from langchain.llms import GooglePalm | |
| import google.generativeai as genai | |
| def get_text(prompt): | |
| vec_db() | |
| model = SentenceTransformer('all-MiniLM-L6-v2') | |
| input_em = model.encode(prompt).tolist() | |
| index=pinecone.Index('krishnaai') | |
| output=index.query(input_em,top_k=2,includeMetadata=True).to_dict() | |
| print(output['matches'][0]['metadata']['text']+output['matches'][1]['metadata']['text']) | |
| return output['matches'][0]['metadata']['text']+output['matches'][1]['metadata']['text'] | |
| def get_LLMop(prompt): | |
| os.environ["GEMINI_API_KEY"]=llmkey | |
| gemini_api_key = os.environ["GEMINI_API_KEY"] | |
| genai.configure(api_key = gemini_api_key) | |
| #llm=GooglePalm() | |
| model = genai.GenerativeModel('gemini-pro') | |
| #response = model.generate_content("Who is the GOAT in the Football?") | |
| ans=model.generate_content([get_text(prompt)+'use these text if possible use your own knowledge and guide me {prompt}. Answer me as you are Lord Krishna,answer should be very short,highly relavant and with a simple English']) | |
| return ans.text | |
| st.title("Krishna AI") | |
| image = Image.open('icon.png') | |
| image2 = Image.open('icon2.png') | |
| #message = st.chat_message(name='Krishna',avatar=image) | |
| with st.chat_message("Krishna",avatar=image): | |
| st.markdown("Hey Bhakth,how can I help you") | |
| if "messages" not in st.session_state: | |
| st.session_state.messages=[] | |
| for message in st.session_state.messages: | |
| with st.chat_message(message['role']): | |
| st.markdown(message['content']) | |
| prompt=st.chat_input('Ask me for moksha') | |
| if prompt: | |
| with st.chat_message("user",avatar=image2): | |
| st.markdown(prompt) | |
| st.session_state.messages.append({"role":"user","content":prompt}) | |
| response=get_LLMop(prompt) | |
| with st.chat_message("Krishna",avatar=image): | |
| st.markdown(response) | |
| st.session_state.messages.append({"role":"Krishna","content":response}) |