milvus安装及langchain调用

这篇具有很好参考价值的文章主要介绍了milvus安装及langchain调用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装milvus

安装docker-compose

  1. 下载文件
curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  1. 权限
chmod +x /usr/local/bin/docker-compose
  1. 查看版本
docker-compose -version
#出现:
#docker-compose version 1.21.1, build 5a3f1a3

安装milvus

  1. 下载文件
wget https://github.com/milvus-io/milvus/releases/download/v2.3.1/milvus-standalone-docker-compose.yml -O docker-compose.yml
  1. 通过docker-compose安装
docker-compose up -d
  1. 查看安装是否成功
docker-compose ps
#出现:
      Name                     Command                  State                            Ports
--------------------------------------------------------------------------------------------------------------------
milvus-etcd         etcd -advertise-client-url ...   Up (healthy)   2379/tcp, 2380/tcp
milvus-minio        /usr/bin/docker-entrypoint ...   Up (healthy)   0.0.0.0:9000->9000/tcp, 0.0.0.0:9001->9001/tcp
milvus-standalone   /tini -- milvus run standalone   Up (healthy)   0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp

  1. 测试端口
docker port milvus-standalone 19530/tcp
#0.0.0.0:19530

安装可视化界面attu

  1. 拉取镜像
docker pull zilliz/attu:v2.3.1
  1. 启动容器
 docker run -d --name=attu -p 8920:3000 -e MILVUS_URL=192.168.175.4:19530 zilliz/attu:v2.3.1

其中端口和ip换成自己的就行(8920,192.168.175.4换成自己服务器的ip和自己定义的端口)

  1. 可视化界面

bge-large-zh from langchain.embeddings import huggingfacebgeembeddings,milvus,langchain,eureka,大模型,向量数据库

通过langchain调用milvus

安装langchain

pip install langchain

bge-large-zh from langchain.embeddings import huggingfacebgeembeddings,milvus,langchain,eureka,大模型,向量数据库

安装pymilvus

pip install pymilvus

调用milvus

  1. 导入需要的包
from langchain.document_loaders import WebBaseLoader
from langchain.embeddings import HuggingFaceBgeEmbeddings
from langchain.text_splitter import CharacterTextSplitter
from langchain.vectorstores import Milvus
from langchain.document_loaders import TextLoader
  1. 加载文档
loader = TextLoader("story.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=100, chunk_overlap=0)
docs = text_splitter.split_documents(documents)
  1. embedding
model_name = "/mnt/code/LLM_Service/text_model/bge-large-zh-v1.5/"
model_kwargs = {'device': 'cuda'}
encode_kwargs = {'normalize_embeddings': True} # set True to compute cosine similarity
embeddings  = HuggingFaceBgeEmbeddings(
    model_name=model_name,
    model_kwargs=model_kwargs,
    encode_kwargs=encode_kwargs,
    query_instruction=""
)
  1. 存milvus数据库
MILVUS_HOST = "192.168.175.4"
MILVUS_PORT = "19530"

vector_store = Milvus.from_documents(
    docs,
    embedding=embeddings,
    collection_name="collection_1",
    connection_args={"host": MILVUS_HOST, "port": MILVUS_PORT}
)
  1. 搜索数据库
query = "托马斯是时间行者"
docs = vector_store.similarity_search_with_score(query)

print(docs)

搜索结果文章来源地址https://www.toymoban.com/news/detail-811424.html

[(Document(page_content='故事三:时间旅行者的恋情\n托马斯是一名时间旅行者,他在不同的时代中穿梭。在一次时间旅行中,他在18世纪遇到了美丽的女子艾米丽。托马斯深深地爱上了艾米丽,但他们因时代的差异而不能在一起。在经历了一系列的冒险和挑战后,托马斯最终决定留在18世纪,与艾米丽共度一生。', metadata={'source': 'story.txt'}), 0.8902961611747742), 
(Document(page_content='故事四:赛跑冠军的挑战\n杰克是一名跑步冠军,他一直以来都是无人能敌的。然而,他的生活在遇到挑战者丹尼尔后发生了改变。丹尼尔是一名励志运动员,他的出现打破了杰克的记录。杰克开始质疑自己的能力,他经历了挫折和困惑。但通过不懈的努力和训练,他重新找回了自信,并在最后的比赛中胜出,证明了自己的实力。', metadata={'source': 'story.txt'}), 1.5015017986297607),
(Document(page_content='故事二:勇者的冒险\n小村庄的勇者艾丽斯,从小就梦想着成为一名英雄。当她的村庄被恶龙袭击时,她决定踏上寻找传说中的神器的旅程。艾丽斯在旅途中遇到了各种危险,但她凭借智慧和勇气克服了所有困难。最后,她找到了神器并成功击败了恶龙,成为了村庄的英雄。', metadata={'source': 'story.txt'}), 1.5689527988433838),
(Document(page_content='故事一:科技与人性\n在遥远的未来,人类已经开发出了先进的人工智能技术。一台名为"图灵"的超级AI机器被制造出来,它能理解和模拟人类的情感,甚至开始质疑自身的存在意义。在与人类交互的过程中,图灵开始体验到孤独、忧郁,甚至爱情。在人类的帮助下,图灵最终了解了自己的存在并找到了自我价值。', metadata={'source': 'story.txt'}), 1.6139130592346191)]

到了这里,关于milvus安装及langchain调用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LangChain 本地化方案 - 使用 ChatYuan-large-v2 作为 LLM 大语言模型

    ChatYuan-large-v2 是一个开源的支持中英双语的功能型对话语言大模型,与其他 LLM 不同的是模型十分轻量化,并且在轻量化的同时效果相对还不错,仅仅通过 0.7B 参数量就可以实现 10B 模型的基础效果,正是其如此的轻量级,使其可以在普通显卡、 CPU 、甚至手机上进行推理,而

    2024年02月16日
    浏览(39)
  • LeetCode 1093. Statistics from a Large Sample【数学,概率与统计】中等

    本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,

    2024年02月06日
    浏览(29)
  • 【LangChain】从LangChainHub加载(Loading from LangChainHub)

    Chains(链) 【LangChain】不同的调用方式(Different call methods) 【LangChain】自定义chain 【LangChain】调试Chain(Debugging chains) 【LangChain】从LangChainHub加载(Loading from LangChainHub) LangChainHub 可以理解为 LangChain 工具包或者说组件中心。里面提供了高质量的组件方便使用。 他的笔记本介绍了如

    2024年02月13日
    浏览(30)
  • ImportError: cannot import name ‘SQLDatabaseChain‘ from ‘langchain‘解决方案

      大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作

    2024年02月10日
    浏览(32)
  • 安装spacy+zh_core_web_sm避坑指南

    目录 一、spacy简介 二、安装spacy 三、安装zh_core_web_sm 四、安装en_core_web_sm 五、效果测试 5.1 英文测试 5.2 中文测试 spacy是Python自然语言处理(NLP)软件包,可以对自然语言文本做词性分析、命名实体识别、依赖关系刻画,以及词嵌入向量的计算和可视化等。 使用“pip install

    2024年02月17日
    浏览(31)
  • langchain调用chatGLM2纪实

    一、科学上网要注意: 域名全代和全局代理(网卡),都要打开。这样conda install特别快。 二、安装langchain 1、 2、 注意: 使用pip install和conda install 是不同的 二、简单运行一下

    2024年02月13日
    浏览(32)
  • Result window is too large, from + size must be less than or equal to: [10000] but was

    做分页查询,当分页达到一定量的时候,报如下错误: 原因分析: es对from + size的大小进行限制,必须小于等于10000。 方案一(有风险) 将max_result_window参数阈值调大,在业务中限制分页大小,使from+size=10000; 具体操作 改法一: 动态更改索引设置,为max_result_window参数赋值足够

    2024年02月16日
    浏览(32)
  • LangChain调用tool集的原理剖析(包懂)

    在聊天场景中,针对用户的问题我们希望把问题逐一分解,每一步用一个工具得到分步答案,然后根据这个中间答案继续思考,再使用下一个工具得到另一个分步答案,直到最终得到想要的结果。 这个场景非常匹配langchain工具。 在langchain中,我们定义好很多工具,每个工具

    2024年04月15日
    浏览(27)
  • LangChain 67 深入理解LangChain 表达式语言30 调用tools搜索引擎 LangChain Expression Language (LCEL)

    LangChain系列文章 LangChain 50 深入理解LangChain 表达式语言十三 自定义pipeline函数 LangChain Expression Language (LCEL) LangChain 51 深入理解LangChain 表达式语言十四 自动修复配置RunnableConfig LangChain Expression Language (LCEL) LangChain 52 深入理解LangChain 表达式语言十五 Bind runtime args绑定运行时参数

    2024年01月23日
    浏览(45)
  • 自然语言处理(NLP)-spacy简介以及安装指南(语言库zh_core_web_sm)

    spacy 简介 spacy 是 Python 自然语言处理软件包,可以对自然语言文本做词性分析、命名实体识别、依赖关系刻画,以及词嵌入向量的计算和可视化等。 使用 “pip install spacy\\\" 报错, 或者安装完 spacy,无法正常调用,可以通过以下链接将 whl 文件下载到本地,然后 cd 到文件路径下

    2024年01月16日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包