Skip to content

Latest commit

 

History

History
178 lines (111 loc) · 6.01 KB

README.md

File metadata and controls

178 lines (111 loc) · 6.01 KB

Chat AI Lite

语言: English, 中文 (这个文件).

Chat AI Lite 是一个多功能的 AI Web 应用,涵盖了各种 AI 场景,包括 AI 聊天、AI 本地知识库(RAG)、AI 助手、AI 数字人以及图像生成等。

功能特性 ✅

  • AI 聊天,支持 OpenAI、Claude、通义千问、谷歌 Gemini、Mistral 和 Moonshot 等 LLM 大模型
  • RAG 本地向量知识库,支持与 PDF、TXT、MD、Markdown、CSV、WORD、EXCEL 格式文档对话
  • AI 助手,支持根据 Prompt 创建专属 AI 助手
  • 文生图,支持 DALL·E 2、DALL·E 3
  • 管理模块,支持修改个人信息、用户管理、AI 助手管理等
  • 支持用户登录、注册,飞书用户授权登录、GitHub 用户授权登录
  • 支持 FastAPI
  • 支持设置主题
  • 数字人,支持 TTS 语音克隆,可创建专属语音数字人 (开发中)

快速开始 🚀

数据库(MySQL + Redis + FAISS 向量数据库)、后端(Python)、前端(VUE 3)。

环境要求:python 3.10+,node 16.14.x+, pnpm 8.4.x+

  1. 安装 MySQL,Redis

    FAISS 为向量数据库,是一个 python 库,下面在项目中使用 pip 安装即可,这里不需要安装

    • 分别到MySQL 官网Redis 官网按照步骤下载安装即可,无特殊要求。

    • MySQL 安装完成后,创建一个新 Schema (数据库名): chat-ai-lite

  2. 克隆项目并安装依赖

    git clone https://github.com/KevinZhang19870314/chat-ai-lite
    cd chat-ai-lite

    i. 安装前端依赖:

    pnpm i

    ii. 安装后端依赖:

    可以使用 PyCharm IDE,也可以使用命令行创建 python 虚拟环境 venv(推荐使用 PyCharm IDE 打开 deep-ai 目录自动创建虚拟环境,方便)

    创建完虚拟环境之后,执行下面命令安装依赖:

    cd deep-ai
    pip install --no-cache-dir -r requirements.txt
  3. 填写环境变量.env

    i. 填写前端环境变量

    cd chat-ai-lite # 回到根目录
    cp .env.example .env

    打开此根目录下的.env文件,按照提示填写变量,默认情况下只需要填写VITE_JWT_SALT_BASE64的值即可。

    ii. 填写后端环境变量

    cd deep-ai
    cp .env.example .env

    打开此deep-ai目录下的.env文件,按照提示填写变量,选填的可忽略,使用时自然知道要填写。默认情况下只需要填写:

    • OPENAI_API_KEY: OpenAI 的 api key,可至这里创建

    • STORAGE_ROOTCOMMON_STORAGEUPLOAD_FILE_PATH:参考示例值填写

    • JWT_SALT_BASE64:与前端的值VITE_JWT_SALT_BASE64填写一致,后端创建用户时使用。

    • JWT_SECRET_KEY:按照.env文件中注释提示创建即可

  4. 运行项目

    i. 运行后端:

    cd deep-ai
    python home.py

    此时,会自动创建 MySQL 数据库中的表结构,浏览器打开 http://localhost:8000/docs 可看到 FastAPI API 文档页面。

    ii. 运行前端:

    使用 vscode 或者命令行窗口执行如下命令启动前端项目,此时浏览器打开 http://localhost:1002/ 可看到登录页面。

    cd chat-ai-lite # 回到根目录
    pnpm i

    iii. 输入超级管理员用户名和密码,登录 Chat AI Lite 应用。

    用户名: [email protected]

    密码:123456

至此,项目安装运行起来了,欢迎来到 Chat AI Lite 世界!🎉🎉🎉

容器化 📦

支持容器化部署及运行

参考快速开始章节配置好.env文件之后执行下面的命令

cd chat-ai-lite # 回到根目录
docker-compose up

等待命令执行出现类似如下 log 表示成功,浏览器打开 http://localhost:10003/ 即可运行项目。

deep_ai     | 2024-06-04 08:31:56 WARNING  Deleting embedded tool: 6ff50bc4-b5cb-448f-9b65-ac07a45d01ff - Hello, Deep AI!
deep_ai     | 2024-06-04 08:31:56 DEBUG    Ids to be deleted: ['6ff50bc4-b5cb-448f-9b65-ac07a45d01ff']
deep_ai     | 2024-06-04 08:31:56 INFO     Load existing FAISS db D:\\kevinzhang\\chat-ai-lite\\deep-ai\\storage\\common\\, index name is procedural
deep_ai     | 2024-06-04 08:31:56 INFO     procedural Loaded
deep_ai     | 2024-06-04 08:31:56 INFO     Total documents before removal: 1
deep_ai     | 2024-06-04 08:31:56 INFO     Removed 1 documents from index name: procedural
deep_ai     | 2024-06-04 08:31:56 WARNING  Newly embedded tool: 4a063b9b-53d8-487b-9ba2-e703fbc28fbe - get_the_day_of_week(tool_input) - 根据当前标准时间获取星期几或者礼拜几。 始终没有输入参数。
deep_ai     | 2024-06-04 08:31:56 WARNING  Newly embedded tool: 988b97e0-68c7-4294-9f08-c8d1c39c1c55 - get_the_time(tool_input) - Replies to "what time is it", "get the clock", "现在几点了?",“几点钟了?” and similar questions. Input is always None.
deep_ai     | 2024-06-04 08:31:57 [uvicorn.server] INFO:     Application startup complete.
deep_ai     | 2024-06-04 08:31:57 [uvicorn.server] INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

退出后别忘了执行如下命令关闭容器: docker-compose down

项目截图 📊

以下为项目前端页面部分截图

登录页面

聊天页面

AI 角色页面

RAG 本地知识库页面

RAG 文生图页面

数字人页面

个人信息页面

鸣谢 🙏

Chat AI Lite 参考了以下项目,在此感谢原作者的开源精神。