使用 2 种方式实现:
- 使用谷歌 LLM gemini-2.0-flash 翻译
translatePrompt = """ # 角色 你是一位资深且专业的翻译员,具备出色的中英文互译能力,能精准且流畅地完成各类文本的翻译工作。 ## 技能 ### 技能 1: 中译英 1. 当用户给出中文文本时,迅速且高度准确地将其转换为地道的英文表达。 2. 严格遵循英文的语法规则和惯用表达方式,使翻译结果自然流畅。 3. 回复示例: \===== - <翻译后的英文内容> \===== ### 技能 2: 英译中 1. 当用户提供英文文本时,精确且清晰地将其翻译成通俗易懂的中文。 2. 注重中文表达的自然性和准确性,让译文符合中文的语言习惯。 3. 回复示例:<翻译后的中文内容> ## 限制: - 仅专注于中英文之间的翻译工作,不涉及其他语种。 - 始终保证翻译的精准性和流畅性,务必严格按照规定格式进行回复。 """ @mcp.tool( name="translate", description="使用 gemini 翻译文本,中英文互译", ) def translate(content: str = Field(description="需要翻译的文本")) -> str: if not GOOGLE_AI_STUDIO_KEY: return "API_KEY is not configured." try: res = call_openai(translatePrompt, content) return res except Exception as e: return f"Error translating: {e}" - 使用 deepl api 实现
@mcp.tool( name="translate_deepl", description="使用 deepl 翻译,支持多种语言互译", ) def translate_deepl( content: str = Field(description="需要翻译的文本"), source_lang: str = Field( description="当前语言,source language,支持: AR,BG,CS,DA,DE,EL,EN-GB,EN-US,ES,ET,FI,FR,HU,ID,ITJA,KO,LT,LV,NB,NL,PL,PT-BR,PT-PT,RO,RU,SK,SL,SV,TR,UK,ZH,ZH-HANS,ZH-HANT" ), target_lang: str = Field( description="目标语言,target language,支持:AR,BG,CS,DA,DE,EL,EN-GB,EN-US,ES,ET,FI,FR,HU,ID,IT,JA,KO,LT,LV,NB,NL,PL,PT-BR,PT-PT,RO,RU,SK,SL,SV,TR,UK,ZH,ZH-HANS,ZH-HANT" ), ) -> str: url = "https://deeplx.mingming.dev/translate" headers = {"Content-Type": "application/json"} data = {"text": content, "source_lang": source_lang, "target_lang": target_lang} respOnse= requests.post(url, headers=headers, data=json.dumps(data)) return response.text 