Really-amin commited on
Commit
329231e
·
verified ·
1 Parent(s): 4ee09b5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -26
app.py CHANGED
@@ -1,33 +1,31 @@
1
- """
2
- این فایل یک سرور ساده Flask اجرا می‌کند که به فایل index.html متصل است.
3
- مدل GPT-2 از Hugging Face برای تولید پاسخ‌ها استفاده می‌شود.
4
- """
5
-
6
- from flask import Flask, request, jsonify, render_template
7
  from transformers import pipeline
8
 
9
- # بارگذاری مدل از Hugging Face
10
- generator = pipeline("text-generation", model="gpt2")
 
 
 
 
 
11
 
12
- # ایجاد برنامه Flask
13
- app = Flask(__name__)
14
 
15
- @app.route("/")
16
- def index():
17
- return render_template("index.html") # فایل index.html
18
 
19
- @app.route("/predict", methods=["POST"])
20
- def predict():
21
- data = request.get_json()
22
- user_message = data.get("message", "")
23
- if not user_message.strip():
24
- return jsonify({"reply": "لطفاً یک سوال وارد کنید!"})
25
 
26
- # تولید پاسخ با مدل
27
- response = generator(user_message, max_length=50, num_return_sequences=1)
28
- reply = response[0]["generated_text"]
29
- return jsonify({"reply": reply})
30
 
31
- # اجرای برنامه
32
- if __name__ == "__main__":
33
- app.run(debug=True, host="0.0.0.0", port=8000)
 
 
 
 
 
 
1
+ import streamlit as st
 
 
 
 
 
2
  from transformers import pipeline
3
 
4
+ # تنظیمات صفحه
5
+ st.set_page_config(page_title="دستیار هوش مصنوعی", page_icon="🧠", layout="wide")
6
+
7
+ # بارگذاری مدل
8
+ @st.cache_resource
9
+ def load_model():
10
+ return pipeline("text-generation", model="gpt2")
11
 
12
+ generator = load_model()
 
13
 
14
+ # ارائه رابط کاربری HTML
15
+ with open("index.html", "r", encoding="utf-8") as file:
16
+ html_content = file.read()
17
 
18
+ st.markdown(html_content, unsafe_allow_html=True)
 
 
 
 
 
19
 
20
+ # مدیریت درخواست‌های کاربر
21
+ if "messages" not in st.session_state:
22
+ st.session_state.messages = []
 
23
 
24
+ user_input = st.text_input("پیام خود را وارد کنید:")
25
+ if st.button("ارسال"):
26
+ if user_input:
27
+ # افزودن پیام کاربر
28
+ st.session_state.messages.append({"role": "user", "content": user_input})
29
+ response = generator(user_input, max_length=50, num_return_sequences=1)[0]["generated_text"]
30
+ # افزودن پاسخ مدل
31
+ st.session_state.messages.append({"role": "assistant", "content": response})