wvivi2023
|
565a94c1bb
|
customize word loader
|
2024-01-10 10:45:47 +08:00 |
wvivi2023
|
9d8ee7717c
|
不显示split.txt 和 source.txt
|
2024-01-08 14:53:13 +08:00 |
wvivi2023
|
3593e6ca2c
|
update
|
2024-01-04 18:02:43 +08:00 |
wvivi2023
|
7b7a180323
|
merge 0.2.6
merge 0.2.6
|
2024-01-02 10:10:41 +08:00 |
wvivi2023
|
5c8610f47f
|
enhance 3rd catalog content
|
2023-12-28 10:52:52 +08:00 |
liunux4odoo
|
9ff7bef2c2
|
新功能:知识库管理界面支持查看、编辑、删除向量库文档 (#2471)
* 新功能:
- 知识库管理界面支持查看、编辑、删除向量库文档。暂不支持增加(aggrid添加新行比较麻烦,需要另外实现)
- 去除知识库管理界面中重建知识库和删除知识库按钮,建议用户到终端命令操作
修复:
- 所有与知识库名称、文件名称有关的数据库操作函数都改成大小写不敏感,所有路径统一为 posix 风格,避免因路径文本不一致导致数据重复和操作失效 (close #2232)
开发者:
- 添加 update_docs_by_id 函数与 API 接口。当前仅支持 FAISS,暂时未用到,未将来对知识库做更细致的修改做准备
- 统一 DocumentWithScore 与 DocumentWithVsId
- FAISS 返回的 Document.metadata 中包含 ID, 方便后续查找比对
- /knowledge_base/search_docs 接口支持 file_name, metadata 参数,可以据此检索文档
* fix bug
|
2023-12-26 13:44:36 +08:00 |
wvivi2023
|
bf21b8f116
|
merge single line to the next content
|
2023-12-13 18:06:49 +08:00 |
wvivi2023
|
8c367eb460
|
add log
|
2023-12-13 09:51:59 +08:00 |
wvivi2023
|
9fa7a1fbbf
|
title enhancement and remove the logic of query scope
|
2023-12-13 09:51:17 +08:00 |
liunux4odoo
|
2e9319846e
|
support .xls files
|
2023-12-08 15:04:08 +08:00 |
liunux4odoo
|
7b70776810
|
fix: doc ext name error in LOADER_DICT
|
2023-12-08 13:59:55 +08:00 |
liunux4odoo
|
67b7c99d03
|
ocr 支持 GPU 加速(需要手动安装 rapidocr_paddle[gpu]);知识库支持 MHTML 和 Evernote 文件。 (#2265)
在 requirements 和 Wiki 中增加对可选文档加载器 SDK 的说明 ( close #2264 )
|
2023-12-04 09:39:56 +08:00 |
liunux4odoo
|
7d2de47bcf
|
文件对话和知识库对话 API 接口实现全异步操作,防止阻塞 (#2256)
* EmbeddingFunAdapter 支持异步操作;文件对话和知识库对话 API 接口实现全异步操作,防止阻塞
* 修复: 使 list_files_from_folder 返回相对路径
|
2023-12-02 19:22:44 +08:00 |
wvivi2023
|
dce1d16e29
|
enhance splitter
enhance splitter
|
2023-11-29 13:25:44 +08:00 |
liunux4odoo
|
509dee0425
|
fix: empty docs error in KnowledgeFile
|
2023-11-29 11:33:43 +08:00 |
zR
|
1b0cf67a57
|
支持软连接的知识库 (#2167)
* GLM3支持传入提示词
支持传入提示词的Agent ChatGLM3-6B
* 软连接处理
1. 有效的软连接处理,参考了 #2125
2. 更新了依赖,现在fschat原生支持GLM3的全功能
* 更新了支持的模型列表和依赖
1. 推荐用户使用GLM3-6B取代2代GLM模型
2. 推荐用户使用性能更强的bge模型
3 推荐使用vllm和torch的最新稳定版本
|
2023-11-24 22:47:55 +08:00 |
liunux4odoo
|
aae4144476
|
数据库和向量库中文档 metadata["source"] 改为相对路径,便于向量库迁移 (#2153)
修复:
- 上传知识库文件名称包括子目录时,自动创建子目录
|
2023-11-23 19:54:00 +08:00 |
wvivi2023
|
9ba2120129
|
enhance
enhance
|
2023-11-23 12:38:31 +08:00 |
liunux4odoo
|
3cf7422c21
|
修复:知识库json文件的中文被转为unicode码,导致无法匹配 (#2128)
|
2023-11-21 21:00:46 +08:00 |
liunux4odoo
|
ad7a6fd438
|
开发者: (#2091)
- 修复列出知识库磁盘文件时跳过临时文件的bug:只有目录被排除了,文件未排除
- 优化知识库文档加载器:
- 将 elements 模式改为 single 模式,避免文档被切分得太碎
- 给 get_loader 和 KnowledgeFile 增加 loader_kwargs 参数,可以自定义文档加载器参数
|
2023-11-17 11:39:32 +08:00 |
liunux4odoo
|
fbe214471b
|
知识库支持 .jsonl, .epub, .xlsx, .xlsd, .ipynb, .odt, .py, .srt, .toml, .doc, .ppt 文件 (#2079)
* 知识库支持行式 json 文件
如果要使用 json 文件, 需要 `conda install jq`(windows 下 pip install jq 会失败)
开发者:
删除 CustomJsonLoader,使用 langchain 自带的 JsonLoader 处理 json 文件,添加 JsonLinesLoader 处理 jsonl 文件。
* 知识库支持 .epub, .xlsx, .xlsd, .ipynb, .odt, .py, .srt, .toml, .doc, .ppt 文件
为 .eml, .msg, .rst, .rtf, .tsv, .docx, .xml, .pptx 指定专用加载器
|
2023-11-16 09:37:09 +08:00 |
wvivi2023
|
60a12c05f6
|
0.2.6 enhance
0.2.6 enhance
|
2023-11-13 09:20:19 +08:00 |
liunux4odoo
|
b51ba11f45
|
支持通过配置项同时启动多个模型,将Wiki纳入samples知识库 (#2002)
新功能:
- 将 LLM_MODEL 配置项改为 LLM_MODELS 列表,同时启动多个模型
- 将 wiki 纳入 samples 知识库
依赖变化:
- 指定 streamlit~=1.27.0。1.26.0会报rerun错误,1.28.0会有无限刷新错误
修复优化:
- 优化 get_default_llm_model 逻辑
- 适配 Qwen 在线 API 做 Embeddings 时最大 25 行的限制
- 列出知识库磁盘文件时跳过 . 开头的文件
|
2023-11-09 22:15:52 +08:00 |
wvivi2023
|
526c4b52a8
|
search related doc title before similarity search
search related doc title before similarity search
|
2023-11-06 08:57:58 +08:00 |
liunux4odoo
|
d8e15b57ba
|
知识库支持子目录(不包括temp和tmp开头的目录),文件相对路径总长度不可超过255 (#1928)
|
2023-10-31 16:59:40 +08:00 |
liunux4odoo
|
65592a45c3
|
支持在线 Embeddings, Lite 模式支持所有知识库相关功能 (#1924)
新功能:
- 支持在线 Embeddings:zhipu-api, qwen-api, minimax-api, qianfan-api
- API 增加 /other/embed_texts 接口
- init_database.py 增加 --embed-model 参数,可以指定使用的嵌入模型(本地或在线均可)
- 对于 FAISS 知识库,支持多向量库,默认位置:{KB_PATH}/vector_store/{embed_model}
- Lite 模式支持所有知识库相关功能。此模式下最主要的限制是:
- 不能使用本地 LLM 和 Embeddings 模型
- 知识库不支持 PDF 文件
- init_database.py 重建知识库时不再默认情况数据库表,增加 clear-tables 参数手动控制。
- API 和 WEBUI 中 score_threshold 参数范围改为 [0, 2],以更好的适应在线嵌入模型
问题修复:
- API 中 list_config_models 会删除 ONLINE_LLM_MODEL 中的敏感信息,导致第二轮API请求错误
开发者:
- 统一向量库的识别:以(kb_name,embed_model)为判断向量库唯一性的依据,避免 FAISS 知识库缓存加载逻辑错误
- KBServiceFactory.get_service_by_name 中添加 default_embed_model 参数,用于在构建新知识库时设置 embed_model
- 优化 kb_service 中 Embeddings 操作:
- 统一加载接口: server.utils.load_embeddings,利用全局缓存避免各处 Embeddings 传参
- 统一文本嵌入接口:server.knowledge_base.kb_service.base.[embed_texts, embed_documents]
- 重写 normalize 函数,去除对 scikit-learn/scipy 的依赖
|
2023-10-31 14:26:50 +08:00 |
liunux4odoo
|
deed92169f
|
支持在线 Embeddings:zhipu-api, qwen-api, minimax-api, qianfan-api (#1907)
* 新功能:
- 支持在线 Embeddings:zhipu-api, qwen-api, minimax-api, qianfan-api
- API 增加 /other/embed_texts 接口
- init_database.py 增加 --embed-model 参数,可以指定使用的嵌入模型(本地或在线均可)
问题修复:
- API 中 list_config_models 会删除 ONLINE_LLM_MODEL 中的敏感信息,导致第二轮API请求错误
开发者:
- 优化 kb_service 中 Embeddings 操作:
- 统一加载接口: server.utils.load_embeddings,利用全局缓存避免各处 Embeddings 传参
- 统一文本嵌入接口:server.embedding_api.[embed_texts, embed_documents]
|
2023-10-28 23:37:30 +08:00 |
zR
|
24d1e28a07
|
一些细节优化 (#1891)
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-10-27 11:52:44 +08:00 |
liunux4odoo
|
d316efe8d3
|
release 0.2.6 (#1815)
## 🛠 新增功能
- 支持百川在线模型 (@hzg0601 @liunux4odoo in #1623)
- 支持 Azure OpenAI 与 claude 等 Langchain 自带模型 (@zRzRzRzRzRzRzR in #1808)
- Agent 功能大量更新,支持更多的工具、更换提示词、检索知识库 (@zRzRzRzRzRzRzR in #1626 #1666 #1785)
- 加长 32k 模型的历史记录 (@zRzRzRzRzRzRzR in #1629 #1630)
- *_chat 接口支持 max_tokens 参数 (@liunux4odoo in #1744)
- 实现 API 和 WebUI 的前后端分离 (@liunux4odoo in #1772)
- 支持 zlilliz 向量库 (@zRzRzRzRzRzRzR in #1785)
- 支持 metaphor 搜索引擎 (@liunux4odoo in #1792)
- 支持 p-tuning 模型 (@hzg0601 in #1810)
- 更新完善文档和 Wiki (@imClumsyPanda @zRzRzRzRzRzRzR @glide-the in #1680 #1811)
## 🐞 问题修复
- 修复 bge-* 模型匹配超过 1 的问题 (@zRzRzRzRzRzRzR in #1652)
- 修复系统代理为空的问题 (@glide-the in #1654)
- 修复重建知识库时 `d == self.d assert error` (@liunux4odoo in #1766)
- 修复对话历史消息错误 (@liunux4odoo in #1801)
- 修复 OpenAI 无法调用的 bug (@zRzRzRzRzRzRzR in #1808)
- 修复 windows下 BIND_HOST=0.0.0.0 时对话出错的问题 (@hzg0601 in #1810)
|
2023-10-20 23:16:06 +08:00 |
zR
|
e920cd0064
|
合并分支,支持 (#1808)
* 北京黑客松更新
知识库支持:
支持zilliz数据库
Agent支持:
支持以下工具调用
1. 支持互联网Agent调用
2. 支持知识库Agent调用
3. 支持旅游助手工具(未上传)
知识库更新
1. 支持知识库简介,用于Agent选择
2. UI对应知识库简介
提示词选择
1. UI 和模板支持提示词模板更换选择
* 数据库更新介绍问题解决
* 关于Langchain自己支持的模型
1. 修复了Openai无法调用的bug
2. 支持了Azure Openai Claude模型
(在模型切换界面由于优先级问题,显示的会是其他联网模型)
3. 422问题被修复,用了另一种替代方案。
4. 更新了部分依赖
|
2023-10-20 18:13:55 +08:00 |
liunux4odoo
|
ba8d0f8e17
|
发版:v0.2.5 (#1620)
* 优化configs (#1474)
* remove llm_model_dict
* optimize configs
* fix get_model_path
* 更改一些默认参数,添加千帆的默认配置
* Update server_config.py.example
* fix merge conflict for #1474 (#1494)
* 修复ChatGPT api_base_url错误;用户可以在model_config在线模型配置中覆盖默认的api_base_url (#1496)
* 优化LLM模型列表获取、切换的逻辑: (#1497)
1、更准确的获取未运行的可用模型
2、优化WEBUI模型列表显示与切换的控制逻辑
* 更新migrate.py和init_database.py,加强知识库迁移工具: (#1498)
1. 添加--update-in-db参数,按照数据库信息,从本地文件更新向量库
2. 添加--increament参数,根据本地文件增量更新向量库
3. 添加--prune-db参数,删除本地文件后,自动清理相关的向量库
4. 添加--prune-folder参数,根据数据库信息,清理无用的本地文件
5. 取消--update-info-only参数。数据库中存储了向量库信息,该操作意义不大
6. 添加--kb-name参数,所有操作支持指定操作的知识库,不指定则为所有本地知识库
7. 添加知识库迁移的测试用例
8. 删除milvus_kb_service的save_vector_store方法
* feat: support volc fangzhou
* 使火山方舟正常工作,添加错误处理和测试用例
* feat: support volc fangzhou (#1501)
* feat: support volc fangzhou
---------
Co-authored-by: liunux4odoo <41217877+liunux4odoo@users.noreply.github.com>
Co-authored-by: liqiankun.1111 <liqiankun.1111@bytedance.com>
* 第一版初步agent实现 (#1503)
* 第一版初步agent实现
* 增加steaming参数
* 修改了weather.py
---------
Co-authored-by: zR <zRzRzRzRzRzRzR>
* 添加configs/prompt_config.py,允许用户自定义prompt模板: (#1504)
1、 默认包含2个模板,分别用于LLM对话,知识库和搜索引擎对话
2、 server/utils.py提供函数get_prompt_template,获取指定的prompt模板内容(支持热加载)
3、 api.py中chat/knowledge_base_chat/search_engine_chat接口支持prompt_name参数
* 增加其它模型的参数适配
* 增加传入矢量名称加载
* 1. 搜索引擎问答支持历史记录;
2. 修复知识库问答历史记录传参错误:用户输入被传入history,问题出在webui中重复获取历史消息,api知识库对话接口并无问题。
* langchain日志开关
* move wrap_done & get_ChatOpenAI from server.chat.utils to server.utils (#1506)
* 修复faiss_pool知识库缓存key错误 (#1507)
* fix ReadMe anchor link (#1500)
* fix : Duplicate variable and function name (#1509)
Co-authored-by: Jim <zhangpengyi@taijihuabao.com>
* Update README.md
* fix #1519: streamlit-chatbox旧版BUG,但新版有兼容问题,先在webui中作处理,并限定chatbox版本 (#1525)
close #1519
* 【功能新增】在线 LLM 模型支持阿里云通义千问 (#1534)
* feat: add qwen-api
* 使Qwen API支持temperature参数;添加测试用例
* 将online-api的sdk列为可选依赖
---------
Co-authored-by: liunux4odoo <liunux@qq.com>
* 处理序列化至磁盘的逻辑
* remove depends on volcengine
* update kb_doc_api: use Form instead of Body when upload file
* 将所有httpx请求改为使用Client,提高效率,方便以后设置代理等。 (#1554)
将所有httpx请求改为使用Client,提高效率,方便以后设置代理等。
将本项目相关服务加入无代理列表,避免fastchat的服务器请求错误。(windows下无效)
* update QR code
* update readme_en,readme,requirements_api,requirements,model_config.py.example:测试baichuan2-7b;更新相关文档
* 新增特性:1.支持vllm推理加速框架;2. 更新支持模型列表
* 更新文件:1. startup,model_config.py.example,serve_config.py.example,FAQ
* 1. debug vllm加速框架完毕;2. 修改requirements,requirements_api对vllm的依赖;3.注释掉serve_config中baichuan-7b的device为cpu的配置
* 1. 更新congif中关于vllm后端相关说明;2. 更新requirements,requirements_api;
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写 (#1611)
* Dev (#1613)
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写
* issue提到的一个bug
* 温度最小改成0,但是不应该支持负数
* 修改了最小的温度
* fix: set vllm based on platform to avoid error on windows
* fix: langchain warnings for import from root
* 修复webui中重建知识库以及对话界面UI错误 (#1615)
* 修复bug:webui点重建知识库时,如果存在不支持的文件会导致整个接口错误;migrate中没有导入CHUNK_SIZE
* 修复:webui对话界面的expander一直为running状态;简化历史消息获取方法
* 根据官方文档,添加对英文版的bge embedding的指示模板 (#1585)
Co-authored-by: zR <2448370773@qq.com>
* Dev (#1618)
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写
* issue提到的一个bug
* 温度最小改成0,但是不应该支持负数
* 修改了最小的温度
* 增加了部分Agent支持和修改了启动文件的部分bug
* 修改了GPU数量配置文件
* 1
1
* 修复配置文件错误
* 更新readme,稳定测试
* 更改readme 0928 (#1619)
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写
* issue提到的一个bug
* 温度最小改成0,但是不应该支持负数
* 修改了最小的温度
* 增加了部分Agent支持和修改了启动文件的部分bug
* 修改了GPU数量配置文件
* 1
1
* 修复配置文件错误
* 更新readme,稳定测试
* 更新readme
* fix readme
* 处理序列化至磁盘的逻辑
* update version number to v0.2.5
---------
Co-authored-by: qiankunli <qiankun.li@qq.com>
Co-authored-by: liqiankun.1111 <liqiankun.1111@bytedance.com>
Co-authored-by: zR <2448370773@qq.com>
Co-authored-by: glide-the <2533736852@qq.com>
Co-authored-by: Water Zheng <1499383852@qq.com>
Co-authored-by: Jim Zhang <dividi_z@163.com>
Co-authored-by: Jim <zhangpengyi@taijihuabao.com>
Co-authored-by: imClumsyPanda <littlepanda0716@gmail.com>
Co-authored-by: Leego <leegodev@hotmail.com>
Co-authored-by: hzg0601 <hzg0601@163.com>
Co-authored-by: WilliamChen-luckbob <58684828+WilliamChen-luckbob@users.noreply.github.com>
|
2023-09-28 23:30:21 +08:00 |
liunux4odoo
|
b3c7f8b072
|
修复webui中重建知识库以及对话界面UI错误 (#1615)
* 修复bug:webui点重建知识库时,如果存在不支持的文件会导致整个接口错误;migrate中没有导入CHUNK_SIZE
* 修复:webui对话界面的expander一直为running状态;简化历史消息获取方法
|
2023-09-28 15:12:03 +08:00 |
imClumsyPanda
|
f3042a6a29
|
merge master
|
2023-09-22 12:36:45 +08:00 |
peterz3g
|
3ff130ecc2
|
修复csv文件解析编码报错的问题。 (#1508)
|
2023-09-21 14:41:49 +08:00 |
Jim Zhang
|
cb2b560a5b
|
fix : Duplicate variable and function name (#1509)
Co-authored-by: Jim <zhangpengyi@taijihuabao.com>
|
2023-09-20 16:46:31 +08:00 |
Jim Zhang
|
59fb309ba4
|
fix : Duplicate variable and function name (#1509)
Co-authored-by: Jim <zhangpengyi@taijihuabao.com>
|
2023-09-18 11:00:04 +08:00 |
glide-the
|
902ba0c321
|
增加传入矢量名称加载
|
2023-09-17 13:56:18 +08:00 |
liunux4odoo
|
80375e1ff3
|
fix merge conflict for #1474 (#1494)
|
2023-09-15 18:11:15 +08:00 |
liunux4odoo
|
f7c73b842a
|
优化configs (#1474)
* remove llm_model_dict
* optimize configs
* fix get_model_path
* 更改一些默认参数,添加千帆的默认配置
* Update server_config.py.example
|
2023-09-15 17:52:22 +08:00 |
imClumsyPanda
|
20eef45a58
|
update README.md
|
2023-09-15 09:53:58 +08:00 |
zR
|
769d75d784
|
修复测试文件 (#1467)
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-09-13 17:12:05 +08:00 |
zR
|
bfdbe69fa1
|
增加了自定义分词器适配 (#1462)
* 添加了自定义分词器适配和测试文件
---------
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-09-13 15:42:12 +08:00 |
liunux4odoo
|
16d8809c9a
|
api和webui知识库操作支持chunk_size/overlap_size/zh_title_enhance参数 (#1459)
|
2023-09-13 11:19:47 +08:00 |
liunux4odoo
|
a03b8d330d
|
升级到langchain==0.0.287,fschat==0.0.28;处理langchain.Milvus bug(#10492) (#1454)
* 修复milvus_kb_service中一些bug,添加文档后将数据同步到数据库
* 升级到langchain==0.0.287,fschat==0.0.28;处理langchain.Milvus bug(#10492)
* 修复切换模型BUG: 从在线API切换模型时出错
|
2023-09-13 08:43:11 +08:00 |
imClumsyPanda
|
2020f5bb88
|
merge master
|
2023-09-12 15:51:28 +08:00 |
imClumsyPanda
|
8064586374
|
delete .doc from supported formats
|
2023-09-12 15:22:18 +08:00 |
liunux4odoo
|
22ff073309
|
修改Embeddings和FAISS缓存加载方式,知识库相关API接口支持多线程并发 (#1434)
* 修改Embeddings和FAISS缓存加载方式,支持多线程,支持内存FAISS
* 知识库相关API接口支持多线程并发
* 根据新的API接口调整ApiRequest和测试用例
* 删除webui.py失效的启动说明
|
2023-09-11 20:41:41 +08:00 |
glide-the
|
5550e3c1a9
|
增加显示详细日志开关
|
2023-09-08 20:48:31 +08:00 |
liunux4odoo
|
1195eb75eb
|
merge pr1413
|
2023-09-08 10:30:07 +08:00 |
liunux4odoo
|
661a0e9d72
|
新功能:
- 知识库管理中的add_docs/delete_docs/update_docs均支持批量操作,并利用多线程提高效率
- API的重建知识库接口支持多线程
- add_docs可提供参数控制上传文件后是否继续进行向量化
- add_docs/update_docs支持传入自定义docs(以json形式)。后续考虑区分完整或补充式自定义docs
- download_doc接口添加`preview`参数,支持下载或预览
- kb_service增加`save_vector_store`方法,便于保存向量库(仅FAISS,其它无操作)
- 将document_loader & text_splitter逻辑从KnowledgeFile中抽离出来,为后续对内存文件进行向量化做准备
- KowledgeFile支持docs & splitted_docs的缓存,方便在中间过程做一些自定义
其它:
- 将部分错误输出由print改为logger.error
|
2023-09-08 08:55:12 +08:00 |