An open API service indexing awesome lists of open source software.

https://github.com/exp-codes/py-transgpt

python 长文本/多平台翻译器(目前支持 baidu、tencent、chatgpt)
https://github.com/exp-codes/py-transgpt

ai baidu chatgpt programming python tencent translation

Last synced: 6 months ago
JSON representation

python 长文本/多平台翻译器(目前支持 baidu、tencent、chatgpt)

Awesome Lists containing this project

README

        

# py-transgpt

> python 长文本/多平台翻译器(目前支持 baidu、tencent、chatgpt)

------

## 简介

封装了 baidu、tencent、chatgpt 翻译平台的接口的差异性,只需要简单几步配置即可使用。

同时支持长文本翻译:原生的平台接口有字数限制,但是 [transgpt](https://github.com/EXP-Codes/py-transgpt) 会自动切割长文本为多段再调用接口翻译、翻译结果自动拼接为长文本。

## 运行环境

![](https://img.shields.io/badge/Python-3.8%2B-brightgreen.svg)

## 安装说明

执行脚本:

```
python -m pip install --upgrade pip
python -m pip install py-transgpt
```

## 使用说明

### 百度翻译

> 使用前需要先到 [百度翻译开放平台](https://fanyi-api.baidu.com/manage/developer) 生成 API Key

```python
# 使用方法 1
from transgpt.translate import trans, BAIDU
result = trans(
${CONTENT},
from_lang='jp',
to_lang='zh',
platform=BAIDU,
api_id=${BD_APP_ID},
api_key=${BD_APP_KEY}
)

# 使用方法 2
from transgpt.trans_baidu import BaiduTranslation
client = BaiduTranslation(api_id=${BD_APP_ID}, api_key=${BD_APP_KEY})
result = client.translate(${CONTENT}, from_lang='jp', to_lang='zh')
```

更多使用方法详见单元测试:

- [使用方法 1](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L70)
- [使用方法 2](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L84)

![](./imgs/baidu.jpg)

### 腾讯翻译

> 使用前需要先到 [腾讯云机器翻译](https://console.cloud.tencent.com/cam/capi) 生成 API Key

```python
# 使用方法 1
from transgpt.translate import trans, TENCENT
result = trans(
${CONTENT},
from_lang='ja',
to_lang='zh',
platform=TENCENT,
api_id=${TX_SECRET_ID},
api_key=${TX_SECRET_KEY}
)

# 使用方法 2
from transgpt.trans_tencent import TencentTranslation
client = TencentTranslation(api_id=${BD_APP_ID}, api_key=${BD_APP_KEY})
result = client.translate(${CONTENT}, from_lang='ja', to_lang='zh')
```

更多使用方法详见单元测试:

- [使用方法 1](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L109)
- [使用方法 2](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L127)

![](./imgs/tencent.jpg)

### ChatGPT AI 翻译

> 使用前需要先到 [OpenAI](https://platform.openai.com/account/api-keys) 生成 API Key

```python
# 使用方法 1
from transgpt.translate import trans, CHATGPT, CHATGPT_35_TURBO
result = trans(
${CONTENT},
platform=CHATGPT,
api_id='',
api_key=${GPT_API_KEY},
args={
ARG_ROLE: ${GPT_AI_ROLE}, # Option: 定义人设
ARG_OPENAI_MODEL: CHATGPT_35_TURBO,
ARG_PROXY_IP: '127.0.0.1',
ARG_PROXY_PORT: 8888
}
)

# 使用方法 2
from transgpt.trans_chatgpt import ChatgptTranslation, CHATGPT_35_TURBO, ARG_ROLE
client = ChatgptTranslation(${GPT_API_KEY}, CHATGPT_35_TURBO, '127.0.0.1', 8888)
result = client.translate(${CONTENT}, from_lang='日文', to_lang='中文') # 使用内置 AI 人设
result = client.translate(${CONTENT}, args={ ARG_ROLE: ${GPT_AI_ROLE} }) # 使用自定义 AI 人设
```

更多使用方法详见单元测试:

- [使用方法 1](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L156)
- [使用方法 2](https://github.com/EXP-Codes/py-transgpt/blob/ae843092be17c53cfd40686129fa9e2976418042/test/test.py#L176)

![](./imgs/chatgpt.jpg)