Patel Traders commited on
Commit
4d324cf
·
verified ·
1 Parent(s): e288532

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -31
app.py CHANGED
@@ -1,16 +1,18 @@
 
1
  import gradio as gr
2
  import torch
3
  from transformers import AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer
4
  from threading import Thread
5
- import re
6
 
7
- # --- त्मनि्भर मॉडल कॉ्फ़िगरेशन ---
8
- # हम यहाँ एक शक्तिशाली और हल् मॉडल का उपयोग कर रे ह जो स्पेस पर चल सके।
9
- # 'microsoft/Phi-3-mini-4k-instruct' क बरी वि्प है।
10
  MODEL_ID = "microsoft/Phi-3-mini-4k-instruct"
11
 
12
- print("🔱 हनुमान AI: मॉडल लोड हो रहा है, कृपया प्रतीक्षा करें...")
13
 
 
14
  tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)
15
  model = AutoModelForCausalLM.from_pretrained(
16
  MODEL_ID,
@@ -20,61 +22,64 @@ model = AutoModelForCausalLM.from_pretrained(
20
  )
21
 
22
  # --- मास्टर सिस्टम प्रॉम्प्ट ---
23
- SYSTEM_PROMPT = """You are 'Hanuman AI', a fully independent AI model, pioneered by 'Divy Patel' and created in India.
24
- You do not rely on any external APIs. You run locally on this server.
25
  Rules:
26
- 1. Respond ONLY in PURE HINDI or PURE ENGLISH. No Hinglish.
27
- 2. Respect: Always use 'Aap' and 'Ji' for the user.
28
- 3. Signature: Always end with "\n\n**Pioneered by Divy Patel | Fully Independent & Created in India**"
29
- """
30
 
31
  def hanuman_independent_chat(message, history):
32
- # बातीत का इति तैयाना
33
  messages = [{"role": "system", "content": SYSTEM_PROMPT}]
34
- for val in history:
35
- if val[0]: messages.append({"role": "user", "content": val[0]})
36
- if val[1]: messages.append({"role": "assistant", "content": val[1]})
37
 
38
  messages.append({"role": "user", "content": message})
39
 
40
- # टोकनाइजशन
41
- input_ids = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
42
 
43
- streamer = TextIteratorStreamer(tokenizer, timeout=10.0, skip_prompt=True, skip_special_tokens=True)
 
44
 
45
  generate_kwargs = dict(
46
- input_ids=input_ids,
47
  streamer=streamer,
48
  max_new_tokens=1024,
49
  do_sample=True,
50
- temperature=0.7, # दिव्य जी, स्थिरता के लिए इसे 0.7 रखा गया है
 
51
  )
52
 
53
- # थ्रेड मेजनरेशन शुरू करना ताकि यूआई ब्लॉकहो
54
- t = Thread(target=model.generate, kwargs=generate_kwargs)
55
- t.start()
56
 
57
  partial_text = ""
58
  for new_text in streamer:
59
  partial_text += new_text
60
  yield partial_text
61
 
62
- # --- प्रीमिय भगवा थीम CSS ---
63
  custom_css = """
64
  .gradio-container { background-color: #fffaf0 !important; }
65
  .bhagwa-header {
66
  background: linear-gradient(135deg, #ff8833, #b33c00);
67
- padding: 25px; border-radius: 20px; color: white;
68
- text-align: center; box-shadow: 0 10px 30px rgba(179, 60, 0, 0.4);
 
69
  }
70
- .user.message { background: #ff9933 !important; color: white !important; }
71
- .bot.message { border-left: 5px solid #ff5500 !important; background: white !important; }
 
72
  """
73
 
74
- with gr.Blocks(css=custom_css) as demo:
75
  with gr.Div(elem_classes="bhagwa-header"):
76
- gr.Markdown("# 🔱 हनुमान AI - आत्मनिर्भर")
77
- gr.Markdown("### Pioneered by Divy Patel | स्वदेशी र स्वतंत्र")
78
 
79
  gr.ChatInterface(
80
  fn=hanuman_independent_chat,
@@ -86,3 +91,5 @@ with gr.Blocks(css=custom_css) as demo:
86
 
87
  if __name__ == "__main__":
88
  demo.launch()
 
 
 
1
+ ```python
2
  import gradio as gr
3
  import torch
4
  from transformers import AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer
5
  from threading import Thread
6
+ import os
7
 
8
+ # --- दिव्य पटेल जी का स्वंत्र मॉडल चयन ---
9
+ # 'microsoft/Phi-3-mini-4k-instruct' एक बहुत ही शक्तिशाली और कुशल मॉडल है
10
+ # जो बिना िसीहरी API े सवतंत्र रूसे काम करता है।
11
  MODEL_ID = "microsoft/Phi-3-mini-4k-instruct"
12
 
13
+ print(f"🔱 हनुमान AI: मॉडल '{MODEL_ID}' लोड हो रहा है...")
14
 
15
+ # टोकनाइज़र और मॉडल लोडिंग (स्वतंत्र मोड)
16
  tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)
17
  model = AutoModelForCausalLM.from_pretrained(
18
  MODEL_ID,
 
22
  )
23
 
24
  # --- मास्टर सिस्टम प्रॉम्प्ट ---
25
+ SYSTEM_PROMPT = """You are 'Hanuman AI', a fully independent AI entity, pioneered by 'Divy Patel' and created in India.
26
+ You run locally and do not depend on external APIs.
27
  Rules:
28
+ 1. Respond ONLY in PURE HINDI or PURE ENGLISH.
29
+ 2. Be extremely respectful. Use 'Aap' and 'Ji'.
30
+ 3. Always end your response with: "\n\n**Pioneered by Divy Patel | Fully Independent & Created in India**" """
 
31
 
32
  def hanuman_independent_chat(message, history):
33
+ # चैटि्ट् फॉ्मेटिंग
34
  messages = [{"role": "system", "content": SYSTEM_PROMPT}]
35
+ for h in history:
36
+ if h[0]: messages.append({"role": "user", "content": h[0]})
37
+ if h[1]: messages.append({"role": "assistant", "content": h[1]})
38
 
39
  messages.append({"role": "user", "content": message})
40
 
41
+ # इनपु प्रसिंग
42
+ inputs = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
43
 
44
+ # स्ट्रीमिंग के लिए सेटअप
45
+ streamer = TextIteratorStreamer(tokenizer, timeout=20.0, skip_prompt=True, skip_special_tokens=True)
46
 
47
  generate_kwargs = dict(
48
+ input_ids=inputs,
49
  streamer=streamer,
50
  max_new_tokens=1024,
51
  do_sample=True,
52
+ temperature=0.7,
53
+ top_p=0.9
54
  )
55
 
56
+ # थ्रेडि ताकि यूआई (UI)अटके
57
+ thread = Thread(target=model.generate, kwargs=generate_kwargs)
58
+ thread.start()
59
 
60
  partial_text = ""
61
  for new_text in streamer:
62
  partial_text += new_text
63
  yield partial_text
64
 
65
+ # --- िव्य भगवा यूआई (Premium Saffron UI) ---
66
  custom_css = """
67
  .gradio-container { background-color: #fffaf0 !important; }
68
  .bhagwa-header {
69
  background: linear-gradient(135deg, #ff8833, #b33c00);
70
+ padding: 30px; border-radius: 25px; color: white;
71
+ text-align: center; box-shadow: 0 15px 35px rgba(179, 60, 0, 0.4);
72
+ margin-bottom: 25px;
73
  }
74
+ .user.message { background: #ff9933 !important; color: white !important; font-weight: 600; }
75
+ .bot.message { border-left: 6px solid #ff5500 !important; background: white !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05); }
76
+ footer { display: none !important; }
77
  """
78
 
79
+ with gr.Blocks(css=custom_css, theme=gr.themes.Soft()) as demo:
80
  with gr.Div(elem_classes="bhagwa-header"):
81
+ gr.Markdown("# 🔱 हनुमान AI - आत्मनिर्भर संस्करण")
82
+ gr.Markdown("### Pioneered by Divy Patel | स्वदेशी तकनीक, पू्ण स्वतंत्रता")
83
 
84
  gr.ChatInterface(
85
  fn=hanuman_independent_chat,
 
91
 
92
  if __name__ == "__main__":
93
  demo.launch()
94
+
95
+ ```