langchain4j-aideepin/README.md

122 lines
2.3 KiB
Markdown
Raw Normal View History

2024-02-15 14:29:57 +08:00
## Getting Started
2023-08-09 20:35:59 +08:00
> 声明:此项目只发布于 Github基于 MIT 协议,免费且作为开源学习使用。并且不会有任何形式的卖号等行为,谨防受骗。
2024-02-15 15:31:49 +08:00
**LangChain4j-AiDeepin**
基于 ChatGPT 等大语言模型与 Langchain4j 等应用框架实现,开源、可离线部署的检索增强生成(RAG)大模型知识库项目。
功能:
* AI聊天
* AI生图
* 大模型知识库RAG
2023-08-09 20:50:00 +08:00
![1691585301627](image/README/1691585301627.png)
2023-08-09 20:35:59 +08:00
2024-02-15 15:31:49 +08:00
**AI聊天**
2023-08-09 20:35:59 +08:00
![1691583184761](image/README/1691583184761.png)
![1691583124744](image/README/1691583124744.png)
![1691583329105](image/README/1691583329105.png)
2024-02-15 15:31:49 +08:00
**知识库:**
![kbindex](image/README/kbidx.png)
![kb01](image/README/kb01.png)
![kb02](image/README/kb02.png)
![kb03](image/README/kb03.png)
2023-08-09 21:07:51 +08:00
体验网址:[http://www.aideepin.com](http://www.aideepin.com/)
2023-08-10 14:35:31 +08:00
接入的模型ChatGPT 3.5DALL-E 2
2024-02-15 15:31:49 +08:00
该仓库为后端服务,前端项目见[langchain4j-aideepin-web](https://github.com/moyangzhan/langchain4j-aideepin-web)
2024-02-15 15:38:06 +08:00
### 功能点
* 登录注册
* 聊天历史记录
* AI生图、改图
* RAG知识库
* token限制
2024-02-15 15:31:49 +08:00
### 技术
后端:
jdk17
springboot3.0.5
[langchain4j](https://github.com/langchain4j/langchain4j)
**Postgresql(需要安装[pgvector](https://github.com/pgvector/pgvector)扩展)**
前端:
vue3+typescript+pnpm
2023-08-09 20:35:59 +08:00
### 如何部署
#### 初始化
2024-02-15 14:29:57 +08:00
初始化数据库
2023-08-09 20:35:59 +08:00
2024-02-15 15:31:49 +08:00
* 创建数据库aideepin
* 执行docs/create.sql
* 填充openai的secret\_key
2023-08-09 20:35:59 +08:00
2024-02-15 14:29:57 +08:00
```plaintext
2023-08-09 20:35:59 +08:00
update adi_sys_config set value = 'my_chatgpt_secret_key' where name = 'secret_key'
```
* 修改配置文件
2024-02-15 14:29:57 +08:00
* postgresql: application-[dev|prod].xml中的spring.datasource
2023-08-09 20:35:59 +08:00
* redis: application-[dev|prod].xml中的spring.data.redis
* mail: application.xml中的spring.mail
#### 编译及运行
* 进入项目
2024-02-15 14:29:57 +08:00
```plaintext
2024-02-15 15:31:49 +08:00
cd langchain4j-aideepin
2023-08-09 20:35:59 +08:00
```
* 打包:
```
mvn clean package -Dmaven.test.skip=true
```
2024-02-15 15:31:49 +08:00
* 运行
2023-08-09 20:35:59 +08:00
a. jar包启动
2024-02-15 14:29:57 +08:00
```plaintext
2023-08-09 20:35:59 +08:00
cd adi-chat/target
nohup java -jar -Xms768m -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError adi-chat-0.0.1-SNAPSHOT.jar --spring.profiles.active=[dev|prod] dev/null 2>&1 &
```
b. docker启动
2024-02-15 14:29:57 +08:00
```plaintext
2023-08-09 20:35:59 +08:00
cd adi-chat
docker build . -t aideepin:0.0.1
docker run -d \
--name=aideepin \
-e APP_PROFILE=[dev|prod] \
-v="/data/aideepin/logs:/data/logs" \
aideepin:0.0.1
2024-02-15 15:31:49 +08:00
```
### 待办:
接入基于ChatGLM的各种模型