|
RAGFlow Chat Plugin for ChatGPT-on-WeChat |
|
========================================= |
|
|
|
This folder contains the source code for the `ragflow_chat` plugin, which extends the core functionality of the RAGFlow API to support conversational interactions using Retrieval-Augmented Generation (RAG). This plugin integrates seamlessly with the [ChatGPT-on-WeChat](https://github.com/zhayujie/chatgpt-on-wechat) project, enabling WeChat and other platforms to leverage the knowledge retrieval capabilities provided by RAGFlow in chat interactions. |
|
|
|
### Features |
|
* **Conversational Interactions**: Combine WeChat's conversational interface with powerful RAG (Retrieval-Augmented Generation) capabilities. |
|
* **Knowledge-Based Responses**: Enrich conversations by retrieving relevant data from external knowledge sources and incorporating them into chat responses. |
|
* **Multi-Platform Support**: Works across WeChat, WeCom, and various other platforms supported by the ChatGPT-on-WeChat framework. |
|
|
|
### Plugin vs. ChatGPT-on-WeChat Configurations |
|
**Note**: There are two distinct configuration files used in this setup—one for the ChatGPT-on-WeChat core project and another specific to the `ragflow_chat` plugin. It is important to configure both correctly to ensure smooth integration. |
|
|
|
#### ChatGPT-on-WeChat Root Configuration (`config.json`) |
|
This file is located in the root directory of the [ChatGPT-on-WeChat](https://github.com/zhayujie/chatgpt-on-wechat) project and is responsible for defining the communication channels and overall behavior. For example, it handles the configuration for WeChat, WeCom, and other services like Feishu and DingTalk. |
|
|
|
Example `config.json` (for WeChat channel): |
|
```json |
|
{ |
|
"channel_type": "wechatmp", |
|
"wechatmp_app_id": "YOUR_APP_ID", |
|
"wechatmp_app_secret": "YOUR_APP_SECRET", |
|
"wechatmp_token": "YOUR_TOKEN", |
|
"wechatmp_port": 80, |
|
... |
|
} |
|
``` |
|
|
|
This file can also be modified to support other communication platforms, such as: |
|
- **Personal WeChat** (`channel_type: wx`) |
|
- **WeChat Public Account** (`wechatmp` or `wechatmp_service`) |
|
- **WeChat Work (WeCom)** (`wechatcom_app`) |
|
- **Feishu** (`feishu`) |
|
- **DingTalk** (`dingtalk`) |
|
|
|
For detailed configuration options, see the official [LinkAI documentation](https://docs.link-ai.tech/cow/multi-platform/wechat-mp). |
|
|
|
#### RAGFlow Chat Plugin Configuration (`plugins/ragflow_chat/config.json`) |
|
This configuration is specific to the `ragflow_chat` plugin and is used to set up communication with the RAGFlow server. Ensure that your RAGFlow server is running, and update the plugin's `config.json` file with your server details: |
|
|
|
Example `config.json` (for `ragflow_chat`): |
|
```json |
|
{ |
|
"ragflow_api_key": "YOUR_API_KEY", |
|
"ragflow_host": "127.0.0.1:80" |
|
} |
|
``` |
|
|
|
This file must be configured to point to your RAGFlow instance, with the `ragflow_api_key` and `ragflow_host` fields set appropriately. The `ragflow_host` is typically your server's address and port number, and the `ragflow_api_key` is obtained from your RAGFlow API setup. |
|
|
|
### Requirements |
|
Before you can use this plugin, ensure the following are in place: |
|
|
|
1. You have installed and configured [ChatGPT-on-WeChat](https://github.com/zhayujie/chatgpt-on-wechat). |
|
2. You have deployed and are running the [RAGFlow](https://github.com/infiniflow/ragflow) server. |
|
|
|
Make sure both `config.json` files (ChatGPT-on-WeChat and RAGFlow Chat Plugin) are correctly set up as per the examples above. |
|
|