ElasticSearch-Langchain-Chatglm2 项目教程

ElasticSearch-Langchain-Chatglm2 项目教程

ElasticSearch-Langchain-Chatglm2项目地址:https://gitcode.com/gh_mirrors/el/ElasticSearch-Langchain-Chatglm2

1、项目介绍

ElasticSearch-Langchain-Chatglm2 是一个基于 Elasticsearch、Langchain 和 Chatglm2 的自有知识库问答系统。该项目受 langchain-ChatGLM 项目启发,使用 Elasticsearch 代替 Faiss 作为知识存储库,支持文本和向量两种方式混合查询,适用于更广泛的业务场景。

2、项目快速启动

修改配置文件

首先,修改配置文件 config.ini,配置 Elasticsearch 链接。模型路径可修改为本地路径,增加对 InternLM 的支持:

[Elasticsearch]
host = localhost
port = 9200

[Model]
embedding_model = moka-ai/m3e-large
llm_model = internlm/internlm-chat-7b

运行 Web Demo

执行以下命令启动 Web 界面:

python web.py

3、应用案例和最佳实践

文档交互模块

在 ES 插入时,文档交互模块会显示插入是否成功或抛出异常内容。问答时,文档交互模块会展示查询到的内容,包括文档来源、文档内容和相似度分数。

查询设置模块

支持三种查询模式:

  • 近似查询:Approximate kNN
  • 混合查询:Combine approximate kNN with other features
  • 精确查询:Exact brute-force kNN

查询阈值设置:仅返回相似度分数大于阈值的查询结果,0 为不设限制。top_k 设置返回最相关的 k 个文本,knn_boost 适用于混合查询,设置 knn_score 所占比例。

4、典型生态项目

THUDM/chatglm2-6b

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。

moka-ai/m3e-large

M3E 模型是一个大规模的 Embedding 模型,用于文本向量化,支持多种文本格式。

LangChain

LangChain 是一个用于构建端到端语言模型应用的框架,支持多种语言模型和数据源。

通过结合这些生态项目,ElasticSearch-Langchain-Chatglm2 能够构建一个强大的自有知识库问答系统,适用于多种业务场景。

ElasticSearch-Langchain-Chatglm2项目地址:https://gitcode.com/gh_mirrors/el/ElasticSearch-Langchain-Chatglm2

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

窦育培

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值