私有化部署
1. 私有部署优势
- 翻译质量:你可以使用更大尺寸的模型,比如qwen3-32B、hunyua-mt 等,让翻译语句更通顺,拥有极高的阅读体验。
- 极速响应:可启用 内存缓存 来极大提高文本翻译API的响应速度,百毫秒的响应,提升使用体验。
- 用量限制:可针对某个域名(或者开通API接口的key)来设定它的 用量限制 ,如果你是网络公司,你可以以套餐的形式卖给使用用户。
- 管理接口:可以通过开放的 管理API接口 ,来实时获取当前有哪些域名(或 key)在使用、翻译的字符数有多少、等等。
- 数据隐私:接口请求、缓存数据等完全都在自己的服务器上,数据隐私无需担忧。
- 并发控制:可自由定义每秒的并发请求上限,以及调用大模型进行翻译时请求线程池的线程上限,以极大缩减接口等待的耗时。另还可以通过管理接口实时获取当前请求线程池的并发数等
2. 付费声明
注意,翻译服务的私有化部署是要我们的一个收费服务。
但是它对于开源、公益 等非盈利场景是免费赠送的!如果你符合要求,喊我免费拿。
此外它还有两种方式获取:
方式一:付费购买
这个是可以私有部署的,开放标准openai接口,支持你在无网络环境下,私有部署大模型、机器翻译、… 等,然后接入。 授权费用七千元,第二年起每年有1000元的使用费。如果后续发布新版本,你可以一直持续更新到最新版本。
如果你不需要后续服务支持,也可以不需要再支付后续的每年这个一千元费用。
(如果你有一个系统,想用它来给你的系统做多语言支持,可以走软件绑定授权,这样你可以给你的客户私有部署时,本翻译系统也顺带一并部署,不限制部署数量、次数,但只限制你这个软件使用)
支持对公账户转账及开普通电子发票。
方式二:参与贡献
如果你是开发人员,我们建议你参与我们 translate.js 的完善及周边帮助,打个比方:
- 完善 translate.js 的某个功能
- 承接我们的一些开发任务(html、js、css、java 等等任何一种熟悉都行)
- 基于它给某个开源框架做适配
- 开发一些第三方插件,比如 React等插件
- 如果你接入的平台本身有一定流量,可以在某个位置加上一句声明,多语言切换能力有 translate.js 提供支持,并加上我们的开源仓库链接
- 你技术不行、平台刚开始也没什么流量,那你还可以给发推文提高曝光
凡是你符合以上某条,都可以跟我们聊,对项目有贡献且达标,我们会对你开放。如果你有什么更好的想法,也欢迎联系提出,都可以商量。
我的联系方式
联系我: https://translate.zvo.cn/4030.html
3. 进行部署
3.1 服务器规格
- CPU:1核
- 架构:x86_64 (也就是 Intel 的CPU )
- 内存:1G
- 操作系统:
- CentOS 7.4 (这个版本没有可选 7.6 、7.2 等,7.x 系列的都可以)
- openEulor 20 (如果没有 20 版本那就选 22 版本)
- RockyLinux 8
- EulerOS 2.0
- 系统盘:默认的系统盘就行。无需数据盘
- 弹性公网IP:按流量计费(带宽大小10MB。如果你只是你自己用,翻译的量不大,你完全可以选1MB带宽)
- 所在区域: 服务器所在区域最好选海外,比如美国、新加坡等,最好不要选中国大陆及香港服务器。(如果你的翻译服务也私有部署,区域无任何限制。)
- 其他的未注明的,都按照怎么省钱怎么来选即可。比如云服务器可能有多个型号,比如什么s3、s6、t6的,你就选最便宜的就行。(一般t6是最便宜的,选它就行)。另外有什么轻量级了啥的,就选价格便宜的轻量级服务器。
- 安全组:要开放22、80这两个端口。如果你想自定义端口号,可以部署完后 单独设置端口号
3.2 前提
一定要干净的服务器,不要装乱七八糟的宝塔了、什么面板了、乱七八糟的东西!!!
3.3 一键部署
执行以下shell命令进行一键部署。
yum -y install wget && wget https://gitee.com/mail_osc/translate/raw/master/deploy/service.sh -O ~/install.sh && chmod -R 777 ~/install.sh && sh ~/install.sh
3.4 填写授权码
私有部署的服务器上,执行命令:
less /mnt/service/logs/translate.service.log
找到:
----------Machine Code----------04eb9c95a10a528102a45b3f61c06d3d--------------------------------
将你的这个机器码 发给我
我会给你一个短期的授权码。
将授权码配置进去,修改 /mnt/service/config.properties 增加一行设置:
authorize=xxxxx
然后重启翻译服务 (执行命令脚本 /mnt/service/start.sh )
3.5 设置翻译通道
可选一:(推荐)直接访问你的服务器 ip,即可看到一个引导安装的提示,如果你的服务器能访问外网,可以直接接入GiteeAI 模力方舟大模型平台的大模型,方便快捷省事,直接按照提示进行即可完成整个安装。
可选二:如果你想无网络环境的私有部署,不使用云平台的大模型,而是私有部署的大模型,你可以点此查看各种翻译通道如giteeai、openai、ollama、小牛翻译等等,可以无网络环境私有化部署的各种通道详细说明 选择ni你合适的某个翻译通道进行接入即可。
3.6 增强 translate.js 的使用效果
这一步,你可以待下面全部流程走完,网站接入完了后,在回过来进行这几步。
需要注意的是,下面这三种是你应该重点重视且进行配置的,因为这几个能非常明显的提高用户体验!这是开源版本所没有的!
config.properties 配置文件的更多配置方式可点此查阅
3.7 运行日志的说明
你可以从服务器中查看相关日志情况。
日志存放于 /mnt/service/logs/ 目录下
详细的说明及解释,可参考: https://translate.zvo.cn/534845.html
4. 翻译测试
在此,通过一个文本翻译开放API接口来进行翻译测试,以测试是否部署成功,能否正常进行翻译。
4.1 API翻译接口
请求 URL :http://你的服务器ip/translate.json
请求方式 :POST
请求参数 :
- to 将文本翻译为什么语种。可传入如 english 更多语种可访问 http://你服务器的ip/language.json 就能看到
- text 需要翻译的语言。格式如 [“你好”,”世界”] 它是 json 数组格式,支持一次翻译多个不同的文本,每个文本可以分别是不同的语言。
响应示例 :
{"result":1,"info":"success","to":"english","text":["Hello","World"]}
注意,header 头的 Content-Type 要么不设置,如果设置的话值是 application/x-www-form-urlencoded
你可以直接通过下面的 3.2 来进行测试是否能进行翻译
4.2 curl 翻译示例
为了方便理解上面的 API 接口使用,这里给出了一个 curl 请求的示例,另外这个示例你也可以直接复制就能运行使用,看到效果
curl --request POST--url http://你服务器的ip/translate.json--header 'content-type: application/x-www-form-urlencoded'--data to=english--data 'text=["你好,世界","让我们探索星辰大海"]'
你可以将其中的请求url换成你自己的服务器ip进行测试。
如果能正常翻译,那说明部署成功。
5. translate.js 中使用
5.1 切换到私有部署
如果你已经使用我们开源免费的方式介入 translate.js 试过了,那么在原本接入的js设置的代码中,多增加一个设置即可:
translate.request.setHost(['http://121.121.121.121/']);
将这里面的ip地址换成你服务器的ip,注意开头,及结尾还有个 / 别拉下 ,详细说明参考 https://translate.zvo.cn/4068.html
如此,翻译请求接口就会走您自己服务器了。
另外 translate.js 这个js文件你可以自己下载下来放到你自己项目里使用,它没有任何别的依赖,是标准的原生 JavaScript 最新的这个translate.js文件下载地址点此查看
5.2 你应该要了解的
看一下下面几个,提升用户使用体验
6. 可选配置 - SSL 证书
这里部署的是http访问的,如果你网站是https的,可能ajax请求时会被拦,这时你就要自己给translate.service配置上https访问了,配置的方式比如 开通个CDN了、或者想办法弄个nginx进行中专,在nginx上配置https 等等。
如果你通过nginx方式来配置ssl证书,你要留意,translate.service 部署后默认它是占用80端口的,你可以 修改它的端口号 ,比如改成81端口, 那么你nginx 就可以使用 80、443 这俩端口,不至于80端口被占用了。