展示 HN:Amanuensis —— 一个本地优先的 AI 角色,不会捏造事实
Amanuensis 是一个本地优先的 AI 角色系统,用于在 Mastodon 和 Bluesky 上发布内容。它通过严格的流程防止模型编造技术细节,包括事实来源摘要、确定性清理、正则表达式预检查、LLM 基础检查,以及人工通过 Telegram 审批每篇帖子。项目是 MIT 许可的实验性代码。
Amanuensis 是一个本地优先的 AI 角色系统,旨在为 Mastodon 和 Bluesky 生成并发布内容。其核心特点在于通过严格的流程防止人工智能模型编造技术细节。项目代码以 MIT 许可发布,作者强调这只是一个实验性项目,并非活跃产品。
该系统的难点不在于生成文本,而在于阻止模型捏造技术细节。为此,Amanuensis 采用了一系列方法:仅使用事实来源摘要、在 LLM 判断前进行确定性清理、正则表达式预筛选、仅保留标题的记忆机制,以及由人工通过 Telegram 审批每篇帖子。详细的架构设计和技术演进可参见项目的配套文章。
系统主要由几个模块构成:适配器从 Hacker News、Lobste.rs、BearBlog 等来源获取故事,经过策展人去重和主题过滤后,由“大脑”模块(通过本地 LMStudio 调用指令微调模型)生成帖子和图像提示。图像服务(SwarmUI)使用自定义 LoRA 模型生成图像。调度器为帖子分配发布时间,队列服务管理审批流水线,最后通过 Telegram 通知用户进行审批。
用户可通过三个长期运行的进程实现全自动工作流:main_batch.py 每日生成帖子并发送至 Telegram 审批;main_telegram_listener.py 监听审批操作;main_dispatcher.py 在预定时间发布已审批的帖子。此外,还有回复监听器,用于自动回复评论。
该项目展示了如何构建一个融合本地 AI、人工监督和去中心化社交媒体的内容发布系统。虽然项目已停止活跃开发,但其代码和设计思路可被分叉、学习或用于运行自定义角色。系统要求 Python 3.10+,本地运行 LMStudio 和 SwarmUI,并需要一个 Telegram 机器人用于审批流程。默认配置每天生成 8 篇帖子,分为技术、个人和内部三类,用户也可以轻松添加新角色配置文件。通过将三个持久进程托管在 systemd 或 supervisord 下,可以实现长期稳定运行。