这是一个自动读取邮箱新邮件,并通过Ollama AI模型生成回复内容,然后自动发送回复给发件人的工具。支持163邮箱、QQ邮箱等主流邮箱。
- 自动检测邮箱中的新邮件(支持163邮箱、QQ邮箱等)
- 通过Ollama API调用AI模型(默认使用gemma3:1b)生成智能回复
- 自动发送回复邮件给发件人
- 记录已处理的邮件,避免重复回复
- 支持配置检查频率、回复前缀等参数
- Python 3.6 或更高版本
- 安装必要的依赖包:
requests - Ollama服务正在本地运行(默认地址:http://localhost:11434)
- 已安装gemma3:1b模型(或修改配置使用其他模型)
-
确保已安装Python和Ollama
-
下载本工具的所有文件到本地
-
编辑配置文件
config.json,设置以下信息:对于163邮箱,配置如下:
{ "email_config": { "email": "your_email@163.com", // 你的邮箱地址(163邮箱) "password": "your_password_or_app_password", // 163邮箱密码或授权码 "imap_server": "imap.163.com", "smtp_server": "smtp.163.com", "imap_port": 993, "smtp_port": 465 }, "ai_config": { "use_ai_reply": true, "model": "gemma3:1b", // 使用的AI模型 "api_url": "http://localhost:11434/api/generate", // Ollama API地址 "system_prompt": "你是一个专业的邮件回复助手,请根据收到的邮件内容生成恰当的回复...", "temperature": 0.7 }, "reply_config": { "reply_subject_prefix": "Re: ", "check_interval": 300, // 检查间隔(秒) "processed_emails_file": "processed_emails.txt" } }对于QQ邮箱,配置如下:
{ "email_config": { "email": "your_qq_email@qq.com", // 你的QQ邮箱 "password": "your_imap_password", // QQ邮箱IMAP授权码 "imap_server": "imap.qq.com", "smtp_server": "smtp.qq.com", "imap_port": 993, "smtp_port": 465 }, "ai_config": { "use_ai_reply": true, "model": "gemma3:1b", // 使用的AI模型 "api_url": "http://localhost:11434/api/generate", // Ollama API地址 "system_prompt": "你是一个专业的邮件回复助手,请根据收到的邮件内容生成恰当的回复...", "temperature": 0.7 }, "reply_config": { "reply_subject_prefix": "Re: ", "check_interval": 300, // 检查间隔(秒) "processed_emails_file": "processed_emails.txt" } }
- 登录QQ邮箱网页版
- 点击顶部的"设置"按钮
- 选择"账户"标签
- 找到"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务"部分
- 开启"IMAP/SMTP服务"
- 按照提示获取授权码
- 将获取的授权码填入配置文件中的
password字段
- 登录163邮箱网页版:使用您的163邮箱账号和密码登录网页版邮箱。
- 进入设置页面:点击顶部导航栏中的"设置"按钮。
- 选择POP3/SMTP/IMAP设置:在设置页面中,选择"POP3/SMTP/IMAP"选项卡。
- 开启IMAP/SMTP服务:找到并开启"IMAP/SMTP服务"选项。
- 设置/获取授权码:
- 首次开启服务时,系统会提示设置授权码
- 授权码不是邮箱登录密码,而是专门用于第三方客户端的密码
- 请妥善保存生成的授权码,因为它只会显示一次
- 配置授权码:将生成的授权码填入
config.json文件中的password字段
重要提示:
- 163邮箱有严格的安全限制,必须使用授权码而不是登录密码
- 如果遇到"Unsafe Login"错误,请确认:
- 已正确开启IMAP/SMTP服务
- 正在使用正确的授权码(不是邮箱密码)
- 授权码没有包含空格或特殊字符
- 可能需要在网页版邮箱中进行安全验证,然后再尝试
直接双击 run_auto_reply.bat 文件,程序会自动检查依赖并启动。
- 打开命令提示符(CMD)
- 切换到程序所在目录
- 运行命令:
python qq_email_ai_reply.py
程序启动后会:
- 加载配置文件
- 检查已处理的邮件记录
- 每间隔一段时间(默认300秒)检查一次邮箱中的新邮件
- 对每封新邮件:
- 提取邮件内容
- 通过AI生成回复
- 发送回复给发件人
- 标记邮件为已处理和已读
- 请确保Ollama服务正在运行,并且已安装所需的AI模型
- 请正确配置QQ邮箱的IMAP授权码,不是登录密码
- 程序运行时需要保持网络连接
- 如需修改AI模型,确保在Ollama中已安装该模型
- 处理的邮件ID会保存在
processed_emails.txt文件中,避免重复回复
程序会生成email_ai_reply.log日志文件,记录运行状态和错误信息,方便排查问题。
A: 请检查邮箱地址和授权码是否正确,以及是否已开启IMAP服务
A: 请检查Ollama服务是否运行,以及API地址和模型名称是否正确
A: 可以修改配置文件中的system_prompt来自定义AI的回复风格
本项目仅供个人学习和使用。