import gradio as gr from flores import code_mapping from functools import lru_cache import openai # 用于调用外部API code_mapping = dict(sorted(code_mapping.items(), key=lambda item: item[0])) flores_codes = list(code_mapping.keys()) target_languages = flores_codes # 简化列表 # 假设openai_client已定义,例如: @lru_cache(maxsize=100) def translate(text: str, src_lang: str, tgt_lang: str): if not src_lang: raise gr.Error("The source language is empty! Please choose it in the dropdown list.") if not tgt_lang: raise gr.Error("The target language is empty! Please choose it in the dropdown list.") return _translate(text, src_lang, tgt_lang) def _translate(text: str, src_lang: str, tgt_lang: str): prompt = f"Translate the following text from {src_lang} to {tgt_lang}: {text}" openai_client = openai.OpenAI(base_url="https://ssapi.cppbear.site/v1", api_key="sk-5VFSx79t3fLQk4BtN68WTeeRckZ12CONElR7RsK39zrQysji") response = openai_client.chat.completions.create( model="gemini-2.5-flash", # 如gpt-3.5-turbo或其他兼容模型 messages=[{"role": "user", "content": prompt}], max_tokens=30240, temperature=0.0 ) print(response) return response.choices[0].message.content.strip() description = """
UNESCO Meta Hugging Face Banner

Seed-X, powered by Bytedance

We are excited to introduce Seed-X, a powerful series of open-source multilingual translation language models, including an instruction model, a reinforcement learning model, and a reward model. It pushes the boundaries of translation capabilities within 7 billion parameters. We develop Seed-X as an accessible, off-the-shelf tool to support the community in advancing translation research and applications: """ disclaimer = """ We are excited to introduce Seed-X, a powerful series of open-source multilingual translation language models, including an instruction model, a reinforcement learning model, and a reward model. It pushes the boundaries of translation capabilities within 7 billion parameters. We develop Seed-X as an accessible, off-the-shelf tool to support the community in advancing translation research and applications """ examples_inputs = [["Seed-X is indeed a good translation model ","English","Chinese"],] with gr.Blocks() as demo: gr.Markdown(description) with gr.Row(): src_lang = gr.Dropdown(label="Source Language", choices=flores_codes) target_lang = gr.Dropdown(label="Target Language", choices=target_languages) with gr.Row(): input_text = gr.Textbox(label="Input Text", lines=6) with gr.Row(): btn = gr.Button("Translate text") with gr.Row(): output = gr.Textbox(label="Output Text", lines=6) btn.click( translate, inputs=[input_text, src_lang, target_lang], outputs=output, ) examples = gr.Examples(examples=examples_inputs,inputs=[input_text, src_lang,target_lang], fn=translate, outputs=output, cache_examples=True) with gr.Row(): gr.Markdown(disclaimer) demo.launch()