开源翻译大模型

开源翻译大模型

1 简介

在开发过程中,会遇到定制化翻译工具的需要,开源的翻译模型可以解决相应的问题。其中英语转中文的比较好的开源项目有:

序号组织模型地址备注
1赫尔辛基大学语言技术研究小组(Language Technology Research Group at the University of Helsinki)opus-mt-en-zh英文翻译为中文: https://hf-mirror.com/Helsinki-NLP/opus-mt-en-zh支持英文转中文;其他翻译模型在该项目下查找即可。
2facebook(Meta)nllb-200https://hf-mirror.com/facebook/nllb-200-3.3Bnllb-200可以在200种语言之间进行单句翻译。它有多个参数的模型,推荐使用3.3B,其中600M翻译时会出现“预载载载载载载载载载载”的错误
3facebook(Meta)mbart-large-50英语翻译为其他语言: https://hf-mirror.com/facebook/mbart-large-50-one-to-many-mmt
多语言翻译为多语言: https://hf-mirror.com/facebook/mbart-large-50-many-to-many-mmt
mbart-large-50支持将50种语言翻译为其他多语言。
4facebook(Meta)SeamlessM4T在线使用: https://hf-mirror.com/spaces/facebook/seamless-m4t-v2-large
仓库地址: https://hf-mirror.com/facebook/seamless-m4t-v2-large
Seamless M4T是一个一体化大规模多语言和多模式机器j基座翻译模型,提供近100种语言的语音和文本高质量翻译。可支持:
1.语音到语音翻译(S2ST)
2.语音到文本翻译(S2TT)
3.文本到语音翻译(T2ST)
4.文本到文本翻译(T2TT)
5.自动语音识别(ASR)

2 下载模型

下载模型的网站

# 国内代理huggingface的网站
https://hf-mirror.com/# 下载大模型的网站
https://aliendao.cn

下载命令

# 安装huggingface_hub,会在相应的环境中生成huggingface-cli
pip install -U huggingface_hub -i https://pypi.tuna.tsinghua.edu.cn/simple# 进入到相应的目录下后,下载模型
huggingface-cli download --resume-download facebook/mbart-large-50-one-to-many-mmt --local-dir mbart-large-50-one-to-many-mmt  --local-dir-use-symlinks False

3 项目实例

3.1 模型nllb-200-3.3

源代码

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline# 加载模型
model = AutoModelForSeq2SeqLM.from_pretrained("D:/model/nllb-200-3.3B")
tokenizer = AutoTokenizer.from_pretrained("D:/model/nllb-200-3.3B")# pipelines使用方法: https://hf-mirror.com/docs/transformers/main_classes/pipelines
# 翻译语言的地址:https://hf-mirror.com/facebook/nllb-200-3.3B/blob/main/README.md
# task:任务类型,translation表示翻译
# src_lang: 输入文本的语言,eng_Latn表示英文
# tgt_lang: 输出文本的语言,zho_Hans表示中文
# max_length: 输入文本最大长度;
translator = pipeline(task='translation',model=model,tokenizer=tokenizer,src_lang='eng_Latn',tgt_lang='zho_Hans',max_length=512
)# 文本
text_en = "Heart disease is a serious threat to human health. "
text_zh = translator(text_en)
print(text_zh)

在这里插入图片描述

3.2 模型mbart-large-50-one-to-many-mmt

安装依赖

# 安装sentencepiece 
pip install sentencepiece -i https://pypi.tuna.tsinghua.edu.cn/simple# 安装protobuf
pip install protobuf -i https://pypi.tuna.tsinghua.edu.cn/simple

源代码

from transformers import MBartForConditionalGeneration, MBart50TokenizerFast# 加载模型
model = MBartForConditionalGeneration.from_pretrained(pretrained_model_name_or_path="D:/model/mbart-large-50-one-to-many-mmt"
)
tokenizer = MBart50TokenizerFast.from_pretrained(pretrained_model_name_or_path="D:/model/mbart-large-50-one-to-many-mmt",src_lang="en_XX"
)# 序列化
text_en = "Heart disease is a serious threat to human health. "
model_inputs = tokenizer(text_en, return_tensors="pt")# 将英语翻译成中文
generated_tokens = model.generate(**model_inputs,forced_bos_token_id=tokenizer.lang_code_to_id["zh_CN"]
)text_zh = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)
print(text_zh)

结果
在这里插入图片描述

3.3 模型opus-mt-en-zh

源代码

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
from transformers import pipeline# 加载模型
model = AutoModelForSeq2SeqLM.from_pretrained("D:/model/opus-mt-en-zh")
tokenizer = AutoTokenizer.from_pretrained("D:/model/opus-mt-en-zh")# 创建 pipeline
translator = pipeline(task="translation", model=model, tokenizer=tokenizer)text_en = "Heart disease is a serious threat to human health. "
text_zh = translator(text_en)
print(text_zh)

结果
在这里插入图片描述

3.4 模型SeamlessM4T

由于SeamlessM4T模型太大,此处借助HuggingFace上的模型运行。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/783550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rust嵌入式开发之await

嵌入式经常有类似通过串口发送指令然后等待响应再做出进一步反应的需求。比如,通过串口以AT命令来操作蓝牙模块执行扫描、连接,需要根据实际情况进行操作,复杂的可能需要执行7、8条指令才能完成连接。 对于这样的需求,如果用异步…

如何使用Axure RP制作网页原型并结合IIS服务实现公网访问本地HTML网页

文章目录 前言1.在AxureRP中生成HTML文件2.配置IIS服务3.添加防火墙安全策略4.使用cpolar内网穿透实现公网访问4.1 登录cpolar web ui管理界面4.2 启动website隧道4.3 获取公网URL地址4.4. 公网远程访问内网web站点4.5 配置固定二级子域名公网访问内网web站点4.5.1创建一条固定…

SSH免密登录——linux

SSH免密登录——linux 方法一一、用 ssh-key-gen 在本地主机上创建公钥和密钥二、用 ssh-copy-id 把客户端公钥追加到远程主机的 .ssh/authorized_key 上三、直接登录远程主机 方法二一、将生成的客户端公钥id_rsa.pub内容追加至目标主机.ssh/authorized_key 中参考链接 SSH免密…

动态规划-----背包类问题(0-1背包与完全背包)详解

目录 什么是背包问题? 动态规划问题的一般解决办法: 0-1背包问题: 0 - 1背包类问题 分割等和子集: 完全背包问题: 完全背包类问题 零钱兑换II: 什么是背包问题? 背包问题(Knapsack problem)是一种…

日历插件fullcalendar【笔记】

日历插件fullcalendar【笔记】 前言版权开源推荐日历插件fullcalendar一、下载二、初次使用日历界面示例-添加事件,删除事件 三、汉化四、动态数据五、前后端交互1.环境搭建-前端搭建2.环境搭建-后端搭建3.代码编写-前端代码fullcalendar.htmlfullcalendar.js 4.代码…

【更新】在湘源7、8中使用2023年11月国空用地用海分类

之前为了做控规,从湘源8中扒了一套国空用地用海的绘图参数给湘源7使用。 【预告】在湘源控规7中使用 国空用地用海分类标准 但是部里在2023年11月又发布了一套新的用地用海分类。 本想去湘源8里面再扒一下,结果发现湘源8自己还没有更新呢,…

free pascal:字符串模糊匹配库 FuzzyWuzzy 的编译过程

访问:pypi.org 搜索 fuzzywuzzy 访问:fuzzywuzzy PyPI 用鼠标滚动网页到底部,可见:Free Pascal: FuzzyWuzzy.pas (Free Pascal port) 下载 FuzzyWuzzy.pas-master.zip 后解压到当前目录。 cd D:\lazarus\projects\FuzzyWuz…

redis学习-redis配置文件解读

目录 1.单位说明 2. include配置 3. network网络配置 3.1 bind绑定ip配置 3.2保护模式protected-mode配置 3.3端口号port配置​编辑 3.4超时断开连接timeout配置 4. general通用配置 4.1守护进程模式daemonize配置 4.2进程id存放文件pidfile配置 4.3日志级别loglevel配置 4.…

实时数仓建设实践——滴滴实时数据链路组件的选型

目录 前言 一、实时数据开发在公司内的主要业务场景 二、实时数据开发在公司内的通用方案 三、特定场景下的实时数据开发组件选型 3.1 实时指标监控场景 3.2 实时BI分析场景 3.3 实时数据在线服务场景 3.4 实时特征和标签系统 四、各组件资源使用原则 五、总结和展望…

探索GPU的魔力:让你的计算速度翻倍,体验视觉盛宴

你是否曾为电脑运行速度慢而感到苦恼?是否渴望在游戏中体验更加逼真、流畅的画面?是否希望在深度学习任务中节省大量时间?那么,不妨让我向你介绍一种神奇的计算力量——GPU(图形处理单元)! 立即…

通过 Docker 搭建 BookStack

文章目录 环境说明1、官方网站2、通过 Docker 部署总结 环境说明 操作系统版本:CentOS Linux release 7.9.2009 (Core) Docker 版本:Docker Engine - Community 24.0.2 BookStack 版本:23.02.3 MySQL 版本:8.0.32 1、官方网站 G…

浅读 Natural Language Generation Model for Mammography Reports Simulation

浅读 Natural Language Generation Model for Mammography Reports Simulation 这是一篇报告生成 去伪 的文章,重点看生成报告的 真实性 Abstract Extending the size of labeled corpora of medical reports is a major step towards a successful training of …

手搓 Docker Image Creator(DIC)工具(02):预备知识

此节主要简单介绍一下 Docker、Dockerfile 的基本概念,Dockerfile 对的基本语法,Windows 和 macOS 下 Docker 桌面的安装,Docker 镜像的创建和运行测试等。 1 关于 Docker Docker 是一个开源的应用容器引擎,它允许开发者打包应用…

【Effective Web】文件上传

文章目录 前言一、选择本地文件1.设计一个上传文件按钮2.FileReader读取文件内容 二、使用拖拽方式1.设计一个拖拽容器2.拖拽文件的相关事件回调 三、使用粘贴方式1.设计一个粘贴容器2.paste事件回调 四、总结 前言 前端无法像app一样直接操作本地文件,对本地文件的…

在Python中,当你执行 print(2, 3) 时

目录 在Python中,当你执行 print(2, 3) 时 在Python中,当你执行 print(2, 3) 时 你实际上是在调用 print 函数并传递给它两个参数:整数 2 和整数 3。print 函数会打印出这些参数,并在它们之间添加一个空格作为默认的分隔符。因此,输出将会是: 复制代码 2 3如果你希望打…

MTMT:构建比特币生态平行世界 打造铭文生态繁荣

近年来,随着铭文市场的火爆以及比特币ETF成功通过,比特币生态正经历着一场复兴,尤其是铭文市场作为新一代Web3的叙事,带来了全新的生产方式,可以预见,铭文就像流动性挖矿对于上一轮DeFi Summer的推动一样会…

vue watch 深度监听

vue2文档&#xff1a;API — Vue.js vue3文档&#xff1a;侦听器 | Vue.js watch 可以用来监听页面中的数据&#xff0c;但如果监听的源是对象或数组&#xff0c;则使用深度监听&#xff0c;强制深度遍历源&#xff0c;以便在深度变更时触发回调。 一&#xff0c;监听 <t…

蓝桥杯算法题-正则问题

问题描述 考虑一种简单的正则表达式&#xff1a; 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是&#xff1a; xxxxxx&#xff0c;长度是 6。 输入格式 一个由 x()| 组成的正则表达式。…

ViveNAS性能调试笔记(一)

ViveNAS是一个开源的NAS文件服务软件&#xff0c;有一套独立自创的架构&#xff0c;ViveNAS希望能做到下面的目标&#xff1a; - 能支持混合使用高性能的介质(NVMe SSD)和低性能介质&#xff08;HDD&#xff0c;甚至磁带&#xff09;。做到性能、成本动态均衡。因此ViveNAS使用…

解锁背包问题:C++实现指南

文章目录 解锁背包问题&#xff1a;C实现指南01背包问题问题形式化动态规划解法C代码示例 完全背包问题动态规划解法C代码示例 结论 解锁背包问题&#xff1a;C实现指南 背包问题是计算机科学中的经典优化问题&#xff0c;常出现在算法研究和编程面试中。它是组合优化的一个例…