开源翻译大模型

news2024/11/26 20:46:34

开源翻译大模型

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.coloradmin.cn/o/1558702.html

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

相关文章

debug: 解决typora两侧留白过大问题

问题如下图:解决办法:打开: 文件 -> 偏好设置 -> -> 外观 -> 看主题选择的是哪一个, 我选择的是GitHub * 点击打开主题设置 -> 选择你对应主题的.css文件 -> CTRL cv 备份一份, 然后打开 在文件中找到max-width : 修改对应的值 , 我改成了1920px * 改好以后…

安装即启动?探索流氓App的自启动“黑科技” (Android系统内鬼之ContentProvider篇)

前段时间发现了一个神奇的app,它居然可以在安装之后立即自启动: 看到没有,在提示安装成功大概1到2秒后,就直接弹出Toast和通知了! 好神奇啊,在没有第三方app帮忙唤醒的前提下,它是怎么做到首次安…

谷粒商城——RabbitMQ

0. 消息中间件 1.RabbitMQ的核心概念 2. 工作流程 整体架构: 相关细节: 上述要注意的是: 路由键包含在message的头中,其作用是用于指定该消息存储与哪个消息队列中。 信道是客户端(包括生产者和消费者)用…

WIFI驱动移植实验:WIFI从路由器动态获取IP地址与联网

一. 简介 前面两篇文章,一篇文章实现了WIFI联网前要做的工作,另一篇文章配置了WIFI配置文件,进行了WIFI热点的连接。文章如下: WIFI驱动移植实验:WIFI 联网前的工作-CSDN博客 WIFI驱动移植实验:连接WIF…

Python字符串字母大小写变换,高级Python开发技术

寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ‘’’ demo ‘tHis iS a GOod boOK.’ print(demo.casefold()) print(demo.lower()) print(demo.upper()) print(demo.capitalize()) print(demo.title()) print(dem…

什么是 SSL 证书?

SSL 证书的介绍 SSL(Secure Sockets Layer)证书是一种由数字证书颁发机构(CA)签发的加密证书,用于在 Web 浏览器和服务器之间建立安全连接。SSL 证书能够确保网站和应用程序的数据传输过程中不被窃听、篡改或伪造&…

springboot点餐平台网站

目 录 摘 要 1 前 言 2 第1章 概述 2 1.1 研究背景 3 1.2 研究目的 3 1.3 研究内容 4 第二章 开发技术介绍 5 2.1相关技术 5 2.2 Java技术 6 2.3 MySQL数据库 6 2.4 Tomcat介绍 7 2.5 Spring Boot框架 8 第三章 系统分析 9 3.1 可行性分析 9 3.1.1 技术可行性 9 3.1.2 经济可行…

初始《string》及手搓模拟实现《string》

目录 前言: 为什么学习string类? 标准库中的string类 1. string类对象的常见构造 ​编辑 2. string类对象的容量操作 ​编辑 3. string类对象的访问及遍历操作 4. string类对象的修改操作 5. string类非成员函数 vs和g下string结构的说明 vs下s…

C/C++游戏编程实例-飞翔的小鸟

飞翔的小鸟游戏设计 首先需要包含以下库&#xff1a; #include<stdio.h> #include<windows.h> #include<stdlib.h> //包含system #include<conio.h>设置窗口大小&#xff1a; #define WIDTH 50 #define HEIGHT 16设置鸟的结构&#xff1a; struct …

在线版的超级马里奥 Super Mario HTML5

原本是在csdn资源找个代码学习的&#xff0c;无奈下载了几份都是垃圾代码(下载了几份都是) 废话不多说&#xff0c;直接上干活。代码、音效、图片、样式都包含 <!doctype html> <html> <head> <meta charsetutf-8 /> <title>Super Mario HTML5 …

C语言变量存储属性

在C语言中&#xff0c;变量不仅仅是用来存储数据的容器&#xff0c;还拥有一些额外的存储属性&#xff0c;这些属性决定了变量的生命周期、作用域和存储位置等。本文将介绍C语言中常见的变量存储属性&#xff0c;包括自动存储、静态存储、寄存器存储和外部链接存储&#xff0c;…

吾空笔记本X15降温

低成本搞了个悟空笔记本&#xff0c;其实就是蓝天磨具&#xff0c;跟木叶村&#xff0c;机革一样&#xff0c;只是说机革边角改得多点&#xff0c;这两个基本没改。通病是轻薄本压不住AMD这个U&#xff0c;如果在超频模式&#xff0c;且带高刷屏&#xff0c;GPU加CPU的功耗&…

【Linux】认识线程池 AND 手撕线程池(正常版)

文章目录 0.回顾进程池1.计算机层面的池化技术2.线程池预备知识2.1介绍线程池2.2设计线程池的意义是什么&#xff1f;2.3其他知识 3.回顾C类与对象3.1cpp什么情况下成员函数必须是静态的&#xff1f;3.1可变参数列表3.2格式化输出函数3.3预定义符号 4.图解线程池运作原理4.0完整…

并查集----格子游戏

并查集中最重要的是要搞懂&#xff1a; 不明白的可以拿纸自己先演示一番&#xff0c;find函数不仅能找到他们的祖先数&#xff0c;而且同时也能更新路径的子结点都等于祖先&#xff0c;然后以后寻找时会更加的方便&#xff01;

P3817 小A的糖果(贪心)

思路&#xff1a;真绝了&#xff0c;开了longlong从80分到了100分。因为一个特判st值影响我AC&#xff0c;那个单独的特判竟然有问题。我想的是如果有a[i] a[i1]则将状态值st标为true。最后在输出结果之前先看st的值&#xff0c;如果他为false&#xff0c;则说明没有两盒子的和…

网络编程套接字 (一)

本专栏内容为&#xff1a;Linux学习专栏&#xff0c;分为系统和网络两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握Linux。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;网络 &#x1f69a;代码仓库&#xff1a;小小unicorn的代…

InnoDB支持哪几种行格式?

一、问题解析 数据库表的行格式决定了一行数据是如何进行物理存储的&#xff0c;进而影响查询和DML操作的性能。 在InnoDB中&#xff0c;常见的行格式有4种&#xff1a; 1COMPACT &#xff1a;是MySQL 5.0之前的默认格式&#xff0c;除了保存字段值外&#xff0c;还会利用空值…

沃通国密SSL根证书入根赢达信国密浏览器

近日&#xff0c;沃通CA国密SSL根证书正式入根赢达信国密安全浏览器&#xff0c;携手推动国产密码技术应用、完善国密应用生态体系&#xff0c;也标志着沃通国密SSL证书兼容性再次得到提升&#xff0c;进一步夯实国密应用根基。 密码算法的安全性是信息安全保障的核心&#xff…

时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测

时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测 目录 时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测&#xff08;完整源码和数据…

PyLMKit(8):ChatDB与你的数据库聊天,数据库问答

功能介绍 与你的结构化数据聊天&#xff1a;支持主流数据库、表格型excel等数据&#xff01; ChatDB&#xff1a;支持数据库问答ChatTable&#xff1a;支持txt,excel,csv等pandas dataframe表格的问答 1.下载安装 pip install pylmkit -U pip install pymysql sqlalchemy s…