Paulwalker4884 commited on
Commit
889f60f
·
1 Parent(s): 5f5d374

Initial commit

Browse files
Files changed (1) hide show
  1. app.py +14 -18
app.py CHANGED
@@ -9,19 +9,16 @@ from openai import OpenAI
9
  logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
10
  logger = logging.getLogger(__name__)
11
 
12
- # تنظیم API Key
13
  logger.info("Starting application setup")
14
- qwen_api_key = os.getenv("QWEN_API_KEY")
15
- if not qwen_api_key:
16
- logger.warning("QWEN_API_KEY not found in environment variables")
17
- # اگه API Key نباشه، ادامه بده ولی خطا نده
18
  client = None
19
  else:
20
- # تنظیم کلاینت OpenAI برای DashScope
21
  try:
22
  client = OpenAI(
23
- api_key=qwen_api_key,
24
- base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
25
  timeout=30.0
26
  )
27
  logger.info("✅ OpenAI client initialized successfully")
@@ -30,8 +27,8 @@ else:
30
  try:
31
  test_response = client.models.list()
32
  logger.info("✅ API connection test successful")
33
- except:
34
- logger.warning("⚠️ API test failed but client created")
35
 
36
  except Exception as e:
37
  logger.error(f"❌ Failed to initialize OpenAI client: {e}")
@@ -114,16 +111,15 @@ def generate_code(text, language):
114
 
115
  if client is None:
116
  error_msg = "❌ خطا: اتصال به API برقرار نشد. لطفاً API Key را بررسی کنید."
117
- error_code = f"# خطا در اتصال به سرویس\n# درخواست: {text}\nprint('لطفاً API Key را در تنظیمات Hugging Face اضافه کنید')"
118
  save_to_db(text, language, error_code, error_msg, success=False)
119
  return error_msg, error_code
120
 
121
  try:
122
- # لیست مدل‌های مختلف برای تست
123
  models_to_try = [
124
- "qwen2.5-coder-32b-instruct",
125
- "qwen-coder-plus",
126
- "qwen2.5-coder-7b-instruct"
127
  ]
128
 
129
  system_prompt = f"""You are an expert {language} programmer.
@@ -171,7 +167,7 @@ Please provide only the code, no extra explanations."""
171
 
172
  if not code_generated:
173
  error_msg = "❌ همه مدل‌ها شکست خوردند"
174
- error_code = f"# خطا در تولید کد\n# درخواست: {text}\nprint('خطا در دسترسی به مدل‌های AI')"
175
  save_to_db(text, language, error_code, error_msg, success=False)
176
  return error_msg, error_code
177
 
@@ -215,7 +211,7 @@ def process_request(user_input, language, show_history):
215
  logger.info(f"📨 Processing request - Language: {language}, Show History: {show_history}")
216
 
217
  if not user_input or not user_input.strip():
218
- return "❌ لطفاً توضیحی برای برنامه وارد کنید.", get_history() if show_history else ""
219
 
220
  try:
221
  # تولید کد
@@ -250,7 +246,7 @@ def create_gradio_interface():
250
 
251
  gr.Markdown("""
252
  # 🤖 کریستوفر - دستیار هوشمند کدنویسی
253
- ### 🚀 با قدرت مدل‌های Qwen2.5-Coder
254
 
255
  توضیح برنامه‌ای که می‌خواهید را به فارسی وارد کنید و زبان برنامه‌نویسی مورد نظر را انتخاب کنید.
256
  """)
 
9
  logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
10
  logger = logging.getLogger(__name__)
11
 
12
+ # تنظیم API Key برای OpenAI
13
  logger.info("Starting application setup")
14
+ openai_api_key = os.getenv("OPENAI_API_KEY")
15
+ if not openai_api_key:
16
+ logger.warning("OPENAI_API_KEY not found in environment variables")
 
17
  client = None
18
  else:
 
19
  try:
20
  client = OpenAI(
21
+ api_key=openai_api_key,
 
22
  timeout=30.0
23
  )
24
  logger.info("✅ OpenAI client initialized successfully")
 
27
  try:
28
  test_response = client.models.list()
29
  logger.info("✅ API connection test successful")
30
+ except Exception as e:
31
+ logger.warning(f"⚠️ API test failed but client created: {e}")
32
 
33
  except Exception as e:
34
  logger.error(f"❌ Failed to initialize OpenAI client: {e}")
 
111
 
112
  if client is None:
113
  error_msg = "❌ خطا: اتصال به API برقرار نشد. لطفاً API Key را بررسی کنید."
114
+ error_code = f"# خطا در اتصال به سرویس\n# درخواست: {text}\nprint('لطفاً API Key را در تنظیمات OpenAI اضافه کنید')"
115
  save_to_db(text, language, error_code, error_msg, success=False)
116
  return error_msg, error_code
117
 
118
  try:
119
+ # لیست مدل‌های OpenAI برای تست
120
  models_to_try = [
121
+ "gpt-4o",
122
+ "gpt-3.5-turbo"
 
123
  ]
124
 
125
  system_prompt = f"""You are an expert {language} programmer.
 
167
 
168
  if not code_generated:
169
  error_msg = "❌ همه مدل‌ها شکست خوردند"
170
+ error_code = f"# خطا در تولید کد\n# درخواست: {text}\nprint('خطا در دسترسی به مدل‌های OpenAI')"
171
  save_to_db(text, language, error_code, error_msg, success=False)
172
  return error_msg, error_code
173
 
 
211
  logger.info(f"📨 Processing request - Language: {language}, Show History: {show_history}")
212
 
213
  if not user_input or not user_input.strip():
214
+ return "❌ لطفاً توضیحی برای برنامه وارد کنید.", get_history() if show_history else "", ""
215
 
216
  try:
217
  # تولید کد
 
246
 
247
  gr.Markdown("""
248
  # 🤖 کریستوفر - دستیار هوشمند کدنویسی
249
+ ### 🚀 با قدرت مدل‌های OpenAI
250
 
251
  توضیح برنامه‌ای که می‌خواهید را به فارسی وارد کنید و زبان برنامه‌نویسی مورد نظر را انتخاب کنید.
252
  """)