Skip to content

Telegram频道消息翻译转发工具,使用Azure OpenAI进行翻译

License

Notifications You must be signed in to change notification settings

heishen6/telegram-channel-translator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram 频道消息翻译转发工具

这是一个Python应用程序,可以监听指定的Telegram频道,使用Azure OpenAI服务翻译消息内容,然后将翻译后的内容转发到另一个频道。

功能特点

  • 使用Telegram API直接连接(无需使用机器人)
  • 启动时可查看并设置要监控的频道
  • 监听多个指定Telegram频道的消息
  • 使用Azure OpenAI服务翻译消息内容
  • 将原文和翻译后的内容转发到指定频道
  • 支持文本消息的处理

前提条件

安装

  1. 克隆仓库:
git clone https://github.com/yourusername/tg_translate.git
cd tg_translate
  1. 安装依赖:
pip install -r requirements.txt
  1. 配置config.json文件(第一次运行时会自动创建):
{
    "telegram": {
        "api_id": "你的API_ID",
        "api_hash": "你的API_HASH",
        "session_name": "tg_translate_session",
        "source_channels": [],
        "target_channel": ""
    },
    "azure_openai": {
        "api_key": "你的AZURE_OPENAI_API_KEY",
        "endpoint": "https://your-resource-name.openai.azure.com/",
        "api_version": "2023-05-15",
        "deployment_name": "你的模型部署名称"
    },
    "settings": {
        "max_concurrent_translations": 3,
        "queue_processing_delay": 0.5
    }
}

使用方法

  1. https://my.telegram.org获取Telegram API ID和API Hash
  2. 获取Azure OpenAI API密钥和端点
  3. 首次运行程序时,需要进行Telegram登录验证:
python bot.py
  1. 登录后,程序会显示你的所有频道列表
  2. 根据提示选择要监控的源频道和目标频道
  3. 设置完成后,程序将自动开始监听消息并进行翻译转发

性能和并发控制

程序内置了消息队列和并发控制机制,可以通过config.json中的settings部分进行配置:

  • max_concurrent_translations: 最大并发翻译数量,控制同时发送到Azure OpenAI的请求数
  • queue_processing_delay: 队列处理延迟,单位为秒,控制处理消息的间隔时间

这些设置可以帮助你:

  1. 避免超出API速率限制
  2. 合理分配系统资源
  3. 确保消息按顺序处理

获取Telegram API凭据

  1. 访问https://my.telegram.org并登录
  2. 进入"API development tools"
  3. 创建一个新应用(如果没有)
  4. 获取API ID和API Hash
  5. 将这些凭据填入config.json文件

注意事项

  • 首次登录时,Telegram可能会发送验证码到你的Telegram账号
  • 确保你的Azure OpenAI部署能够处理翻译需求
  • 对于大量消息,请注意API使用限制
  • 非文本消息(如图片、视频等)目前不会被处理

许可

MIT

About

Telegram频道消息翻译转发工具,使用Azure OpenAI进行翻译

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages