liunux4odoo
|
51691ee008
|
update to pydantic v2 (#3486)
|
2024-03-22 20:39:25 +08:00 |
|
panhong
|
d63bf0bda5
|
添加 react 编写的新版 WEBUI (#3417)
* feat:提交前端代码
* feat:提交logo样式切换
* feat:替换avatar、部分位置icon、chatchat相关说明、git链接、Wiki链接、关于、设置、反馈与建议等功能,关闭lobehub自检更新功能
* fix:移除多余代码
---------
Co-authored-by: liunux4odoo <41217877+liunux4odoo@users.noreply.github.com>
|
2024-03-19 14:30:26 +08:00 |
|
liunux4odoo
|
16d9b60999
|
fix merge conflict: langchain Embeddings not imported in server.utils
|
2024-03-19 08:34:05 +08:00 |
|
dignfei
|
7b2b24c0bc
|
使用多进程提高导入知识库的速度 (#3276)
|
2024-03-13 10:36:14 +08:00 |
|
liunux4odoo
|
51301dfe6a
|
优化 ES 知识库
- 开发者
- get_OpenAIClient 的 local_wrap 默认值改为 False,避免 API 服务未启动导致其它功能受阻(如Embeddings)
- 修改 ES 知识库服务:
- 检索策略改为 ApproxRetrievalStrategy
- 设置 timeout 为 60, 避免文档过多导致 ConnecitonTimeout Error
- 修改 LocalAIEmbeddings,使用多线程进行 embed_texts,效果不明显,瓶颈可能主要在提供 Embedding 的服务器上
|
2024-03-07 11:58:27 +08:00 |
|
liunux4odoo
|
d0846f88cc
|
- pydantic 限定为 v1,并统一项目中所有 pydantic 导入路径,为以后升级 v2 做准备
- 重构 api.py:
- 按模块划分为不同的 router
- 添加 openai 兼容的转发接口,项目默认使用该接口以实现模型负载均衡
- 添加 /tools 接口,可以获取/调用编写的 agent tools
- 移除所有 EmbeddingFuncAdapter,统一改用 get_Embeddings
- 待办:
- /chat/chat 接口改为 openai 兼容
- 添加 /chat/kb_chat 接口,openai 兼容
- 改变 ntlk/knowledge_base/logs 等数据目录位置
|
2024-03-06 13:51:34 +08:00 |
|
liunux4odoo
|
65466007ae
|
make torch & transformers optional
import pydantic Model & Field from langchain.pydantic_v1 instead of pydantic.v1
|
2024-03-06 13:50:06 +08:00 |
|
liunux4odoo
|
5d422ca9a1
|
修改模型配置方式,所有模型以 openai 兼容框架的形式接入,chatchat 自身不再加载模型。
改变 Embeddings 模型改为使用框架 API,不再手动加载,删除自定义 Embeddings Keyword 代码
修改依赖文件,移除 torch transformers 等重依赖
暂时移出对 loom 的集成
后续:
1、优化目录结构
2、检查合并中有无被覆盖的 0.2.10 内容
|
2024-03-06 13:49:38 +08:00 |
|
glide-the
|
307b973f26
|
embeddings模块集成openai plugins插件,使用统一api调用
|
2024-03-06 13:47:15 +08:00 |
|
glide-the
|
49f6760702
|
删除fastchat的配置
|
2024-03-06 13:42:00 +08:00 |
|
glide-the
|
48fb6b83fd
|
集成openai plugins插件
|
2024-03-06 13:41:00 +08:00 |
|
liunux4odoo
|
8063aab7a1
|
webui 支持文生图
|
2024-03-06 13:38:12 +08:00 |
|
liunux4odoo
|
17ba487074
|
添加文生图工具
|
2024-03-06 13:37:46 +08:00 |
|
zR
|
5df19d907b
|
跟新了langchain 0.1.x需要的依赖和修改的代码
|
2024-03-06 13:37:10 +08:00 |
|
zR
|
6d3d99639e
|
支持XPU,修改了glm3部分agent
|
2024-03-06 13:34:14 +08:00 |
|
zR
|
03891cc27a
|
更新多模态 语音 视觉的内容
1. 更新本地模型语音 视觉多模态功能并设置了对应工具
|
2024-03-06 13:32:45 +08:00 |
|
zR
|
bc225bf9f5
|
更新一些内容
|
2024-03-06 13:32:44 +08:00 |
|
zR
|
253168a187
|
Dev (#2280)
* 修复Azure 不设置Max token的bug
* 重写agent
1. 修改Agent实现方式,支持多参数,仅剩 ChatGLM3-6b和 OpenAI GPT4 支持,剩余模型将在暂时缺席Agent功能
2. 删除agent_chat 集成到llm_chat中
3. 重写大部分工具,适应新Agent
* 更新架构
* 删除web_chat,自动融合
* 移除所有聊天,都变成Agent控制
* 更新配置文件
* 更新配置模板和提示词
* 更改参数选择bug
|
2024-03-06 13:32:36 +08:00 |
|
zR
|
56d32a9908
|
删除掉一些没用的注释,已经不需要todo了
|
2024-01-22 13:42:52 +08:00 |
|
zR
|
dc07cba1d4
|
更新依赖
|
2024-01-20 22:18:22 +08:00 |
|
glide-the
|
f031ebc19e
|
ChatOpenAI为了判断token有没有超过模型的context上下文长度,每个模型的token算法不一样 ,所以这里应该自己实现token长度计算
第一次初始化的时候,openai的类会强制使用3.5,
|
2024-01-13 16:11:30 +08:00 |
|
chatgpt-bot
|
b653c25fbc
|
Fix device detection and fallback logic and add 'xpu' (#2570)
Co-authored-by: zR <2448370773@qq.com>
|
2024-01-11 18:36:38 +08:00 |
|
高厉害
|
e7bba6bd0a
|
fix: automatically replace unsupported torch device (#2514)
|
2024-01-11 18:16:31 +08:00 |
|
zR
|
dcb76984bc
|
修复Azure 不设置Max token的bug (#2254)
|
2023-12-02 16:50:56 +08:00 |
|
imClumsyPanda
|
072e0a2a32
|
update reqs and server/utils
|
2023-11-30 22:23:15 +08:00 |
|
zR
|
40918c21de
|
bug修复和提示词修改 (#2230)
* 更新Langchain依赖到0.0.343以上版本
* 更改了一些提示词和依赖,修改了openai异常的问题
* 注释data的打印日志
|
2023-11-30 12:09:53 +08:00 |
|
qiankunli
|
1c97673d41
|
feat: add db memory (#2046)
* feat: add db memory
* WEBUI 添加多会话功能
---------
Co-authored-by: liqiankun.1111 <liqiankun.1111@bytedance.com>
Co-authored-by: liunux4odoo <liunux@qq.com>
|
2023-11-22 18:38:26 +08:00 |
|
glide-the
|
17c9632942
|
统一在线模型异常报文、增加详细日志
|
2023-11-21 21:47:02 +08:00 |
|
liunux4odoo
|
3b3d948d27
|
添加文件对话模式 (#2071)
开发者:
- 添加 /chat/file_chat, /knowledge_base/upload_temp_docs API 接口
- 添加 CACHED_MEMO_VS_NUM, BASE_TEMP_DIR 配置项
|
2023-11-16 07:39:27 +08:00 |
|
liunux4odoo
|
2adfa4277c
|
在webui模型列表中包括:非model worker启动的在线模型(如openai-api);已经下载的本地模型 (#2060)
|
2023-11-14 21:17:32 +08:00 |
|
zR
|
21b079d751
|
GLM3支持传入提示词 (#2058)
支持传入提示词的Agent ChatGLM3-6B
|
2023-11-14 17:45:22 +08:00 |
|
zR
|
94d4304638
|
更新了chatglm3 6b agent的文档,提示词 (#2041)
更新了chatglm3 6b agent的文档,提示词
修复代理no_proxy格式问题 #1838 的问题,感谢多次复现和验证
修改了pg清理知识库后还会引用之前知识库的问题
|
2023-11-13 16:30:09 +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 |
|
zR
|
57612d5232
|
修复一些bug (#1965)
* 修改一些bug
* 更新掉了一部分之前的bug
|
2023-11-03 18:56:27 +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 |
|
liunux4odoo
|
b4c68ddd05
|
优化在线 API ,支持 completion 和 embedding,简化在线 API 开发方式 (#1886)
* 优化在线 API ,支持 completion 和 embedding,简化在线 API 开发方式
新功能
- 智谱AI、Minimax、千帆、千问 4 个在线模型支持 embeddings(不通过Fastchat,后续会单独提供相关api接口)
- 在线模型自动检测传入参数,在传入非 messages 格式的 prompt 时,自动转换为 completion 形式,以支持 completion 接口
开发者:
- 重构ApiModelWorker:
- 所有在线 API 请求封装到 do_chat 方法:自动传入参数 ApiChatParams,简化参数与配置项的获取;自动处理与fastchat的接口
- 加强 API 请求错误处理,返回更有意义的信息
- 改用 qianfan sdk 重写 qianfan-api
- 将所有在线模型的测试用例统一在一起,简化测试用例编写
* Delete requirements_langflow.txt
|
2023-10-26 22:44:48 +08:00 |
|
zR
|
35a7ca74c0
|
Azure 的fschat支持,弃用Langchain-MODEL (#1873)
* 支持了agentlm
* 支持了agentlm和相关提示词
* 修改了Agent的一些功能,加入了Embed方面的一个优化
* 修改了部分Agent的工具
* 增加一些Langchain的自带工具
* 修复一些兼容性的bug
* 恢复知识库
* 恢复知识库
* 修复Azure问题
|
2023-10-25 21:32:40 +08:00 |
|
liunux4odoo
|
03e55e11c4
|
支持lite模式:无需安装torch等重依赖,通过在线API实现LLM对话和搜索引擎对话 (#1860)
* move get_default_llm_model from webui to ApiRequest
增加API接口及其测试用例:
- /server/get_prompt_template: 获取服务器配置的 prompt 模板
- 增加知识库多线程访问测试用例
支持lite模式:无需安装torch等重依赖,通过在线API实现LLM对话和搜索引擎对话
* fix bug in server.api
---------
Co-authored-by: imClumsyPanda <littlepanda0716@gmail.com>
|
2023-10-25 08:30:23 +08:00 |
|
liqiankun.1111
|
b002a2879b
|
feat: add completion api
|
2023-10-22 17:07:26 +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 |
|
glide-the
|
84a4141dec
|
修复代理为空的问题
|
2023-10-04 14:02:57 +08:00 |
|
glide-the
|
a655608d01
|
修复代理为空的问题
|
2023-10-04 13:33:42 +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
|
46af5b7571
|
fix: llm_model_dict with xxx/xxx local_model_path was parsed as online-api (#1513)
|
2023-09-18 12:10:03 +08:00 |
|
liunux4odoo
|
60f88ae92e
|
fix: 由于server.utils导入model_workers时,导入fastchat model_worker,导致startup启动延迟明显 (#1436)
|
2023-09-12 08:52:00 +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
|
93b133f9ac
|
将KnowledgeFile的file2text拆分成file2docs、docs2texts和file2text三个部分,在保持接口不变的情况下,实现:
1、支持chunk_size和chunk_overlap参数
2、支持自定义text_splitter
3、支持自定义docs
修复:csv文件不使用text_splitter
|
2023-09-04 21:00:16 +08:00 |
|