终结拖延症的人工AI

ProctorAI 是一种多模式人工智能,它会监视你的屏幕,如果发现你拖延,它就会提醒你。Proctor 的工作原理是每隔几秒(以指定的间隔)截取你电脑的屏幕截图,并将其输入到多模式模型中,例如 Claude-3.5-Sonnet、GPT-4o 或 LLaVA-1.5。如果 ProctorAI 确定你没有集中注意力,它就会控制你的屏幕,并用个性化消息对你大喊大叫。在让你保证停止拖延后,ProctorAI 会给你 15 秒的时间来关闭拖延的根源,否则会继续骚扰你。

一个知道什么算拖延、什么不算拖延的智能系统。与传统的网站拦截器相比,ProctorAI 非常智能,能够理解细微的工作流程。这有很大的不同。在每次 Proctor 会话之前,用户都会输入他们的会话规范,明确告诉 Proctor 他们计划做什么、会话期间允许什么行为以及不允许什么行为。因此,Proctor 可以处理细微的规则,例如“我可以上 YouTube,但只能观看 Karpathy 关于 Makemore 的讲座”。没有其他生产力软件可以处理这种级别的灵活性。

图片描述

ProctorAI 的目标是成为这样的女人,但可以随时待命、更加尖刻、并且全面了解你的工作。

它是活的! Proctor 的一大设计目标是让它感觉起来是活的。根据我的经验,我倾向于不违反规则,因为我可以直观地感觉到人工智能在注视着我——就像考生在感觉到考试监考员在注视着他们时作弊的可能性就会大大降低一样。

🚀 设置和安装

要启动 GUI,只需输入 ./run.sh。您可能会看到一些弹出窗口,要求您允许终端访问某些实用程序,您应该启用这些实用程序。

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>git clone https://github.com/jam3scampbell/ProctorAI
python -m venv focusenv
source focusenv/bin/activate
pip install -r requirements.txt
./run.sh
</code></span></span></span></span>

根据您想要使用的模型,您应该将以下 API 密钥定义为环境变量:

  • OPENAI_API_KEY
  • ANTHROPIC_API_KEY
  • GEMINI_API_KEY
  • ELEVEN_LABS_API_KEY

为了保持运行 API 价格低廉,我建议使用two_tier模式,以本地模型(例如 LLaVA)作为路由器模型。为此,您将需要Ollama并安装llava模型。在启动 ProctorAI 之前,请确保 Ollama 在后台运行。

⚙️ 选项/设置

以下内容均可在设置页面中切换或用作参数main.py

model_name主要型号API名称
tts启用 Eleven Labs 文本转语音功能
voice选择 Eleven Labs 扬声器的声音
cli_mode无需 GUI 即可运行
delay_time每次截图之间的时间间隔
initial_delay监考人员开始观察你的屏幕前需要等待的时间(有助于让你有时间打开你想要处理的内容)
countdown_time监考员给出的时间来消除拖延的根源
user_name输入您的姓名,让体验更加个性化
print_CoT将模型的思路打印到控制台
two_tier如果激活,则首先将图像发送到 router_model,并且只有当 router_model 认为用户正在拖延时才将其发送到主模型。这有助于降低 API 成本。路由器模型会收到更严格的提示,因此它倾向于标记它认为可疑的行为。
router_model用作路由器的模型的 API 名称

🎯 了解此存储库

目前,基本上所有功能都包含在以下文件中:

  • main.py:包含截屏、调用模型和启动拖延事件的主控制循环
  • user_interface.py:运行用 PyQT5 编写的 GUI
  • api_models.py:提供调用不同模型系列的统一接口
  • procrastination_event.py:包含当用户被发现拖延时显示弹出窗口的方法,以及计时器告诉用户停止他们正在做的事情
  • utils.py:用于截屏、tts 等功能
  • config_prompts.yaml:LLM 支架系统中使用的所有提示

程序运行时,它会在根目录中创建一个settings.json文件和一个screenshots文件夹。如果启用了 TTS,它还会写入yell_voice.mp3src文件夹。

🌐 路线图和未来改进

该项目仍在积极开发中。我希望接下来添加一些功能:

  • 针对任务/分布对 LLaVA 模型进行微调
  • 安排会话,让它在你打开计算机时开始运行
  • 让退出程序变得非常烦人(至少在用户完成预定义的会话之前)
  • 记录、时间跟踪和汇总统计
  • 改进聊天功能,让模型更好地了解状态/上下文
  • 准备一个草稿文件夹,这样当你做和前几天一样的任务时就不必重新输入提示
  • TTS 播放时将计算机上的所有其他声音静音(这样就不会被音乐淹没)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值