yu-auto-reply 是一个基于 Java Spring Boot 的平台监控及自动回复工具,由知名开发者程序员鱼皮创建。它具备极高的灵活性,支持配置多种监控任务,并能一键快速部署。此项目特别适合需要自动化信息处理和回复的人群,例如技术社区管理者、在线问答平台的运营人员等。
application.yml
文件,主要涉及到以下几个方面:
# openAI 配置 openai: model: ${OPENAI_MODEL:text-davinci-003} apiKey: ${OPENAI_API_KEY:你的apiKey} # 知识星球配置 zsxq: cookie: ${ZSXQ_COOKIE:你的星球cookie} groupId: ${ZSXQ_GROUP_ID:你的星球id} silenced: ${ZSXQ_SILENCED:true} # 任务配置 task: list: - name: task1 monitor: zsxq answerer: openai cron: '0/30 * * * * ?'
MainApplication
,项目即可启动。通过 Railway 提供的一键部署功能,用户可以快速启用项目。用户只需点击部署按钮,设置自己的环境变量,项目即可在平台上运行。
项目采用多种设计模式实现高可扩展性和灵活性,特别是实现了监控者与回答者的解耦合。通过定义 Answerer
和 Monitor
接口,并使用中介者模式让 JobMediator
组合二者,生成监控者和回答者的过程则交由工厂模式处理,配置的读取和任务创建则由 Spring Scheduler 负责。
monitor/Monitor
抽象类。factory/MonitorFactory
的 createMonitor
方法中增加自定义监控器的创建逻辑。answerer/Answerer
接口。factory/AnswererFactory
的 createAnswerer
方法中增加自定义回答者 的创建逻辑。开发者非常欢迎贡献者在有问题时提交 PR 和 Issues,同时鼓励对编程感兴趣的朋友加入开发讨论,或者在需要项目教学时参考编程导航知识星球。
问:为什么优先支持知识星球?
答:由于 OpenAI 的 API 并不免费,而知识星球可以限制提问次数以防止滥用接口,因此首先支持。
通过上述简单介绍,相信大家对 yu-auto-reply 项目有了一个基本的了解。这个工具不仅适用面广,而且配置灵活,期待有更多人使用和贡献。