discontext
1.0.0
一个简单的Discord机器人,可让您通过语义搜索消息。
我之所以开始这个项目,是因为我想了解单词嵌入式和矢量数据库,因此我不确定我是否会完成它。如果您想使用它,则必须弄清楚如何自己托管它。
这显然仍在进行中。仍然需要大量工作,尤其是在数据库方面。向量数据库相对易于使用,但很难维护。
另外,我将其作为Discord机器人构架的原因是,因为我喜欢这个平台,它的搜索功能并不那么好。我不确定我是否会到达可以托管此机器人供他人使用的地步,但是如果这样做,我会更新本节。
最后一件事,我不确定我是否使用正确的抽象/结构,因为我对打字稿的经验不太经验。不过,我试图利用一些抽象,使其更容易交换数据库和嵌入式服务。如果您有任何建议,请告诉我。
它的主要目的是帮助您找到所知道的消息(是否在服务器中),但您不记得确切地记得它们是如何措辞的。它使用OpenAI的ADA模型为每个消息生成嵌入式,并将它们存储在矢量数据库(QDRANT)中。
然后,您可以搜索与给定查询的语义相似的消息。
您需要创建一个Discord机器人并将其添加到服务器中。
您还需要创建一个OpenAI帐户并获取API密钥。
cp .env.template .env # And fill in the missing values假设您已安装了节点和Docker,则可以运行以下命令以在开发模式下启动bot:
npm install
npm run commands:deploy # Deploys bot commands to your dev server (you need to do this every time you add a new command)
bash start-db.sh # Starts a docker container with a vector database
npm run start:dev