zR
|
bb72d9ac26
|
支持GLM (#1896)
* 支持glm3
|
2023-10-27 17:56:27 +08:00 |
zR
|
24d1e28a07
|
一些细节优化 (#1891)
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-10-27 11:52:44 +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 |
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 |
Zhi-guo Huang
|
be67ea43d8
|
Merge pull request #1828 from qiankunli/feat/add-completion-api
增加completion功能的API接口,注意暂不支持online_api模型
|
2023-10-24 22:10:54 +08:00 |
liqiankun.1111
|
b002a2879b
|
feat: add completion api
|
2023-10-22 17:07:26 +08:00 |
zR
|
1b50547e60
|
Dev (#1822)
* 支持了agentlm
* 支持了agentlm和相关提示词
* 修改了Agent的一些功能,加入了Embed方面的一个优化
---------
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-10-22 00:00:15 +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 |
liunux4odoo
|
d053950aee
|
新功能: (#1801)
- 更新langchain/fastchat依赖,添加xformers依赖
- 默认max_tokens=None, 生成tokens自动为模型支持的最大值
修复:
- history_len=0 时会带入1条不完整的历史消息,导致LLM错误
- 当对话轮数 达到history_len时,传入的历史消息为空
|
2023-10-19 22:09:15 +08:00 |
liunux4odoo
|
b9b42991f6
|
- 支持metaphor搜索引擎(无需代理,key申请简单,目前不支持中文)
- 增加默认知识库和默认搜索引擎的配置项
- 修复WEBUI弹出当前模型错误
|
2023-10-18 23:02:20 +08:00 |
zR
|
69e5da4e7a
|
北京黑客松更新 (#1785)
* 北京黑客松更新
知识库支持:
支持zilliz数据库
Agent支持:
支持以下工具调用
1. 支持互联网Agent调用
2. 支持知识库Agent调用
3. 支持旅游助手工具(未上传)
知识库更新
1. 支持知识库简介,用于Agent选择
2. UI对应知识库简介
提示词选择
1. UI 和模板支持提示词模板更换选择
|
2023-10-18 15:19:02 +08:00 |
liunux4odoo
|
9ce328fea9
|
实现Api和WEBUI的前后端分离 (#1772)
* update ApiRequest: 删除no_remote_api本地调用模式;支持同步/异步调用
* 实现API和WEBUI的分离:
- API运行服务器上的配置通过/llm_model/get_model_config、/server/configs接口提供,WEBUI运行机器上的配置项仅作为代码内部默认值使用
- 服务器可用的搜索引擎通过/server/list_search_engines提供
- WEBUI可选LLM列表中只列出在FSCHAT_MODEL_WORKERS中配置的模型
- 修改WEBUI中默认LLM_MODEL获取方式,改为从api端读取
- 删除knowledge_base_chat中`local_doc_url`参数
其它修改:
- 删除多余的kb_config.py.exmaple(名称错误)
- server_config中默认关闭vllm
- server_config中默认注释除智谱AI之外的在线模型
- 修改requests从系统获取的代理,避免model worker注册错误
* 修正:
- api.list_config_models返回模型原始配置
- api.list_config_models和api.get_model_config中过滤online api模型的敏感信息
- 将GPT等直接访问的模型列入WEBUI可选模型列表
其它:
- 指定langchain==0.3.313, fschat==0.2.30, langchain-experimental==0.0.30
|
2023-10-17 16:52:07 +08:00 |
liunux4odoo
|
cd748128c3
|
add paramter `max_tokens` to 4 chat api with default value 1024 (#1744)
|
2023-10-12 16:18:56 +08:00 |
zR
|
2c8fc95f7a
|
Agent大更新合并 (#1666)
* 更新上agent提示词代码
* 更新部分文档,修复了issue中提到的bge匹配超过1 的bug
* 按需修改
* 解决了部分最新用户用依赖的bug,加了两个工具,移除google工具
* Agent大幅度优化
1. 修改了UI界面
(1)高亮所有没有进行agent对齐的模型,
(2)优化输出体验和逻辑,使用markdown
2. 降低天气工具使用门槛
3. 依赖更新
(1) vllm 更新到0.2.0,增加了一些参数
(2) torch 建议更新到2.1
(3)pydantic不要更新到1.10.12
|
2023-10-07 11:26:11 +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 |
zR
|
efd8edda16
|
Dev (#1618)
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写
* issue提到的一个bug
* 温度最小改成0,但是不应该支持负数
* 修改了最小的温度
* 增加了部分Agent支持和修改了启动文件的部分bug
* 修改了GPU数量配置文件
* 1
1
* 修复配置文件错误
* 更新readme,稳定测试
|
2023-09-28 20:19:26 +08:00 |
liunux4odoo
|
8d0f8a5d67
|
fix: langchain warnings for import from root
|
2023-09-27 21:55:02 +08:00 |
zR
|
d39878ff35
|
Dev (#1613)
* 增加了仅限GPT4的agent功能,陆续补充,中文版readme已写
* issue提到的一个bug
* 温度最小改成0,但是不应该支持负数
* 修改了最小的温度
|
2023-09-27 21:17:50 +08:00 |
zR
|
5702554171
|
增加了仅限GPT4的agent功能,陆续补充,中文版readme已写 (#1611)
|
2023-09-27 19:19:25 +08:00 |
liunux4odoo
|
ec85cd1954
|
move wrap_done & get_ChatOpenAI from server.chat.utils to server.utils (#1506)
|
2023-09-17 16:19:50 +08:00 |
liunux4odoo
|
bb7ce601fc
|
1. 搜索引擎问答支持历史记录;
2. 修复知识库问答历史记录传参错误:用户输入被传入history,问题出在webui中重复获取历史消息,api知识库对话接口并无问题。
|
2023-09-17 13:58:57 +08:00 |
glide-the
|
175c90c362
|
增加其它模型的参数适配
|
2023-09-17 13:56:08 +08:00 |
liunux4odoo
|
a65bc4a63c
|
添加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参数
|
2023-09-17 13:27:11 +08:00 |
zR
|
598eb298df
|
第一版初步agent实现 (#1503)
* 第一版初步agent实现
* 增加steaming参数
* 修改了weather.py
---------
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-09-17 11:19:16 +08:00 |
qiankunli
|
13cca9cf81
|
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>
|
2023-09-17 00:53:12 +08:00 |
liunux4odoo
|
955b0bc211
|
修复ChatGPT api_base_url错误;用户可以在model_config在线模型配置中覆盖默认的api_base_url (#1496)
|
2023-09-15 22:56:13 +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 |
zR
|
bfdbe69fa1
|
增加了自定义分词器适配 (#1462)
* 添加了自定义分词器适配和测试文件
---------
Co-authored-by: zR <zRzRzRzRzRzRzR>
|
2023-09-13 15:42:12 +08:00 |
liunux4odoo
|
8b040620de
|
对话接口支持temperature参数 (#1455)
|
2023-09-13 10:00:54 +08:00 |
liunux4odoo
|
6a03611750
|
fix api and webui: (#1435)
1. fix #1431: 优化知识库问答与搜索引擎问答的API接口,避免docs重复返回
2. startup.py根据configs.log_verbose控制log级别
3. 修复/llm_model/list_models的bug:
只有一个参数时,fastapi未返回json导致视图函数出错
|
2023-09-12 08:31:17 +08:00 |
glide-the
|
5550e3c1a9
|
增加显示详细日志开关
|
2023-09-08 20:48:31 +08:00 |
liunux4odoo
|
775870a516
|
改变api视图函数的sync/async,提高api并发能力: (#1414)
1. 4个chat类接口改为async
2. 知识库操作,涉及向量库修改的使用async,避免FAISS写入错误;涉及向量库读取的改为sync,提高并发
|
2023-09-08 12:25:02 +08:00 |
liunux4odoo
|
6cb1bdf623
|
添加切换模型功能,支持智谱AI在线模型 (#1342)
* 添加LLM模型切换功能,需要在server_config中设置可切换的模型
* add tests for api.py/llm_model/*
* - 支持模型切换
- 支持智普AI线上模型
- startup.py增加参数`--api-worker`,自动运行所有的线上API模型。使用`-a
(--all-webui), --all-api`时默认开启该选项
* 修复被fastchat覆盖的标准输出
* 对fastchat日志进行更细致的控制,startup.py中增加-q(--quiet)开关,可以减少无用的fastchat日志输出
* 修正chatglm api的对话模板
Co-authored-by: liunux4odoo <liunu@qq.com>
|
2023-09-01 23:58:09 +08:00 |
liunux4odoo
|
3acbf4d5d1
|
增加数据库字段,重建知识库使用多线程 (#1280)
* close #1172: 给webui_page/utils添加一些log信息,方便定位错误
* 修复:重建知识库时页面未实时显示进度
* skip model_worker running when using online model api such as chatgpt
* 修改知识库管理相关内容:
1.KnowledgeFileModel增加3个字段:file_mtime(文件修改时间),file_size(文件大小),custom_docs(是否使用自定义docs)。为后面比对上传文件做准备。
2.给所有String字段加上长度,防止mysql建表错误(pr#1177)
3.统一[faiss/milvus/pgvector]_kb_service.add_doc接口,使其支持自定义docs
4.为faiss_kb_service增加一些方法,便于调用
5.为KnowledgeFile增加一些方法,便于获取文件信息,缓存file2text的结果。
* 修复/chat/fastchat无法流式输出的问题
* 新增功能:
1、KnowledgeFileModel增加"docs_count"字段,代表该文件加载到向量库中的Document数量,并在WEBUI中进行展示。
2、重建知识库`python init_database.py --recreate-vs`支持多线程。
其它:
统一代码中知识库相关函数用词:file代表一个文件名称或路径,doc代表langchain加载后的Document。部分与API接口有关或含义重叠的函数暂未修改。
---------
Co-authored-by: liunux4odoo <liunux@qq.com>, hongkong9771
|
2023-08-28 13:50:35 +08:00 |
liunux4odoo
|
447b370416
|
在search_engine_chat中检查Bing KEY,并更新tests
|
2023-08-25 10:58:40 +08:00 |
zqt
|
2a2b95d214
|
search_engine_chat bug
|
2023-08-24 17:25:54 +08:00 |
liunux4odoo
|
63ca393731
|
参照chat,给knowledge_base_chat/search_engine_chat添加chatgpt代理设置
|
2023-08-24 15:10:51 +08:00 |
zqt
|
ea4b5ebd16
|
Merge branch 'master' into dev
|
2023-08-24 14:16:21 +08:00 |
zqt
|
37454db3ec
|
添加chatgpt 调用代理设置
|
2023-08-24 13:51:17 +08:00 |
liunux4odoo
|
44edce6bcf
|
fix #1142: 在History中使用jinja2模板代替f-string,避免消息中含有{ }时出错
|
2023-08-23 08:35:26 +08:00 |
liunux4odoo
|
69627a2fa3
|
update chat and knowledge base api: unify exception processing and return types
|
2023-08-19 15:14:45 +08:00 |
liunux4odoo
|
67b8ebef52
|
update api and webui:
1. 增加search_docs接口,返回原始知识库检索文档,close #1103
2. 为FAISS检索增加score_threshold参数。milvus和PG暂不支持
|
2023-08-16 13:18:58 +08:00 |
liunux4odoo
|
7c0e9c46db
|
fix api & webui: 1.add logs, 2. check json response, 3. set timeout=False in recreate_vector_stoore
|
2023-08-15 14:24:54 +08:00 |
liunux4odoo
|
cc08e2cb96
|
update api and webui:
1. add download_doc to api
2. return local path or http url in kowledge_base_chat depends on
no_remote_api
3. change assistant avater in webui
|
2023-08-14 11:46:36 +08:00 |
liunux4odoo
|
126bd51232
|
fix chat and knowledge_base_chat
|
2023-08-14 10:35:47 +08:00 |
imClumsyPanda
|
8a4d9168fa
|
update import pkgs and format
|
2023-08-10 21:26:05 +08:00 |
liunux4odoo
|
1a112c6908
|
update fastch_chat: disable streaming in swagger besides streaming in ApiRequest
|
2023-08-09 23:48:41 +08:00 |
liunux4odoo
|
222689ed5b
|
update kb and search chat: disable streaming in swagger besides streaming in ApiRequest
|
2023-08-09 23:35:36 +08:00 |
imClumsyPanda
|
1b70fb5f9b
|
update faiss_kb_service.py
|
2023-08-09 22:57:36 +08:00 |
liunux4odoo
|
db29a2fea7
|
update knowledge_base_chat and search_engine_chat: yield chinese correctly
|
2023-08-09 22:54:37 +08:00 |