Spaces:
Sleeping
Sleeping
File size: 2,191 Bytes
c1c4977 24d620f b6e1d0d 9e80ceb d943ab1 24d620f 9e80ceb d943ab1 819658d 7ed9b7b 9e80ceb d943ab1 ec395fa 442c909 cbd1365 ec395fa 9dfb04d d943ab1 82909b4 d943ab1 82909b4 d943ab1 82909b4 819658d 82909b4 fed0941 d943ab1 a2061b4 fed0941 9dfb04d d943ab1 fed0941 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | import os
import streamlit as st
from datasets import load_dataset
from huggingface_hub import InferenceClient
# Get the API key from the environment variable
api_key = os.getenv("HF_API_KEY")
client = InferenceClient(api_key=api_key)
# Inject custom CSS to change the background color to yellow
st.markdown(
"""
<style>
body {
background-color: yellow;
}
</style>
""",
unsafe_allow_html=True
)
st.title("Adrega AI Help")
include_context = st.checkbox('Search in Help')
if 'conversation' not in st.session_state:
st.session_state.conversation = ""
if 'include_context' not in st.session_state:
st.session_state.include_context = False
if include_context:
dataset = load_dataset("andreska/adregadocs", split="test")
# Function to read the content from the dataset
def read_dataset(dataset):
text = []
for item in dataset:
text.append(item['text'])
return "\n".join(text)
context = read_dataset(dataset)
else:
context = ""
def handle_submit():
user_input = st.session_state.user_input
if user_input:
if st.session_state.include_context:
messages = [
{"role": "system", "content": f"Context: {context}"},
{"role": "user", "content": user_input}
]
else:
messages = [
{"role": "user", "content": user_input}
]
completion = client.chat.completions.create(
model="Qwen/Qwen2.5-72B-Instruct",
#model="Qwen/Qwen2.5-Coder-32B-Instruct",
#model="HuggingFaceTB/SmolLM2-1.7B-Instruct",
messages=messages,
max_tokens=500
)
answer = completion.choices[0].message['content']
st.session_state.conversation += f"User: {user_input}\nAdrega AI: {answer}\n\n"
#st.write(f"Adrega AI: {answer}")
else:
st.write("Please enter a question.")
if st.button("Ask"):
handle_submit()
st.text_input('Ask me a question', key='user_input', on_change=handle_submit)
st.text_area("Conversation History", value=st.session_state.conversation, height=300, max_chars=None)
|