chat with llms
1.0.0
Chat With LLMs 是一款网络应用程序,使用户能够与来自领先人工智能提供商的各种大型语言模型 (LLM) 聊天。它允许用户在对话中切换模型,而不会丢失任何聊天上下文。
该项目使用各种大型语言模型 (LLM) 集成了 API 驱动的文本生成。用于编排这些交互的框架是 LangChain,允许跨不同提供商的无缝集成和动态模型选择。
目前,该平台支持六家不同的法学硕士提供商,每个提供商都提供一系列聊天模型:
那些是
身份验证:Web 应用程序利用 Google OAuth 2.0 进行安全的用户身份验证和登录。
后端服务器:处理用户消息,并使用 Python 的 FastAPI 框架生成来自 LLM 的响应。后端还集成了LangChain框架,负责提示生成和管理对不同LLM提供商的API调用。
事件流:服务器发送事件 (SSE) 是一种通过 HTTP 从服务器到客户端的实时单向通信标准。通过SSE,服务器可以将生成的数据令牌逐个令牌推送到客户端,而无需客户端重复请求它们。
Firestore 数据库:用户信息、聊天详细信息和聊天历史记录存储在 Google 的 Firestore 数据库中。 Firestore 因其免费套餐、高性能和自动扩展功能而被选中,使其成为动态、不断增长的应用程序的理想选择。
ReactJS 前端:前端是用 ReactJS 构建的,提供交互式和响应式用户界面,以便与聊天应用程序无缝交互。
复制.env.example
文件并将其重命名为.env
:
cp .env.example .env # For Unix/Linux
copy .env.example .env # For Windows
在文本编辑器中打开.env
文件,然后输入必要的变量及其相应的值。这些变量通常是 API 密钥和其他特定于环境的配置。
docker-compose up
所有服务将在以下端口上启动并运行:
Backend FastAPI : localhost:8080
ReactJS Frontend : localhost:3000
pip install pipenv
pipenv install
nodemon
or
uvicorn app:app --port 5000
cd web
npm install
npm start
使用下面的链接访问 swagger 文档
http://localhost:8080/docs