67Ayush87 commited on
Commit
6943317
·
verified ·
1 Parent(s): 0c366f9

Create machine_learning.py

Browse files
Files changed (1) hide show
  1. pages/machine_learning.py +75 -0
pages/machine_learning.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='Qwen/Qwen3-14B',
32
+ provider='nebius',
33
+ temperature=0.7,
34
+ max_new_tokens=150,
35
+ task='conversational'
36
+ )
37
+
38
+ deep_seek = ChatHuggingFace(
39
+ llm=deep_seek_skeleton,
40
+ repo_id='Qwen/Qwen3-14B',
41
+ provider='nebius',
42
+ temperature=0.7,
43
+ max_new_tokens=150,
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 machine learning 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 machine learning 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("---")