提交 74800058 作者: imClumsyPanda

Merge branch 'master' into dev

...@@ -243,7 +243,7 @@ Web UI 可以实现如下功能: ...@@ -243,7 +243,7 @@ Web UI 可以实现如下功能:
- [x] 选择知识库开始问答 - [x] 选择知识库开始问答
- [x] 上传文件/文件夹至知识库 - [x] 上传文件/文件夹至知识库
- [x] 知识库测试 - [x] 知识库测试
- [ ] 删除知识库中文件 - [x] 删除知识库中文件
- [x] 支持搜索引擎问答 - [x] 支持搜索引擎问答
- [ ] 增加 API 支持 - [ ] 增加 API 支持
- [x] 利用 fastapi 实现 API 部署方式 - [x] 利用 fastapi 实现 API 部署方式
...@@ -251,7 +251,7 @@ Web UI 可以实现如下功能: ...@@ -251,7 +251,7 @@ Web UI 可以实现如下功能:
- [x] VUE 前端 - [x] VUE 前端
## 项目交流群 ## 项目交流群
<img src="img/qr_code_39.jpg" alt="二维码" width="300" height="300" /> <img src="img/qr_code_42.jpg" alt="二维码" width="300" height="300" />
🎉 langchain-ChatGLM 项目微信交流群,如果你也对本项目感兴趣,欢迎加入群聊参与讨论交流。 🎉 langchain-ChatGLM 项目微信交流群,如果你也对本项目感兴趣,欢迎加入群聊参与讨论交流。
...@@ -64,7 +64,18 @@ llm_model_dict = { ...@@ -64,7 +64,18 @@ llm_model_dict = {
"local_model_path": None, "local_model_path": None,
"provides": "ChatGLM" "provides": "ChatGLM"
}, },
"chatglm2-6b-int4": {
"name": "chatglm2-6b-int4",
"pretrained_model_name": "THUDM/chatglm2-6b-int4",
"local_model_path": None,
"provides": "ChatGLM"
},
"chatglm2-6b-int8": {
"name": "chatglm2-6b-int8",
"pretrained_model_name": "THUDM/chatglm2-6b-int8",
"local_model_path": None,
"provides": "ChatGLM"
},
"chatyuan": { "chatyuan": {
"name": "chatyuan", "name": "chatyuan",
"pretrained_model_name": "ClueAI/ChatYuan-large-v2", "pretrained_model_name": "ClueAI/ChatYuan-large-v2",
...@@ -192,7 +203,7 @@ PROMPT_TEMPLATE = """已知信息: ...@@ -192,7 +203,7 @@ PROMPT_TEMPLATE = """已知信息:
根据上述已知信息,简洁和专业的来回答用户的问题。如果无法从中得到答案,请说 “根据已知信息无法回答该问题” 或 “没有提供足够的相关信息”,不允许在答案中添加编造成分,答案请使用中文。 问题是:{question}""" 根据上述已知信息,简洁和专业的来回答用户的问题。如果无法从中得到答案,请说 “根据已知信息无法回答该问题” 或 “没有提供足够的相关信息”,不允许在答案中添加编造成分,答案请使用中文。 问题是:{question}"""
# 缓存知识库数量 # 缓存知识库数量,如果是ChatGLM2,ChatGLM2-int4,ChatGLM2-int8模型若检索效果不好可以调成’10’
CACHED_VS_NUM = 1 CACHED_VS_NUM = 1
# 文本分句长度 # 文本分句长度
......
...@@ -5,9 +5,6 @@ from langchain.document_loaders.unstructured import UnstructuredFileLoader ...@@ -5,9 +5,6 @@ from langchain.document_loaders.unstructured import UnstructuredFileLoader
from paddleocr import PaddleOCR from paddleocr import PaddleOCR
import os import os
import nltk import nltk
from configs.model_config import NLTK_DATA_PATH
nltk.data.path = [NLTK_DATA_PATH] + nltk.data.path
class UnstructuredPaddleImageLoader(UnstructuredFileLoader): class UnstructuredPaddleImageLoader(UnstructuredFileLoader):
"""Loader that uses unstructured to load image files, such as PNGs and JPGs.""" """Loader that uses unstructured to load image files, such as PNGs and JPGs."""
...@@ -35,6 +32,10 @@ class UnstructuredPaddleImageLoader(UnstructuredFileLoader): ...@@ -35,6 +32,10 @@ class UnstructuredPaddleImageLoader(UnstructuredFileLoader):
if __name__ == "__main__": if __name__ == "__main__":
import sys import sys
sys.path.append(os.path.dirname(os.path.dirname(__file__))) sys.path.append(os.path.dirname(os.path.dirname(__file__)))
from configs.model_config import NLTK_DATA_PATH
nltk.data.path = [NLTK_DATA_PATH] + nltk.data.path
filepath = os.path.join(os.path.dirname(os.path.dirname(__file__)), "knowledge_base", "samples", "content", "test.jpg") filepath = os.path.join(os.path.dirname(os.path.dirname(__file__)), "knowledge_base", "samples", "content", "test.jpg")
loader = UnstructuredPaddleImageLoader(filepath, mode="elements") loader = UnstructuredPaddleImageLoader(filepath, mode="elements")
docs = loader.load() docs = loader.load()
......
...@@ -218,7 +218,12 @@ def change_chunk_conent(mode, label_conent, history): ...@@ -218,7 +218,12 @@ def change_chunk_conent(mode, label_conent, history):
def add_vs_name(vs_name, chatbot): def add_vs_name(vs_name, chatbot):
if vs_name in get_vs_list(): if vs_name is None or vs_name.strip() == "" :
vs_status = "知识库名称不能为空,请重新填写知识库名称"
chatbot = chatbot + [[None, vs_status]]
return gr.update(visible=True), gr.update(visible=True), gr.update(visible=True), gr.update(
visible=False), chatbot, gr.update(visible=False)
elif vs_name in get_vs_list():
vs_status = "与已有知识库名称冲突,请重新选择其他名称后提交" vs_status = "与已有知识库名称冲突,请重新选择其他名称后提交"
chatbot = chatbot + [[None, vs_status]] chatbot = chatbot + [[None, vs_status]]
return gr.update(visible=True), gr.update(visible=True), gr.update(visible=True), gr.update( return gr.update(visible=True), gr.update(visible=True), gr.update(visible=True), gr.update(
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论