Aboge commited on
Commit
e189651
·
1 Parent(s): 6965f93

update: eng_sw model

Browse files
Files changed (1) hide show
  1. app.py +19 -5
app.py CHANGED
@@ -4,7 +4,8 @@ from transformers import pipeline
4
  app = Flask(__name__)
5
 
6
  # Initialize the translation pipeline
7
- translator = pipeline("translation", model="Bildad/Swahili-English_Translation")
 
8
 
9
 
10
  @app.route("/", methods=["GET"])
@@ -28,7 +29,7 @@ def home():
28
  .container {{
29
  width: 80%;
30
  margin: auto;
31
- margin-top: 50px;
32
  overflow: hidden;
33
  background: #fff;
34
  padding: 20px;
@@ -67,9 +68,12 @@ def home():
67
  <div class="container">
68
  <h1>ChatEasy swa-eng Translation API</h1>
69
  <p>Welcome to the ChatEasy swa-eng Translation API documentation.</p>
70
- <p>To use the API, send a POST request to <code>https://aboge-demo.hf.space/translate</code>.</p>
71
  <h2>Request Payload</h2>
72
- <pre>&#123; "<span class="payload-key">text</span>" : "<span class="payload-value">Siku njema</span>" &#125;</pre>
 
 
 
73
  <h2>Expected Response</h2>
74
  <pre>&#123; "<span class="payload-key">translated_text</span>" : "<span class="payload-value">A good day</span>" &#125;</pre>
75
  </div>
@@ -86,9 +90,19 @@ def translate():
86
 
87
  if "text" not in data:
88
  return jsonify({"error": "No text provided"}), 400
 
 
89
 
90
  text_to_translate = data["text"]
91
- translation = translator(text_to_translate)[0]
 
 
 
 
 
 
 
 
92
  translated_text = translation["translation_text"]
93
 
94
  return jsonify({"translated_text": translated_text})
 
4
  app = Flask(__name__)
5
 
6
  # Initialize the translation pipeline
7
+ sw_to_en = pipeline("translation", model="Bildad/Swahili-English_Translation")
8
+ en_to_sw = pipeline("translation", model="Bildad/English-Swahili_Translation")
9
 
10
 
11
  @app.route("/", methods=["GET"])
 
29
  .container {{
30
  width: 80%;
31
  margin: auto;
32
+ margin-top: 100px;
33
  overflow: hidden;
34
  background: #fff;
35
  padding: 20px;
 
68
  <div class="container">
69
  <h1>ChatEasy swa-eng Translation API</h1>
70
  <p>Welcome to the ChatEasy swa-eng Translation API documentation.</p>
71
+ <p>To use the API, send a POST request to <code>/translate</code>.</p>
72
  <h2>Request Payload</h2>
73
+ <pre>&#123;
74
+ "<span class="payload-key">text</span>" : "<span class="payload-value">Siku njema</span>",<br>
75
+ "<span class="payload-key">source_language</span>" : "<span class="payload-value">sw</span>"
76
+ &#125;</pre>
77
  <h2>Expected Response</h2>
78
  <pre>&#123; "<span class="payload-key">translated_text</span>" : "<span class="payload-value">A good day</span>" &#125;</pre>
79
  </div>
 
90
 
91
  if "text" not in data:
92
  return jsonify({"error": "No text provided"}), 400
93
+ if "source_language" not in data:
94
+ return jsonify({"error": "No Source Language Provided"}), 400
95
 
96
  text_to_translate = data["text"]
97
+ source_language = data["source_language"]
98
+
99
+ if source_language == "en":
100
+ translation = en_to_sw(text_to_translate)[0]
101
+ elif source_language == "sw":
102
+ translation = sw_to_en(text_to_translate)[0]
103
+ else:
104
+ return jsonify({"error": "Invalid Source Language"}), 400
105
+
106
  translated_text = translation["translation_text"]
107
 
108
  return jsonify({"translated_text": translated_text})