langchain是一个基于python实现的开源LLM开发框架,llama.cpp是一个基于C++框架可以在本地部署大模型并开放服务端接口开放给外部应用使用。

本文结合langchain和llama.cpp,在本地部署轻量级的deepseek大模型,并构建一个简单的链式LLM应用,实现输入问题、回答问题、解析文本。

llama.cpp部署大模型

在huggingface或者modelscope下载模型文件,要求是gguf格式,支持llama.cpp本地加载,这里下载的是一个小尺寸的deepseek模型DeepSeek-R1-Distill-Qwen-1.5B-Q2_K.gguf,放在本地model文件夹。

在github下载对应自己操作系统的llama.cpp的预编译版本包,解压后带有bin目录,在里面找到llama-server命令行程序。
请添加图片描述

执行命令行启动模型服务:

./llama-server -m path/to/model/DeepSeek-R1-Distill-Qwen-1.5B-Q2_K.gguf

启动成功后,llama.cpp加载的deepseek大模型服务默认监听在8080端口,可以打开网页http://localhost:8080/进行聊天验证。
请添加图片描述

langchain编写LLM应用

在python里安装依赖包:

pip install langchain
pip install langchain-openai

因为llama.cpp大模型服务对外开放了OpenAI风格的api,此处可以使用OpenAI的接口连接本地大模型服务进行交互

代码

from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_core.output_parsers import StrOutputParser# connect remote llama.cpp model server to init model
model = ChatOpenAI(model="my_model", base_url="http://127.0.0.1:8080/v1", api_key="EMPTY")
model# create parser and make a chain
parser = StrOutputParser()
chain = model | parser
chain# input message
messages = [HumanMessage(content="北京的旅游景点有哪些")
]
messages# use chain to generate result
response = chain.invoke(messages)
print(response)

输出

<think>
嗯,用户问北京的旅游景点有哪些。首先,我得回想一下北京有哪些著名的旅游景点。我记得有大兴门、天安门、人民公园这些,不过可能还有其他景点,比如天安门、八达门、天山、四合院什么的。然后,我还需要考虑一些比较小的景点,比如小汤圆的地点,或者一些特色景点。接下来,我需要列出这些景点并给出一些推荐。比如大兴门适合喜欢自然风光和历史的游客,天安门适合喜欢历史和文化的人,人民公园适合喜欢休闲的游客。小汤圆、古街巷这些可能会吸引喜欢美食的游客,还有小山公园、和平公园这些适合喜欢自然和历史的游客。然后,我还需要考虑用户的需求,可能他们想去旅游,喜欢自然、历史、美食,或者喜欢休闲。因此,我需要针对不同的用户需求提供不同的建议。例如,喜欢自然的游客,可以选择大兴门和天山;喜欢历史的游客,可以选择八达门;喜欢美食的游客,推荐小汤圆;喜欢休闲的游客,可以选择人民公园。最后,我需要整理这些信息,确保涵盖各个方面,并给出详细的建议,让用户可以根据自己的需求选择合适的景点。
</think>北京的旅游景点众多,涵盖了自然、历史、美食、休闲等多种体验。以下是一些常见的旅游景点推荐:1. **大兴门**:位于北京市 central, 是北京市区的主要景点,适合喜欢自然风光、历史文化和环境的游客。2. **天安门**:位于北京市 capital, 是北京市的主要景点,适合喜欢历史、文化、自然和休闲的游客。3. **人民公园**:位于北京市 capital, 是北京市的主要景点,适合喜欢休闲、自然和历史的游客。4. **八达门**:位于北京市 capital, 是北京的标志性景点,适合喜欢历史、自然和休闲的游客。5. **小汤圆**:位于小汤圆的遗址遗址,适合喜欢美食的游客。6. **古街巷**:包括古街和古巷,是北京历史景点,适合喜欢历史、自然和休闲的游客。7. **小山公园**:位于小山,是北京市的著名景点,适合喜欢自然、历史和休闲的游客。8. **和平公园**:位于北京市 capital, 是北京市的著名景点,适合喜欢自然、历史和休闲的游客。9. **小山公园**:位于小山,是北京市的著名景点,适合喜欢自然、历史和休闲的游客。10. **四合院**:位于四合院,是北京的著名景点,适合喜欢历史和自然的游客。11. **天山**:位于天山,是北京的著名景点,适合喜欢自然和历史的游客。12. **小汤圆**:位于小汤圆的遗址遗址,适合喜欢美食的游客。13. **古街巷**:包括古街和古巷,是北京历史景点,适合喜欢历史、自然和休闲的游客。14. **小汤圆**:位于小汤圆的遗址遗址,适合喜欢美食的游客。15. **古街巷**:包括古街和古巷,是北京历史景点,适合喜欢历史、自然和休闲的游客。

可以看到结合langchain和llama.cpp构建出了一个链式LLM应用,根据指定的输入和流程,经过大模型的智能问答结果解析文本生成输出。(请忽略小尺寸智障AI的回答结果,只是为了演示)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/88357.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/88357.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/88357.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Serverless 数据库来了?无服务器数据库 vs 传统数据库有何不同?

随着云计算技术的迅猛发展&#xff0c;无服务器&#xff08;Serverless&#xff09;架构逐渐成为一种主流趋势。其中&#xff0c;Serverless 数据库作为云原生应用的重要组成部分&#xff0c;为开发者提供了前所未有的灵活性和成本效益。相比传统的数据库管理方式&#xff0c;S…

【读书笔记】如何画好架构图:架构思维的三大底层逻辑

【读书笔记】如何画好架构图&#xff1a;架构思维的三大底层逻辑 架构图并非技术人的“画功比拼”&#xff0c;而是一个团队、一个系统、一次项目从混沌走向清晰的关键抓手。它是系统的视觉语言&#xff0c;是让技术人员、产品经理、运营甚至老板都能站在统一上下文下讨论的“…

Maven 编译过程中发生了 Java Heap Space 内存溢出(OutOfMemoryError)

这个是我最近遇到的&#xff0c;因为本人最近换了电脑&#xff0c;这个电脑的前任是配置好了环境&#xff0c;但是当我用这个环境去做另外一个项目的时候&#xff0c;在maven构建war和jar包的时候&#xff0c;报了这个内存溢出mvn clean install 就给我报错了[ERROR] Failed to…

C++ 模板参数展开

C 模板参数展开一、获取可变参数大小二、通过模版循环继承的方式来展开可变参数三、改用Using去实现循环继承一、获取可变参数大小 背景&#xff1a; FLen<int, char, long> Len; 我想要获取模板参数类型的总大小 template<typename T,typename ...ParamTypes> c…

零基础入门物联网-远程门禁开关:云平台创建

一、 onenet云平台注册创建 远程开关的信息传输依赖云平台&#xff0c;本教程以 OneNET - 中国移动物联网开放平台为例进行操作&#xff0c;具体步骤如下&#xff1a; 1、平台账号创建 点击 OneNET - 中国移动物联网开放平台进入官网 点击页面中的 “登录” 按钮&#xff0c;…

html页面,当鼠标移开A字标就隐藏颜色框

html页面代码&#xff1a;<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><title>颜色选择器</title><style>body {font-family: "Microsoft YaHei", sans-serif;padding: 20px;}.c…

保姆级搭建harbor私有仓库与docker-ce教程与使用教程

搭建harbor仓库[rootharbor ~]# vim cat /etc/host192.168.121.12 harbor[rootharbor ~]# vim /etc/hostnameharbor导入 harbor 项目镜像[rootharbor ~]# tar -zxf harbor-v2.9.2.tgz -C /usr/local/[rootharbor ~]# cd /usr/local/harbor[rootharbor harbor]# docker load -i…

【Linux】Rocky Linux 安装 Docker 与 Docker-Compose

Docker 安装步骤 1. 安装必要的软件包 sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo2. 安装Docker sudo yum install docker-ce docker-ce-cli containerd.io如果出现 SSL 证书错误&#xf…

揭示独特模式:Elasticsearch 中 significant terms 聚合指南

作者&#xff1a;来自 Elastic Alexander Dvila 了解如何使用 significant terms 聚合来发现你数据中的洞察。 更多阅读&#xff1a;Elasticsearch&#xff1a;significant terms aggregation Elasticsearch 拥有大量新功能&#xff0c;可以帮助你为你的使用场景构建最佳搜索解…

pandas.DataFrame中axis参数

明确axis0与axis1的区别和联系&#xff0c; 假设有一个 DataFrame&#xff1a;indexAB012134axis0&#xff08;沿行方向&#xff09;&#xff1a; 操作会垂直向下进行&#xff0c;对每一列单独处理。 例如&#xff1a;df.sum(axis0) 会对列 A 和列 B 分别求和&#xff0c;结果是…

深度学习 最简单的神经网络 线性回归网络

用最简单的线性模型讲清 神经网络 训练全流程,让你 5 分钟看懂AI 是怎么学会预测的 🔥 1 真实神经元结构 📊 真实神经元包括: 树突 接收其他神经元传来的电信号(输入)。 细胞核 负责整合输入信号并产生动作电位。 轴突 传导动作电位到下一个神经元。 突触 释放神经递质…

k8s Mutating Admission Webhook 实现超卖

目录 1.什么是 Mutating Admission Webhook&#xff1f; 2.如何用 Mutating Admission Webhook 实现超卖&#xff1f; 3.实现超卖 3.1 理解目标 3.2 前置准备 3.3 开发 Mutating Webhook 3.4 配置 Webhook Server TLS 认证 3.5 注册 MutatingWebhookConfiguration 3.6…

为 Go-llm-cpp 接入 Web API 接口,创建 Chatbot 聊天机器人

接续上一篇&#xff0c;用 Go 打造本地 LLM 聊天机器人&#xff1a;整合 llm-go 与 go-llama.cpp&#xff0c;此篇开始建构前端与 API 接口 执行环境需求 • ✅ Go 1.20 • ✅ C toolchain&#xff08;macOS: Xcode Command Line Tools / Linux: g&#xff09; • ✅ GGUF 格式…

Docker笔记-Docker Compose

Docker笔记-Docker Compose Compose 是用于定义和运行多容器 Docker 应用程序的工具&#xff0c;通过 Compose 您可以使用 YML 文件来配置应用 程序需要的所有服务。然后&#xff0c;使用一个命令&#xff0c;就可以从 YML 文件配置中创建并启动所有服务。 Compose 使用的三个步…

n1 armbian 安装桌面环境并启用xrdp远程登录

armbian-config armbian-software201frpcrootarmbian:~# armbian-software [ STEPS ] Start selecting software [ Current system: ubuntu/noble ]... ──────────────────────────────────────────────────────────…

从传统到智能:地质灾害风险评估、易发性分析与灾后重建;AI大语言模型DeepSeek、ChatGPT、GIS、Python和机器学习深度融合

地质灾害是指全球地壳自然地质演化过程中&#xff0c;由于地球内动力、外动力或者人为地质动力作用下导致的自然地质和人类的自然灾害突发事件。在降水、地震等自然诱因的作用下&#xff0c;地质灾害在全球范围内频繁发生。我国不仅常见滑坡灾害&#xff0c;还包括崩塌、泥石流…

便捷的电脑自动关机辅助工具

软件介绍 本文介绍的软件是一款电脑上实用的倒计时和关机助手。 软件特性 这款关机助手十分贴心&#xff0c;它是一款无需安装的小软件&#xff0c;体积仅60KB&#xff0c;不用担心占用电脑空间&#xff0c;打开即可直接使用。 操作方法 你只需设置好对应的关机时间&#x…

Fiddler-关于抓取Android手机包,安装证书后页面加载失败,提示当前证书不可信存在安全风险的问题

Fiddler-关于抓取Android手机包&#xff0c;安装证书后页面加载失败&#xff0c;提示当前证书不可信存在安全风险的问题Fiddler-关于抓取Android手机包&#xff0c;安装证书后页面加载失败&#xff0c;提示当前证书不可信存在安全风险的问题原因解决方法Fiddler-关于抓取Androi…

Apache Spark 4.0:将大数据分析提升到新的水平

Apache Spark 4.0 带来了 PySpark 画图、多态 UDTF、改进的 SQL 脚本和 Python API 更新&#xff0c;以增强实时分析和可用性。 Apache Spark 4.0 于 2025 年发布&#xff0c;它通过增强性能、可访问性和开发者生产力的创新&#xff0c;重新定义了大数据处理。在 Databricks、A…

手机解压软件 7z:高效便捷的解压缩利器

在当今数字化时代&#xff0c;手机已经成为人们生活和工作中不可或缺的工具。随着文件传输和存储需求的不断增加&#xff0c;7z 文件格式因其高效的压缩比而备受青睐。在手机上处理 7z 文件变得越来越重要&#xff0c;合适的解压软件能带来诸多便利。首先&#xff0c;7z 文件格…