jinv2 commited on
Commit
e4ec2ca
·
verified ·
1 Parent(s): 89b83fd

Update app.py

Browse files

Add translation step with facebook/m2m100_418M for Chinese output

Files changed (1) hide show
  1. app.py +17 -8
app.py CHANGED
@@ -10,18 +10,27 @@ if not HF_TOKEN:
10
  print(f"HF_TOKEN loaded: {len(HF_TOKEN) if HF_TOKEN else 0} characters")
11
 
12
  try:
13
- client = InferenceClient(model="google/pegasus-xsum", token=HF_TOKEN)
 
14
  def generate_summary(text):
15
  for _ in range(3):
16
  try:
17
- response = client.summarization(text, max_length=50, min_length=10, num_beams=4)
18
- print(f"API Response: {response}")
19
- if hasattr(response, 'generated_text') and response.generated_text:
20
- return response.generated_text
21
- elif hasattr(response, 'summary_text') and response.summary_text:
22
- return response.summary_text
23
- else:
24
  return "摘要生成失败,属性缺失。"
 
 
 
 
 
 
 
 
 
 
25
  except Exception as e:
26
  error_details = traceback.format_exc()
27
  print(f"尝试失败,错误类型: {type(e).__name__}, 错误详情: {str(e)}, 堆栈: {error_details}")
 
10
  print(f"HF_TOKEN loaded: {len(HF_TOKEN) if HF_TOKEN else 0} characters")
11
 
12
  try:
13
+ summary_client = InferenceClient(model="google/pegasus-xsum", token=HF_TOKEN)
14
+ translation_client = InferenceClient(model="facebook/m2m100_418M", token=HF_TOKEN)
15
  def generate_summary(text):
16
  for _ in range(3):
17
  try:
18
+ # 首先生成英文摘要
19
+ response = summary_client.summarization(text)
20
+ print(f"Summary API Response: {response}")
21
+ summary_text = response.generated_text if hasattr(response, 'generated_text') and response.generated_text else response.summary_text if hasattr(response, 'summary_text') and response.summary_text else None
22
+ if not summary_text:
 
 
23
  return "摘要生成失败,属性缺失。"
24
+
25
+ # 将英文摘要翻译为中文
26
+ translated_response = translation_client.text_generation(
27
+ summary_text,
28
+ src_lang="en",
29
+ tgt_lang="zh",
30
+ max_length=100
31
+ )
32
+ print(f"Translation API Response: {translated_response}")
33
+ return translated_response if translated_response else "翻译失败,请重试。"
34
  except Exception as e:
35
  error_details = traceback.format_exc()
36
  print(f"尝试失败,错误类型: {type(e).__name__}, 错误详情: {str(e)}, 堆栈: {error_details}")