doc-buddy 项目介绍
项目概述
doc-buddy 是一个基于 Telegram 的聊天机器人,由 GPT 和 OpenAI 技术驱动。用户可以上传 PDF 和其他文档,机器人能够学习这些文件的内容,从而提供基于文档的问答服务。这对于处理过多信息时需要快速参考指南的场景尤为有用。
项目要求
要使用 doc-buddy,需要以下几个条件:
- 需要拥有自己的 OpenAI 账户及相应的 API Key。
- 需要一个 Pinecone 账户及其 API Key,用于嵌入文件的数据管理。
- 可以使用一处类似 s3 的存储服务来保存文件,以便有需要的时候进行重新索引。
- 要从 Telegram 的 BotFather 获取一个密钥,用来创建机器人。
可选需求
- 如果不使用 DigitalOcean 的一键部署方式,则需要单独运行 OpenAI 的嵌入项目。并且将环境变量
EMBEDDINGS_URL
设置为对应的项目URL。 - 如果希望直接部署到 DigitalOcean 的应用平台,则需要一个 DigitalOcean 账户。
快速开始
- 使用 BotFather 创建一个新的 Telegram 机器人。获取的令牌可以用于后续的
TELEGRAM_TOKEN
环境变量设置。这一步的详细指南可在 Telegram 的官方文档中找到。 - 创建一个 Pinecone 账户,并获取其中的 Pinecone API Key,用于
PINECONE_API_KEY
环境变量。 - 设置一个 Digital Ocean Space,或者其他类似 s3 的存储服务,用于存储上传的文档。
- 通过 Digital Ocean 提供的按钮,可以在不到 5 分钟内完成直接部署。
- 在 Digital Ocean 应用创建过程中,替换环境变量的默认值为自己生成的值。
- 应用将自动启动并连接到 Telegram API。
- 打开 Telegram,与创建的机器人开始聊天,测试其功能。
部署应用
用户可以点击相应的按钮将应用直接部署到 DigitalOcean 的应用平台。在部署过程中,请确保选择Basic
计划,因为默认设置是Pro
。聊天功能通常运行在月费 $5 的实例上就足够,而 memory 组件可能运行在 $5 或者更快的 $10 实例上。
环境变量
在 DigitalOcean 应用平台中,用户需要设置以下变量:
OPEN_AI_MODEL
: 默认为 "gpt-3.5-turbo"。OPEN_AI_KEY
: 用户的 OpenAI API Key。TELEGRAM_TOKEN
: 从 BotFather 获取的令牌。- 及其他与存储和数据管理相关的 API 和秘钥信息。
用法 - 上传文档
用户只需在 Telegram 聊天中上传文档,doc-buddy 就会学习该文件的内容。此功能方便用户快速获取文档信息。
自定义助手
用户可以在 prompt.md
文件中编辑给助手的提示,实现个性化响应。
赞助商
该项目由 Ellie - AI 邮件助手赞助。Ellie 学习用户的写作风格,并以用户的风格撰写回复。
doc-buddy 项目为那些需要快速、高效回复的大量文档信息的用户提供了便捷的解决方案,易于配置和使用,较大程度上节省时间和精力。