129 Commits

Author SHA1 Message Date
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
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
82dfcd97e6 fix merge conflict 2024-03-06 14:02:30 +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
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
89b0d467ea 集成LOOM在线embedding业务 2024-03-06 13:47:56 +08:00
glide-the
307b973f26 embeddings模块集成openai plugins插件,使用统一api调用 2024-03-06 13:47:15 +08:00
glide-the
217bb61448 fix model_config是系统关键词问题 2024-03-06 13:45:15 +08:00
glide-the
cce2b55719 集成openai plugins插件 2024-03-06 13:42:01 +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
6f155aec1f 修复 callback 无效的问题 2024-03-06 13:37:16 +08:00
liunux4odoo
7257521e10 按照 langchain 0.1 重写 qwen agent 2024-03-06 13:37:16 +08:00
zR
df1a508e10 更新chatGLM3 langchain0.1.x Agent写法 2024-03-06 13:37:15 +08:00
zR
5df19d907b 跟新了langchain 0.1.x需要的依赖和修改的代码 2024-03-06 13:37:10 +08:00
liunux4odoo
d144ff47c9 fix: LLMChain no output when no tools selected 2024-03-06 13:36:16 +08:00
zR
36c90e2e2b 更新Agent工具返回 2024-03-06 13:36:13 +08:00
liunux4odoo
e2a46a1d0f fix callback handler 2024-03-06 13:35:41 +08:00
zR
6f04e15aed 对其ChatGLM3-6B与Qwen-14B 2024-03-06 13:35:37 +08:00
liunux4odoo
d6e91e6638 添加 qwen agent 2024-03-06 13:34:19 +08:00
zR
6d3d99639e 支持XPU,修改了glm3部分agent 2024-03-06 13:34:14 +08:00
zR
d44ce6ce21 支持多模态Grounding
1. 美化了chat的代码
2. 支持视觉工具输出Grounding任务
3. 完善工具调用的流程
2024-03-06 13:33:48 +08:00
zR
03891cc27a 更新多模态 语音 视觉的内容
1. 更新本地模型语音 视觉多模态功能并设置了对应工具
2024-03-06 13:32:45 +08:00
zR
bc225bf9f5 更新一些内容 2024-03-06 13:32:44 +08:00
zR
5714358403 修复模型选择的bug 2024-03-06 13:32:43 +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
6b61d917a1 支持GLM4 2024-01-22 11:48:13 +08:00
zR
269090ea66 更新0.2.x Agent,之后的Agent在0.3.x更新 2024-01-12 12:01:22 +08:00
liunux4odoo
c179230ce0
remove /chat/fastchat API endpoint (#2506) 2023-12-29 09:44:37 +08:00
liunux4odoo
5cccd5e7aa merge from master 2023-12-29 09:10:01 +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
hzg0601
129c765a74 新增特性:reranker对向量召回文本进行重排 2023-12-21 19:05:11 +08:00
hzg0601
5891f94c88 temporarily add reranker 2023-12-21 16:05:16 +08:00
Astlvk
7e01e82470
fixed 迭代器参数传递错误,知识库问答报错TypeError: unhashable type: 'list' (#2383)
Co-authored-by: liunux4odoo <41217877+liunux4odoo@users.noreply.github.com>
2023-12-15 07:54:36 +08:00
xldistance
7e8391eb55
修复knowledge_base_chat_iterator传参错误 (#2386) 2023-12-15 07:53:36 +08:00
liunux4odoo
472a97a616 所有 chat 接口都改为 EventSourceResponse;ApiRequest 作对应修改 2023-12-13 16:53:24 +08:00
liunux4odoo
c8fef3380c merge from dev 2023-12-13 16:52:40 +08:00
liunux4odoo
2604c9e761
fix: prompt template name error in file_chat (#2366) 2023-12-12 21:12:33 +08:00
liunux4odoo
7d2de47bcf
文件对话和知识库对话 API 接口实现全异步操作,防止阻塞 (#2256)
* EmbeddingFunAdapter 支持异步操作;文件对话和知识库对话 API 接口实现全异步操作,防止阻塞

* 修复: 使 list_files_from_folder 返回相对路径
2023-12-02 19:22:44 +08:00
liunux4odoo
4fa28c71b1
修复:chat 接口默认使用 memory获取10条历史消息,导致最终拼接的prompt出错 (#2247)
修改后默认使用用户传入的history,只有同时传入conversation_id和history_len时才从数据库读取历史消息
使用memory还有一个问题,对话角色是固定的,不能适配不同的模型。

其它:注释一些无用的 print
2023-12-01 11:35:43 +08:00
imClumsyPanda
c34b4136c0 update file format 2023-11-30 23:33:48 +08:00
zR
b7a50daa0f
更新Langchain依赖到0.0.342以上版本 (#2212) 2023-11-29 15:08:13 +08:00
liunux4odoo
7d580d9a47 修复:*_chat 接口中重设 max_tokens 时导致 local variable 'max_tokens' referenced before assignment 错误 2023-11-28 21:00:00 +08:00
liunux4odoo
8b695dba03 *_chat 接口中,当 max_tokens=0时,将其设为 None,避免 swagger ui 中默认值为0时访问出错 2023-11-26 16:47:58 +08:00
liunux4odoo
1de4258aa0
给 ApiModelWorker 添加 logger 成员变量,API请求出错时输出有意义的错误信息。 (#2169)
* 给 ApiModelWorker 添加 logger 成员变量,API请求出错时输出有意义的错误信息。
/chat/chat 接口 conversation_id参数改为默认 "",避免 swagger 页面默认值错误导致历史消息失效

* 修复在线模型一些bug
2023-11-25 13:51:07 +08:00
liunux4odoo
aae4144476
数据库和向量库中文档 metadata["source"] 改为相对路径,便于向量库迁移 (#2153)
修复:
- 上传知识库文件名称包括子目录时,自动创建子目录
2023-11-23 19:54:00 +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
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
zR
21b079d751
GLM3支持传入提示词 (#2058)
支持传入提示词的Agent ChatGLM3-6B
2023-11-14 17:45:22 +08:00