dan92 commited on
Commit
ea59d93
·
verified ·
1 Parent(s): 97a75f9

Upload main.py

Browse files
Files changed (1) hide show
  1. main.py +24 -24
main.py CHANGED
@@ -228,7 +228,7 @@ async def chat_completions(request: Request, background_tasks: BackgroundTasks,
228
  print(f"跳过没有role的消息: {message}")
229
  continue
230
 
231
- if not content:
232
  print(f"跳过空内容的消息: {message}")
233
  continue
234
 
@@ -245,31 +245,31 @@ async def chat_completions(request: Request, background_tasks: BackgroundTasks,
245
  continue
246
 
247
  # 处理文本内容
248
- if isinstance(item.get("text"), str):
249
- text_parts.append(item["text"])
 
250
  has_text = True
251
- continue
252
 
253
  # 处理图片内容
254
  image_url = item.get("image_url")
255
- if isinstance(image_url, dict) and isinstance(image_url.get("url"), str):
256
- has_image = True
257
- url = image_url["url"]
258
-
259
- if is_base64_image(url):
260
- try:
261
- base64_str = url.split(",")[1]
262
- filename = save_base64_image(base64_str)
263
- base_url = app.state.base_url
264
- image_url = f"{base_url}/images/{filename}"
265
- images.append({"data": image_url})
266
- except Exception as e:
267
- print(f"处理base64图片时出错: {e}")
268
- continue
 
 
269
  else:
270
- images.append({"data": url})
271
- else:
272
- print(f"跳过无效的图片URL: {image_url}")
273
 
274
  # 合并文本部分
275
  if text_parts:
@@ -301,7 +301,7 @@ async def chat_completions(request: Request, background_tasks: BackgroundTasks,
301
  print(f"删除了非预期类型的内容消息: {type(content)}")
302
 
303
  if not cleaned_messages:
304
- raise HTTPException(status_code=400, detail="所有消息的内容均为空。")
305
 
306
  # 验证模型
307
  if model not in MODELS:
@@ -572,7 +572,7 @@ async def images_generations(request: Request, api_key: str = Depends(verify_api
572
 
573
  print(f"提取的路径: {extracted_path}")
574
 
575
- # Step 5: 拼接最���的存储URL
576
  storage_url = f"https://api.chaton.ai/storage/{extracted_path}"
577
  print(f"存储URL: {storage_url}")
578
 
@@ -634,7 +634,7 @@ def main():
634
 
635
  # 检查 API_KEY 是否设置
636
  if not os.environ.get("API_KEY"):
637
- print("警告: API_KEY 环境变量未设置。客户端验���将无法正常工作。")
638
 
639
  # 确保 images 目录存在
640
  if not os.path.exists("images"):
 
228
  print(f"跳过没有role的消息: {message}")
229
  continue
230
 
231
+ if content is None:
232
  print(f"跳过空内容的消息: {message}")
233
  continue
234
 
 
245
  continue
246
 
247
  # 处理文本内容
248
+ text = item.get("text")
249
+ if text and isinstance(text, str):
250
+ text_parts.append(text)
251
  has_text = True
 
252
 
253
  # 处理图片内容
254
  image_url = item.get("image_url")
255
+ if image_url and isinstance(image_url, dict):
256
+ url = image_url.get("url")
257
+ if url and isinstance(url, str):
258
+ has_image = True
259
+ if is_base64_image(url):
260
+ try:
261
+ base64_str = url.split(",")[1]
262
+ filename = save_base64_image(base64_str)
263
+ base_url = app.state.base_url
264
+ image_url = f"{base_url}/images/{filename}"
265
+ images.append({"data": image_url})
266
+ except Exception as e:
267
+ print(f"处理base64图片时出错: {e}")
268
+ continue
269
+ else:
270
+ images.append({"data": url})
271
  else:
272
+ print(f"跳过无效的图片URL: {image_url}")
 
 
273
 
274
  # 合并文本部分
275
  if text_parts:
 
301
  print(f"删除了非预期类型的内容消息: {type(content)}")
302
 
303
  if not cleaned_messages:
304
+ raise HTTPException(status_code=400, detail="所��消息的内容均为空。")
305
 
306
  # 验证模型
307
  if model not in MODELS:
 
572
 
573
  print(f"提取的路径: {extracted_path}")
574
 
575
+ # Step 5: 拼接最的存储URL
576
  storage_url = f"https://api.chaton.ai/storage/{extracted_path}"
577
  print(f"存储URL: {storage_url}")
578
 
 
634
 
635
  # 检查 API_KEY 是否设置
636
  if not os.environ.get("API_KEY"):
637
+ print("警告: API_KEY 环境变量未设置。客户端验将无法正常工作。")
638
 
639
  # 确保 images 目录存在
640
  if not os.path.exists("images"):