分享

大航海大模型开发ChatBot项目复现

 新用户36537660 2024-03-04 发布于河北

大航海资料都已开放,今天复现了下其中大模型开发的项目:ChatBot。项目使用GPT API,可以生成文字、语音、图像,并基于RAG进行私有化知识的问答,刚好过程记录了一下,分享给大家,照着做很容易就能实现。

一、实战项目介绍-ChatBot

这次的实战项目主要利用:OpenAI API + RAG,构建属于自己的聊天机器人,其中涉及的API包括:Chat接口、Images接口、Audio接口。向量数据库使用Chromadb。我们来看看项目效果图:

多轮对话

生成图片

生成语音

RAG(基于私有化知识回答)

二、架构设计

1.使用框架介绍

Gradio:前端框架,底层使用FastAPI。负责页面渲染与交互。

FastAPI:后端框架,HTTP服务借助FastAPI构建。负责构建静态资源(语音、图片)下载服务。如果不需要静态资源,可以直接启动,这里使用fastapi启动

2.架构模块浅析

ChatManager:主要负责管理ChatBot(菠菜自主研发的框架可支持多ChatBot的定义与选择),负责对Gradio以及FastAPI的通用封装,对外提供服务。为什么起名字为chatbot_manager,因为可以实现各种chatbot,可以自己定义,参考ChatBot。

ChatBot:用于定义自己的ChatBot,本次代码实战,已经封装好了一个ChatBot名为"FirstChatBot”。如果想构建自己的ChatBot,可以参考”FirstChatBot”

FirstChatBot:实现了本次实战的所有功能,包括,图片生成、语音生成、RAG

chatbot_:参考架构图的ChatBotManager

./first_chatbot/:参考架构图的FirtChatBot

./first_chatbot/tools:用于实现FirstChatBot的插件能力

./first_chatbot/rag:用于实现FirstChatBot的RAG能力

./data/doc/:用于存储RAG的私有化数据:

./data/db/:用于ChromaDB(向量数据库)的数据存储

:用于封装常用的函数功能

三、项目代码

代码地址:https://github.com/daijun4you/great-navi

clone代码

git clone https://github.com/daijun4you/great-navi

cd great-navi

pip install --upgrade -r requirements.txt-i https://pypi.douban.com/simple

安装依赖包(此处有基础的话建议直接用Anaconda或pycharm其他等等,网太慢用豆瓣源安装)



pyrsa-decrypt.exemarkdown-it.exe等安装包

如果报错找不到一些依赖,单独pip安装再运行,这也是前文推荐使用conda的原因

最后来到这一步的报错,提示拒绝访问,这里运行的时候添加--user参数赋予权限就可以

最终安装完毕

运行脚本

python chatbot_

​浏览器打开http://localhost:8123/就可以啦

特别感谢菠菜老师、鹤涵老师提供项目和API,并且无须额外的网络通道。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多