teoo33 commited on
Commit
9e84dcc
·
verified ·
1 Parent(s): dc185ff

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -3
app.py CHANGED
@@ -19,6 +19,8 @@ logger = logging.getLogger(__name__)
19
  gemini_api_key = os.environ.get('GEMINI_API_KEY')
20
  if not gemini_api_key:
21
  raise ValueError("GOOGLE_API_KEY پیدا نشد. لطفاً آن را در تنظیمات Space تنظیم کنید.")
 
 
22
  genai.configure(api_key=gemini_api_key)
23
 
24
  # تست اتصال به Gemini
@@ -67,7 +69,7 @@ def upload_and_process_pdf(pdf_files):
67
  def create_vector_db(docs):
68
  if not docs:
69
  return None, "هیچ محتوایی پردازش نشد."
70
- embeddings = GoogleGenerativeAIEmbeddings(model="models/embedding-001")
71
  try:
72
  logger.info("شروع ساخت FAISS بدون کش...")
73
  vector_store = FAISS.from_documents(docs, embedding=embeddings)
@@ -77,7 +79,13 @@ def create_vector_db(docs):
77
  return None, f"خطا در پردازش وکتوری: {str(e)}"
78
  return vector_store, None
79
 
80
- llm_gemini = ChatGoogleGenerativeAI(model="gemini-pro", convert_system_message_to_human=True, temperature=0.5)
 
 
 
 
 
 
81
 
82
  academic_analysis_prompt_template = """شما یک تحلیلگر آکادمیک حرفه‌ای و متخصص در بررسی پایان‌نامه‌های علمی هستید. وظیفه شما ارائه تحلیلی عمیق، دقیق و ساختارمند بر اساس محتوای ارائه‌شده است. پاسخ شما باید:
83
  1. صرفاً بر اساس اطلاعات موجود در متن‌های مرتبط باشد.
@@ -123,7 +131,6 @@ def create_conversation_chain(vector_store, docs, answer_source, language, detai
123
 
124
  def academic_chatbot(pdf_file, answer_source, query, language, detail_level):
125
  start_time = time.time()
126
- # خط اصلاح‌شده
127
  logger.info(f"شروع پردازش - منبع: {answer_source}, سوال: {query}, زبان: {language}, جزئیات: {detail_level}")
128
 
129
  if len(query) > 500:
@@ -193,3 +200,4 @@ iface = gr.Interface(
193
 
194
  if __name__ == "__main__":
195
  iface.launch()
 
 
19
  gemini_api_key = os.environ.get('GEMINI_API_KEY')
20
  if not gemini_api_key:
21
  raise ValueError("GOOGLE_API_KEY پیدا نشد. لطفاً آن را در تنظیمات Space تنظیم کنید.")
22
+
23
+ # تنظیم مستقیم API Key برای genai
24
  genai.configure(api_key=gemini_api_key)
25
 
26
  # تست اتصال به Gemini
 
69
  def create_vector_db(docs):
70
  if not docs:
71
  return None, "هیچ محتوایی پردازش نشد."
72
+ embeddings = GoogleGenerativeAIEmbeddings(model="models/embedding-001", google_api_key=gemini_api_key)
73
  try:
74
  logger.info("شروع ساخت FAISS بدون کش...")
75
  vector_store = FAISS.from_documents(docs, embedding=embeddings)
 
79
  return None, f"خطا در پردازش وکتوری: {str(e)}"
80
  return vector_store, None
81
 
82
+ # تنظیم LLM با API Key مستقیم
83
+ llm_gemini = ChatGoogleGenerativeAI(
84
+ model="gemini-pro",
85
+ google_api_key=gemini_api_key, # مستقیم API Key رو می‌دیم
86
+ convert_system_message_to_human=True,
87
+ temperature=0.5
88
+ )
89
 
90
  academic_analysis_prompt_template = """شما یک تحلیلگر آکادمیک حرفه‌ای و متخصص در بررسی پایان‌نامه‌های علمی هستید. وظیفه شما ارائه تحلیلی عمیق، دقیق و ساختارمند بر اساس محتوای ارائه‌شده است. پاسخ شما باید:
91
  1. صرفاً بر اساس اطلاعات موجود در متن‌های مرتبط باشد.
 
131
 
132
  def academic_chatbot(pdf_file, answer_source, query, language, detail_level):
133
  start_time = time.time()
 
134
  logger.info(f"شروع پردازش - منبع: {answer_source}, سوال: {query}, زبان: {language}, جزئیات: {detail_level}")
135
 
136
  if len(query) > 500:
 
200
 
201
  if __name__ == "__main__":
202
  iface.launch()
203
+