update readme

This commit is contained in:
bigbrother666 2024-04-18 17:53:27 +08:00
parent 12d76ea70e
commit 3f408fe0a3
4 changed files with 90 additions and 18 deletions

View File

@ -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

Binary file not shown.

View File

@ -1,8 +1,12 @@
# 用法
# WiseFlow Client 用户手册
对于普通用户而言使用WiseFlow客户端非常简便。**如果您是开发者有二次开发的需要请进入backend目录、web目录分别查看后端和前端的源代码。**
## 普通用户使用
### 1、参考如下内容创建 `.env `文件 (可以直接编辑 env_sample后再改名
- PROJECT_DIR="AWtest" #项目缓存文件夹相对于repo的路径如果不设定就直接放在repo下面了
- PROJECT_DIR="xxxx" #项目缓存文件夹相对于client文件夹的路径如果不设定就直接放在repo下面了
- WS_LOG="verbose" #设定是否开始debug观察,调试阶段建议开始,尤其可以观察到每一步接口调用的原始请求和返回
- LLM_API_BASE #使用本地大模型推理服务使用(本地加载大模型)的 host:port, 不配置默认走http://localhost:8000
- DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY" #使用阿里灵积大模型推理服务使用
@ -13,7 +17,20 @@
- DEVICE="cuda:0" #配置的话使用GPU不配置使用CPU。
- 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的关注点和立场
- focus 关注什么方面的线索
@ -23,15 +40,25 @@
- bad_samples 规避的线索描述模式
- 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。
## 参考:各服务注册地址

View File

@ -8,20 +8,28 @@
2、 安装requirements.txt
## 单独启动数据库
## 单独启动数据库(需要先下载对应平台的pocketbase或者单独build web docker并启动)
pocketbase [下载地址](https://pocketbase.io/docs/)
文件放入 backend/pb 目录下
```bash
cd pb
chmod +x pocketbase
./pocketbase serve
```
之后将pb的服务地址配置为环境变量PB_API_BASE
如果选择使用docker可以参考client文件夹下的docker files
pb目录下的pb_migrations文件夹保持与repo同步数据库会自动创建本项目需要的表单如果不一致可能导致后面运行失败
pb_data是数据库数据存放目录如果更改了admin的密码记得修改.env
## 脚本文件说明
- tasks.sh #这是启动定时爬虫任务的脚本 (本地纯调试后端,这个不启动也行)
- tasks.sh #这是启动定时任务的脚本 (本地纯调试后端,这个不启动也行)
- backend.sh #这是启动后端服务的脚本,(默认使用 localhost:7777 通过 http://localhost:7777/docs/ 查看接口详情)
备注backend 服务返回格式统一为 dict`{"flag": int, "result": [{"type": "text", "content": "xxx"}]}`
@ -31,7 +39,7 @@ pb_data是数据库数据存放目录如果更改了admin的密码记得
| flag 码 | 内容 |
|--------|-----------------|
| -11 | LLM 错误/异常 |
| -7 | 网络请求失败(爬虫或搜索阶段) |
| -7 | 网络请求失败 |
| -6 | 翻译接口失败 |
| -5 | 入参格式错误 |
| -4 | 向量模型错误 |
@ -59,8 +67,8 @@ backend
├── llms # 大模型的wraper
├── scrapers # 爬虫库
|—— __init__.py #如果要添加具体网站的专有爬虫需要把爬虫脚本放在这个文件的同级目录同时编辑这面的scraper_map字典
|—— general_scraper.py #通用信源爬虫
|—— simple_crawler.py #基于gne的快速单一文章网页爬虫
|—— general_scraper.py #通用网页解析器
|—— simple_crawler.py #基于gne的快速单一页面解析器
|—— __init__.py # backend主函数
├── background_task.py # 后台任务主程序,如果要定义多个后台任务,请编辑这个文件
├── main.py # 后端服务主程序fastapi框架