mirror of
https://github.com/TeamWiseFlow/wiseflow.git
synced 2025-01-23 10:50:25 +08:00
update readme
This commit is contained in:
parent
12d76ea70e
commit
3f408fe0a3
45
README.md
45
README.md
@ -1,7 +1,44 @@
|
|||||||
# wiseflow
|
# 首席情报官
|
||||||
|
|
||||||
wiseflow(首席情报官)是一个完备的领域(行业)开源信息情报获取与管理系统,用户既可以针对已有信源自行编写专有爬虫,使用本系统进行完备的流程管理,甚至一键生成报告,同时也可以订阅我们专业的信息情报服务。
|
**欢迎使用首席情报官**
|
||||||
|
|
||||||
对于普通用可以直接下载我们的release,或者本repo中的client文件夹,按照client中的README.md操作即可。
|
首席情报官(wiseflow)是一个完备的领域(行业)信息情报采集与分析系统,该系统面向普通用户开源免费,同时我们提供更加专业的行业情报信息订阅服务,欢迎联系我们获取更多信息。
|
||||||
|
|
||||||
如果你想连接微信(企业微信或个人微信),打造“首席情报官”微信小助手,请先同步我们另一个开源库 wiseflow/awada ,进入wechaty文件夹,按照README.md启动微信服务程序。
|
Email:[zm.zhao@foxmail.com](zm.zhao@foxmail.com)
|
||||||
|
|
||||||
|
**首席情报官目前版本主要功能点:**
|
||||||
|
|
||||||
|
- 每日关注简报列表
|
||||||
|
- 入库文章列表、详情,支持一键翻译(简体中文)
|
||||||
|
- 关注点一键搜索(使用搜狗引擎)
|
||||||
|
- 关注点一键报告生成(直接生成word文档)
|
||||||
|
- 行业情报信息订阅(邮件zm.zhao@foxmail.com联系开通)
|
||||||
|
- 数据库管理
|
||||||
|
- 支持针对特定站点的自定义爬虫集成,并提供本地定时扫描任务……
|
||||||
|
|
||||||
|
**产品介绍视频:**
|
||||||
|
|
||||||
|
![wiseflow](/asset/demo.mp4)
|
||||||
|
|
||||||
|
## getting started
|
||||||
|
|
||||||
|
我们为普通用户提供了本地运行的client,我们强烈建议使用我们提供的docker镜像,但您也可以使用源码运行。
|
||||||
|
|
||||||
|
```commandline
|
||||||
|
git clone git@openi.pcl.ac.cn:wiseflow/wiseflow.git
|
||||||
|
cd wiseflow/client
|
||||||
|
```
|
||||||
|
|
||||||
|
之后参考[client](/client/README.md)
|
||||||
|
|
||||||
|
## SDK & API (coming soon)
|
||||||
|
|
||||||
|
我们将很快提供local SDK和subscribe service API服务。
|
||||||
|
|
||||||
|
通过local sdk,用户可以无需客户端进行订阅数据同步,并在本地通过python api进行灵活调用,这样wiseflow就可以成为任意RAG系统的数据来源之一。
|
||||||
|
|
||||||
|
而subscribe service将使用户可以将订阅数据查询和推送服务嫁接到自己的微信公众号、微信客服、网站以及各类GPTs bot平台上(我们也会发布各平台的插件)。
|
||||||
|
|
||||||
|
**wiseflow架构图**
|
||||||
|
|
||||||
|
![wiseflow架构图](asset/wiseflow_arch.png)
|
||||||
|
BIN
asset/demo.mp4
Normal file
BIN
asset/demo.mp4
Normal file
Binary file not shown.
@ -1,8 +1,12 @@
|
|||||||
# 用法
|
# WiseFlow Client 用户手册
|
||||||
|
|
||||||
|
对于普通用户而言,使用WiseFlow客户端非常简便。**如果您是开发者,有二次开发的需要,请进入backend目录、web目录分别查看后端和前端的源代码。**
|
||||||
|
|
||||||
|
## 普通用户使用
|
||||||
|
|
||||||
### 1、参考如下内容创建 `.env `文件 (可以直接编辑 env_sample后再改名)
|
### 1、参考如下内容创建 `.env `文件 (可以直接编辑 env_sample后再改名)
|
||||||
|
|
||||||
- PROJECT_DIR="AWtest" #项目缓存文件夹(相对于repo的路径),如果不设定就直接放在repo下面了
|
- PROJECT_DIR="xxxx" #项目缓存文件夹(相对于client文件夹的路径),如果不设定就直接放在repo下面了
|
||||||
- WS_LOG="verbose" #设定是否开始debug观察,调试阶段建议开始,尤其可以观察到每一步接口调用的原始请求和返回
|
- WS_LOG="verbose" #设定是否开始debug观察,调试阶段建议开始,尤其可以观察到每一步接口调用的原始请求和返回
|
||||||
- LLM_API_BASE: #使用本地大模型推理服务使用(本地加载大模型)的 host:port, 不配置默认走http://localhost:8000
|
- LLM_API_BASE: #使用本地大模型推理服务使用(本地加载大模型)的 host:port, 不配置默认走http://localhost:8000
|
||||||
- DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY" #使用阿里灵积大模型推理服务使用
|
- DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY" #使用阿里灵积大模型推理服务使用
|
||||||
@ -13,7 +17,20 @@
|
|||||||
- DEVICE="cuda:0" #配置的话使用GPU,不配置使用CPU。
|
- DEVICE="cuda:0" #配置的话使用GPU,不配置使用CPU。
|
||||||
- PB_API_AUTH='email|password' #pb数据库admin的邮箱和密码(一定是admin的,一定给邮箱)
|
- PB_API_AUTH='email|password' #pb数据库admin的邮箱和密码(一定是admin的,一定给邮箱)
|
||||||
|
|
||||||
### 3、编辑 config.ini 文件 (可以直接修改这个目录下面的 config.ini)
|
**注:上述各服务的申请与开通请参考页面最下方**
|
||||||
|
|
||||||
|
### 2、强烈建议普通用户
|
||||||
|
|
||||||
|
|
||||||
|
### 3、管理配置页面 —— http://127.0.0.1:8090/_/
|
||||||
|
|
||||||
|
#### roleplays 表单
|
||||||
|
|
||||||
|
在这里可以配置llm的身份信息和关注点,这将直接决定信息发掘和过滤的效果,可以配置多个,但每次只会选择更改时间最新的且activated为true的。
|
||||||
|
|
||||||
|
**更改roleplay需要重启服务(最简单的办法是重启下docker 容器)**
|
||||||
|
|
||||||
|
roleplay 字段说明:
|
||||||
|
|
||||||
- character 以什么身份挖掘线索(这决定了llm的关注点和立场)
|
- character 以什么身份挖掘线索(这决定了llm的关注点和立场)
|
||||||
- focus 关注什么方面的线索
|
- focus 关注什么方面的线索
|
||||||
@ -23,15 +40,25 @@
|
|||||||
- bad_samples 规避的线索描述模式
|
- bad_samples 规避的线索描述模式
|
||||||
- report_type 报告类型
|
- report_type 报告类型
|
||||||
|
|
||||||
### 4、编辑 sites.txt 文件
|
#### sites 表单
|
||||||
|
|
||||||
这个文件指定了需要本地执行的监控的信源,一行一个网址,支持随时更改,每次执行任务前会读取最新的。
|
通过这个表单可以指定自定义信源,系统会启动后台定时任务,在本地执行信源爬取、解析和分析。
|
||||||
|
|
||||||
如果你只爬取配置了专有爬虫的信源的话,可以直接编辑scrapers/__init__.py 中的scraper_map,这里都留空就好
|
sites 字段说明:
|
||||||
|
|
||||||
专有爬虫的说明见 backend/scrapers/README.md
|
- url, 信源的url,信源无需给定具体文章页面,给文章列表页面即可,wiseflow client中包含两个通用页面解析器,90%以上的新闻类静态网页都可以很好的获取和解析(我们建议爬取频次不要超过一天一次)。
|
||||||
|
- per_hours, 爬取频率,单位为小时,类型为整数(1~24范围)
|
||||||
|
- activated, 是否激活。如果关闭则会忽略该信源,关闭后可再次开启。开启和关闭无需重启docker容器,会在下一次定时任务时更新。
|
||||||
|
|
||||||
**注:虽然wiseflow client配置了通用爬虫,对于新闻类静态网页有一定的爬取和解析效果,但我们还是强烈建议使用我们的数据订阅服务或者自写专业爬虫。**
|
注意:
|
||||||
|
|
||||||
|
1、wiseflow client自定义信源的爬取调度策略是:每小时启动一次,会先看是否有满足频率要求的指定信源,
|
||||||
|
|
||||||
|
2、虽然wiseflow client中包含的两个通用页面解析器可以适用于绝大多数静态页面的解析,但对于实际业务,我们还是建议客户订阅我们的专业信息推动服务,或者自写专有爬虫。wiseflow client支持客户自定义专有爬虫的集成。
|
||||||
|
|
||||||
|
专有爬虫的集成说明见 backend/scrapers/README.md
|
||||||
|
|
||||||
|
配置专有爬虫后,请单独进行docker build。
|
||||||
|
|
||||||
## 参考:各服务注册地址
|
## 参考:各服务注册地址
|
||||||
|
|
||||||
|
@ -8,20 +8,28 @@
|
|||||||
|
|
||||||
2、 安装requirements.txt
|
2、 安装requirements.txt
|
||||||
|
|
||||||
## 单独启动数据库
|
## 单独启动数据库(需要先下载对应平台的pocketbase,或者单独build web docker并启动)
|
||||||
|
|
||||||
|
pocketbase [下载地址](https://pocketbase.io/docs/)
|
||||||
|
|
||||||
|
文件放入 backend/pb 目录下
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd pb
|
chmod +x pocketbase
|
||||||
./pocketbase serve
|
./pocketbase serve
|
||||||
```
|
```
|
||||||
|
|
||||||
|
之后将pb的服务地址配置为环境变量PB_API_BASE
|
||||||
|
|
||||||
|
(如果选择使用docker,可以参考client文件夹下的docker files)
|
||||||
|
|
||||||
注:pb目录下的pb_migrations文件夹保持与repo同步,数据库会自动创建本项目需要的表单,如果不一致,可能导致后面运行失败
|
注:pb目录下的pb_migrations文件夹保持与repo同步,数据库会自动创建本项目需要的表单,如果不一致,可能导致后面运行失败
|
||||||
|
|
||||||
pb_data是数据库数据存放目录,如果更改了admin的密码,记得修改.env
|
pb_data是数据库数据存放目录,如果更改了admin的密码,记得修改.env
|
||||||
|
|
||||||
## 脚本文件说明
|
## 脚本文件说明
|
||||||
|
|
||||||
- tasks.sh #这是启动定时爬虫任务的脚本 (本地纯调试后端,这个不启动也行)
|
- tasks.sh #这是启动定时任务的脚本 (本地纯调试后端,这个不启动也行)
|
||||||
- backend.sh #这是启动后端服务的脚本,(默认使用 localhost:7777, 通过 http://localhost:7777/docs/ 查看接口详情)
|
- backend.sh #这是启动后端服务的脚本,(默认使用 localhost:7777, 通过 http://localhost:7777/docs/ 查看接口详情)
|
||||||
|
|
||||||
备注:backend 服务返回格式统一为 dict,`{"flag": int, "result": [{"type": "text", "content": "xxx"}]}`
|
备注:backend 服务返回格式统一为 dict,`{"flag": int, "result": [{"type": "text", "content": "xxx"}]}`
|
||||||
@ -31,7 +39,7 @@ pb_data是数据库数据存放目录,如果更改了admin的密码,记得
|
|||||||
| flag 码 | 内容 |
|
| flag 码 | 内容 |
|
||||||
|--------|-----------------|
|
|--------|-----------------|
|
||||||
| -11 | LLM 错误/异常 |
|
| -11 | LLM 错误/异常 |
|
||||||
| -7 | 网络请求失败(爬虫或搜索阶段) |
|
| -7 | 网络请求失败 |
|
||||||
| -6 | 翻译接口失败 |
|
| -6 | 翻译接口失败 |
|
||||||
| -5 | 入参格式错误 |
|
| -5 | 入参格式错误 |
|
||||||
| -4 | 向量模型错误 |
|
| -4 | 向量模型错误 |
|
||||||
@ -59,8 +67,8 @@ backend
|
|||||||
├── llms # 大模型的wraper
|
├── llms # 大模型的wraper
|
||||||
├── scrapers # 爬虫库
|
├── scrapers # 爬虫库
|
||||||
|—— __init__.py #如果要添加具体网站的专有爬虫,需要把爬虫脚本放在这个文件的同级目录,同时编辑这面的scraper_map字典
|
|—— __init__.py #如果要添加具体网站的专有爬虫,需要把爬虫脚本放在这个文件的同级目录,同时编辑这面的scraper_map字典
|
||||||
|—— general_scraper.py #通用信源爬虫
|
|—— general_scraper.py #通用网页解析器
|
||||||
|—— simple_crawler.py #基于gne的快速单一文章网页爬虫
|
|—— simple_crawler.py #基于gne的快速单一页面解析器
|
||||||
|—— __init__.py # backend主函数
|
|—— __init__.py # backend主函数
|
||||||
├── background_task.py # 后台任务主程序,如果要定义多个后台任务,请编辑这个文件
|
├── background_task.py # 后台任务主程序,如果要定义多个后台任务,请编辑这个文件
|
||||||
├── main.py # 后端服务主程序(fastapi框架)
|
├── main.py # 后端服务主程序(fastapi框架)
|
||||||
|
Loading…
Reference in New Issue
Block a user