67Ayush87 commited on
Commit
daa716a
·
verified ·
1 Parent(s): cfb8f08

Create statistics.py

Browse files
Files changed (1) hide show
  1. pages/statistics.py +75 -0
pages/statistics.py ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import os
3
+ from langchain_huggingface import HuggingFaceEndpoint, ChatHuggingFace
4
+ from langchain_core.messages import HumanMessage, AIMessage, SystemMessage
5
+
6
+
7
+
8
+ hf = os.getenv('hf')
9
+ os.environ['HUGGINGFACEHUB_API_TOKEN'] = hf
10
+ os.environ['HF_TOKEN'] = hf
11
+ # --- Config ---
12
+ st.set_page_config(page_title="AI Mentor Chat", layout="centered")
13
+ st.title("🤖 AI Mentor Chat")
14
+
15
+ # --- Sidebar for selections ---
16
+ st.sidebar.title("Mentor Preferences")
17
+
18
+ exp1 = ['<1', '1', '2', '3', '4', '5', '5+']
19
+ exp = st.sidebar.selectbox("Select experience:", exp1)
20
+
21
+ # Map experience to label
22
+ experience_map = {
23
+ '<1': 'New bie mentor',
24
+ '1': '1', '2': '2', '3': '3', '4': '4', '5': '5',
25
+ '5+': 'Professional'
26
+ }
27
+ experience_label = experience_map[exp]
28
+
29
+ # --- Initialize Chat Model ---
30
+ deep_seek_skeleton = HuggingFaceEndpoint(
31
+ repo_id='THUDM/GLM-4-32B-0414',
32
+ provider='novita',
33
+ temperature=0.7,
34
+ max_new_tokens=110,
35
+ task='conversational'
36
+ )
37
+
38
+ deep_seek = ChatHuggingFace(
39
+ llm=deep_seek_skeleton,
40
+ repo_id='THUDM/GLM-4-32B-0414',
41
+ provider='novita',
42
+ temperature=0.7,
43
+ max_new_tokens=110,
44
+ task='conversational'
45
+ )
46
+
47
+ # --- Session State ---
48
+ if "chat_history" not in st.session_state:
49
+ st.session_state.chat_history = []
50
+
51
+ # --- Chat Form ---
52
+ with st.form(key="chat_form"):
53
+ user_input = st.text_input("Ask your question:")
54
+ submit = st.form_submit_button("Send")
55
+
56
+ # --- Chat Logic ---
57
+ if submit and user_input:
58
+ # Add system context
59
+ system_prompt = f"Act as a statistics mentor who has {experience_label} years of experience who teaches in a very friendly manner and also tells everything in within 150 words. If any question is asked other than statistics tell politely that this is out of the topic question"
60
+
61
+ # Create message list
62
+ messages = [SystemMessage(content=system_prompt), HumanMessage(content=user_input)]
63
+
64
+ # Get model response
65
+ result = deep_seek.invoke(messages)
66
+
67
+ # Append to history
68
+ st.session_state.chat_history.append((user_input, result.content))
69
+
70
+ # --- Display Chat History ---
71
+ st.subheader("🗨️ Chat History")
72
+ for i, (user, bot) in enumerate(st.session_state.chat_history):
73
+ st.markdown(f"**You:** {user}")
74
+ st.markdown(f"**Mentor:** {bot}")
75
+ st.markdown("---")