尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
使用LangChain,Gradio构建本地翻译系统
importgradioasgrfromlangchain_ollamaimportChatOllamafromlangchain_core.promptsimportChatPromptTemplate# 1. 初始化本地模型llmChatOllama(modelmaternion/hy-mt2:1.8b)deftranslate_text(source_language,target_language,text):# 2. 构建翻译提示词promptChatPromptTemplate.from_messages([(system,你是一个专业的翻译助手。请将用户输入的文本从{sourceLanguage}翻译成{targetLanguage}。仅输出翻译结果不要包含任何解释。),(user,{input})])chainprompt|llm# 3. 执行翻译responsechain.invoke({sourceLanguage:source_language,targetLanguage:target_language,input:text})returnresponse.contentif__name____main__:# 4. 构建 Gradio 界面withgr.Blocks()asdemo:gr.Markdown(## 本地翻译系统 (Powered by Ollama))withgr.Row():lang_sourcegr.Dropdown(choices[中文,英语,日语,韩语,法语,德语],label源语言,value中文)lang_targetgr.Dropdown(choices[中文,英语,日语,韩语,法语,德语],label目标语言,value英语)withgr.Row():text_inputgr.TextArea(label输入文本,placeholder在此输入需要翻译的文本...)text_outputgr.TextArea(label翻译结果,interactiveFalse)translate_btngr.Button(翻译)translate_btn.click(fntranslate_text,inputs[lang_source,lang_target,text_input],outputstext_output)demo.launch()importgradioasgrfromlangchain_ollamaimportChatOllamafromlangchain_core.promptsimportChatPromptTemplate# 1. 初始化本地模型llmChatOllama(modelmaternion/hy-mt2:1.8b)deftranslate_text(source_language,target_language,text):# 2. 构建翻译提示词promptChatPromptTemplate.from_messages([(system,你是一个专业的翻译助手。请将用户输入的文本从{sourceLanguage}翻译成{targetLanguage}。仅输出翻译结果不要包含任何解释。),(user,{input})])chainprompt|llm# 3. 执行翻译responsechain.invoke({sourceLanguage:source_language,targetLanguage:target_language,input:text})returnresponse.contentdefswap_languages(source,target):互换源语言和目标语言的值returntarget,sourcedefclear_all():清空输入框和输出框return,if__name____main__:# 4. 构建 Gradio 界面withgr.Blocks(themegr.themes.Soft())asdemo:gr.Markdown(## 本地翻译系统 (Powered by Ollama))# 语言选择区域使用 Column 控制布局让按钮居中withgr.Row(equal_heightTrue):withgr.Column(scale1,min_width120):lang_sourcegr.Dropdown(choices[中文,英语,日语,韩语,法语,德语],label源语言,value中文)# 互换按钮小尺寸居中withgr.Column(scale0,min_width40):swap_btngr.Button(⇄,min_width40,sizesm,variantsecondary)withgr.Column(scale1,min_width120):lang_targetgr.Dropdown(choices[中文,英语,日语,韩语,法语,德语],label目标语言,value英语)# 文本输入输出区域withgr.Row():text_inputgr.TextArea(label输入文本,placeholder在此输入需要翻译的文本...)text_outputgr.TextArea(label翻译结果,interactiveFalse)# 按钮行两个按钮居中显示尺寸改为中等 (md)withgr.Row():translate_btngr.Button(翻译,variantprimary,sizemd,min_width40)clear_btngr.Button(清空,variantsecondary,sizemd,min_width40)# 绑定事件translate_btn.click(fntranslate_text,inputs[lang_source,lang_target,text_input],outputstext_output)swap_btn.click(fnswap_languages,inputs[lang_source,lang_target],outputs[lang_source,lang_target])clear_btn.click(fnclear_all,inputsNone,outputs[text_input,text_output])demo.launch()
RELATED

相关推荐

【安心陪诊 Agent】Chrome 126 Web Speech 实战:中文语音识别降级与自然音色选择

【安心陪诊 Agent】Chrome 126 Web Speech 实战:中文语音识别降级与自然音色选择

应用名称:安心陪诊 Agent 统一合集:安心陪诊 Agent|HarmonyOS 高校创新赛 关键词标签:harmonyos / AI Agent / 医疗陪诊语音交互设计:陪诊助手的声音应该怎样不机械摘要:从老年用户、医院场景和家属焦虑出发…

📅 2026/9/11 17:47:04
GLSL优化器跨平台编译与集成实战指南

GLSL优化器跨平台编译与集成实战指南

1. 项目概述:为什么你需要一个GLSL优化器?如果你正在开发桌面端或移动端的图形应用、游戏,或者在使用WebGL进行网页3D渲染,那么你肯定和GLSL(OpenGL Shading Language)打过交道。GLSL着色器代码的性能&…

📅 2026/7/27 8:37:57
开源AI CRM系统:架构解析与智能应用实践

开源AI CRM系统:架构解析与智能应用实践

1. 开源AI CRM系统的时代背景与核心价值在数字化转型浪潮席卷全球的当下,企业客户关系管理正经历着从传统工具到智能平台的质变。开源AI CRM系统的出现,标志着客户关系管理进入了"智能协同"的新阶段。这类系统将开源软件的灵活性与人工智能的预…

📅 2026/7/20 2:47:43
MORE NEWS

更多资讯

📰

OpenProject 快速上手:4 步搭建带甘特图的开源自托管项目管理平台

OpenProject 快速上手:4 步搭建带甘特图的开源自托管项目管理平台 【免费下载链接】openproject OpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile pl…

📰

基于微信小程序的摩尔街网上订餐系统的设计与实现(毕业设计项目源码+文档)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

📰

从零搭建移动UI性能基准测试:用Maestro给应用响应时间定标准

从零搭建移动UI性能基准测试:用Maestro给应用响应时间定标准 【免费下载链接】Maestro Painless E2E Automation for Mobile and Web 项目地址: https://gitcode.com/GitHub_Trending/ma/Maestro 用户说"感觉变卡了",你能立刻说出是布局…

📰

P2层PI闭环控制:目标检测中小目标定位的鲁棒性设计

1. P2层在目标检测网络中的真实定位:不是“加个头”那么简单很多人看到“P2:PI闭环控制”这个标题,第一反应是——这不就是YOLOv11里加个P2检测头的事?搜一搜“如何在YOLO11中增加一个P2检测头”,满屏都是改config、加…

📰

如何在 3 步内跑通 CesiumJS 体素渲染

如何在 3 步内跑通 CesiumJS 体素渲染 【免费下载链接】cesium An open-source JavaScript library for world-class 3D globes and maps :earth_americas: 项目地址: https://gitcode.com/GitHub_Trending/ce/cesium 你有没有想过把一层云、一块岩体直接"剖开&quo…

📰

Maestro:YAML 驱动的移动端 UI 自动化测试——一条登录回归不用写任何代码框架

Maestro:YAML 驱动的移动端 UI 自动化测试——一条登录回归不用写任何代码框架 【免费下载链接】Maestro Painless E2E Automation for Mobile and Web 项目地址: https://gitcode.com/GitHub_Trending/ma/Maestro 你刚改完登录页的按钮交互,想确…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬