LangChain 安装与环境搭建,并调用OpenAI与Ollama本地大模型

🐇明明跟你说过:个人主页

🏅个人专栏:《深度探秘:AI界的007》 🏅

🔖行路有良友,便是天堂🔖

目录

一、引言

1、什么是LangChain

2、LangChain 主要有哪些功能

3、LangChain应用场景

二、安装前准备

1、硬件与系统要求

2、依赖项

 三、LangChain 安装

1、pip 安装 LangChain

2、安装OpenAI API 相关依赖 

3、安装本地 LLM Ollama(可选)

四、环境配置

1、获取OpenAI Key

2、配置环境变量

五、运行 LangChain 示例代码 

1、调用 OpenAI API 进行对话

2、调用Ollama本地模型进行对话 


一、引言

1、什么是LangChain

如果把 大语言模型(LLM) 比作一个强大的“智能大脑”,那么 LangChain 就像是它的“手和脚”——帮助这个大脑连接外部世界,完成更复杂的任务。

🌟 LangChain 是什么?

LangChain 是一个 用于构建智能应用的框架,它让大语言模型(如 ChatGPT、Llama、Claude 等)能够更好地记忆、思考、规划,并与各种外部工具(数据库、API、搜索引擎等)进行交互。

🚀 为什么要用 LangChain?

单独使用 ChatGPT,你只能进行简单的对话;但如果你想让 AI 变得更智能,比如:

  • 记住你上次的聊天记录(记忆能力)

  • 访问数据库查询信息(数据能力)

  • 自动执行任务,比如帮你查天气、发邮件(行动能力)

  • 进行复杂的推理,比如分步规划解决问题(思考能力)

   

3、LangChain应用场景

LangChain 让大语言模型(LLM)不再只是一个“聊天机器人”,而是一个能执行任务、调用工具、与外部世界交互的 智能 AI 助手

1️⃣ 智能问答系统(企业知识库 / 客服机器人) 🏢💬

📌 场景
公司有大量文档(如产品手册、政策文件、FAQ),用户或员工想快速查询答案。

💡 LangChain 解决方案

  • 向量数据库(如 FAISS、Chroma)存储企业文档,LangChain 通过 RAG(检索增强生成) 获取精准答案。

  • 结合 Memory 记忆,客服机器人可以记住用户的上下文对话,提高体验。

应用示例

  • 企业内部 FAQ 查询助手

  • 电商智能客服(解答订单、物流、退货问题)

  • IT 技术支持(帮助用户解决软件或硬件问题)


2️⃣ 智能搜索 & 文档分析 📖🔍

📌 场景
需要在海量文档、PDF、数据库中查找信息,并进行分析总结。

💡 LangChain 解决方案

  • 结合向量数据库,支持模糊匹配搜索(即使问题表述不完全一致)。

  • 支持多模态,不仅能查文本,还能处理表格、代码、图片等数据。

  • 结合 LLM 进行摘要,快速提炼关键信息。

应用示例

  • 法律助手(快速查找法规、案例)

  • 学术搜索(从大量论文中提炼关键信息)

  • 金融数据分析(从财报中提取核心指标)


3️⃣ 智能运维(AIOps) 🖥️⚙️

📌 场景
运维工程师需要随时监控服务器状态,发现异常并快速处理。

💡 LangChain 解决方案

  • 结合 Agent 代理,让 AI 根据指令选择执行不同任务(如查看 CPU 使用率、磁盘空间、网络流量)。

  • 结合 API 工具,让 AI 直接调用 Prometheus、Grafana、Elasticsearch 进行监控。

  • 自动异常检测 & 预警,AI 主动发现异常并给出建议。

应用示例

  • 服务器健康检查(比如:“帮我看看服务器 192.168.1.1 运行状态”)

  • 日志分析(查找系统日志、过滤特定错误)

  • 自动化运维(执行运维任务,如重启某个服务)

   

二、安装前准备

1、硬件与系统要求

硬件:

  •  CPU:>4C
  •  内存:>8G
  •  硬盘:最好使用SSD,机械硬盘也

系统:

  • Win10/Win11 

2、依赖项

  • python版本:3.12
  • pip版本:最新版(示例版本为 25.0.1)
  • 编辑器:PyCharm

 三、LangChain 安装

1、pip 安装 LangChain

创建虚拟环境(可选)

python -m venv langchain_env
source langchain_env/bin/activate  # Mac/Linux
langchain_env\Scripts\activate     # Windows

使用 pip 安装:

pip install langchain

验证安装

import langchain
print(langchain.__version__)  # 显示 LangChain 版本

如果成功输出版本号,说明安装完成 ✅。

  

2、安装OpenAI API 相关依赖 

运行以下命令安装 OpenAI 官方 SDK 及相关库:

pip install openai tiktoken langchain-openai langchain-ollama
  • openai:用于调用 OpenAI API(GPT-4、GPT-3.5)。

  • tiktoken:用于优化 Token 计算,提高处理效率。

 3、安装本地 LLM Ollama(可选)

下载安装包,Download Ollama on Windows

下载完成后,直接点击下一步安装

然后拉取大模型到本地,这里拉取的是 deepseek-r1:32b

ollama pull deepseek-r1:32b

拉取后查看版本信息

ollama list

  

四、环境配置

1、获取OpenAI Key

我们没有办法直接访问到OpenAI,所以这里使用香港代理,大家注册一个账户,然后登录,购买一个套餐即可,如果是自己学习使用,买一个10元的基本就够用了

GPT4.0 API KEY By OPENAI HK 中转ChatGPT

购买完成后,到控制台获取一个Key

  

2、配置环境变量

配置我们刚刚申请的Key

setx OPENAI_BASE_URL "https://api.openai-hk.com/v1"
setx OPENAI_API_KEY "hx-*************************"

五、运行 LangChain 示例代码 

1、调用 OpenAI API 进行对话

from openai import OpenAI
import os
# 初始化 OpenAI 服务。
client = OpenAI()
completion = client.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "system", "content": "assistant"},
        {"role": "user", "content": "你好,你是谁"}
    ]
)
print(completion.choices[0].message)
  • client = OpenAI():这一行初始化了一个 OpenAI 客户端对象,允许通过该对象与 OpenAI 的 API 进行交互。此时,client 将是一个可以调用 OpenAI API 的对象。
  • completion = client.chat.completions.create(...):这一行调用了 client 对象的 chat 属性中的 completions.create() 方法,用于向 OpenAI 的 API 发送一个聊天请求,并获取聊天补全(chat completion)结果。具体来说:
  • model="gpt-4o":指定使用的模型是 gpt-4o,即 GPT-4 的一个版本。
  • messages=[...]:定义了聊天的对话历史,格式为一系列字典对象,每个字典包含 role 和 content 字段。
  • role 指明消息的角色,可以是 system(系统消息)、user(用户消息)、assistant(助手消息)。
  • content 是消息的实际内容。
  • 在这个例子中:
  • 第一条消息的角色是 system,内容是 "assistant",意味着这是一个系统消息,指示助手的身份。
  • 第二条消息的角色是 user,内容是 "你好,你是谁",即用户发送给助手的消息。

  

2、调用Ollama本地模型进行对话 

from langchain_ollama import OllamaLLM
# from langchain_core.output_parsers import StrOutputParser
# from langchain_core.prompts import ChatPromptTemplate

# 初始化本地 LLM
llm = OllamaLLM(base_url="http://192.168.0.99:11434", model="deepseek-r1:32b")

# 发送对话请求
response = llm.invoke("介绍一下 LangChain 的核心功能")
print(response)
  • llm = OllamaLLM(...):这行代码创建了一个 OllamaLLM 对象(即本地语言模型),并将其赋值给变量 llm。该对象用于与本地的 Ollama 模型进行交互。
  • base_url="http://192.168.0.99:11434":这是 Ollama 服务的 URL 地址,指向本地运行的 Ollama 实例。这个地址会被用来发送请求到该服务。你需要将其替换为你的本地 Ollama 服务的 IP 地址和端口号。
  • model="deepseek-r1:32b":指定要使用的具体本地模型。在这里使用的是名为 deepseek-r1:32b 的模型。这个模型可以是任何已安装并运行的本地模型,具体的模型名称取决于本地环境中的配置。
  •  print(response):这行代码将打印模型返回的响应。response 是模型基于输入文本生成的回答,它会被输出到控制台。我们可以看到模型生成的对话内容或文本。

  

 💕💕💕每一次的分享都是一次成长的旅程,感谢您的陪伴和关注。希望这些文章能陪伴您走过技术的一段旅程,共同见证成长和进步!😺😺😺

🧨🧨🧨让我们一起在技术的海洋中探索前行,共同书写美好的未来!!!   

### 使用 LangChain 调用本地大模型并实现可视化界面 #### 1. 安装依赖库 为了使用 LangChain 和 Ollama调用本地大语言模型,首先需要安装必要的 Python 库。可以通过以下命令完成环境搭建: ```bash pip install langchain ollama requests gradio ``` 上述命令会安装 `langchain`、`ollama` 和用于创建可视化的工具 `gradio`。 --- #### 2. 配置 LangChain 连接本地模型 通过 LangChain 的 API 接口可以轻松连接到本地运行的大语言模型 (LLM),以下是具体代码示例: ```python from langchain.llms import Ollama # 初始化 Ollama LLM 对象 llm = Ollama(model="llama2", temperature=0.7, callback_manager=None) # 测试模型响应能力 response = llm("解释一下量子力学的核心概念是什么?") print(response) ``` 此部分展示了如何利用 LangChain 中的 `Ollama` 类来加载指定的本地模型[^2]。在此基础上,还可以进一步调整参数以优化生成效果。 --- #### 3. 创建 Gradio 可视化界面 Gradio 是一种简单易用的框架,能够快速构建机器学习应用的交互式前端页面。下面是一个完整的例子,演示如何将 LangChain 结合 Gradio 展示结果: ```python import gradio as gr from langchain.llms import Ollama def generate_response(prompt): """定义一个函数接收输入提示词,并返回由LMM产生的回复""" llm = Ollama(model="llama2") # 加载预设好的OLLAMA模型实例 result = llm(prompt) # 将用户的提问传递给模型处理 return result # 返回最终的结果字符串 # 构建Gradio应用程序结构 with gr.Blocks() as demo: with gr.Row(): input_textbox = gr.Textbox(label="请输入您的问题:") output_textbox = gr.Textbox(label="模型的回答:") submit_button = gr.Button(value="提交") # 绑定事件逻辑至按钮点击操作上 submit_button.click(fn=generate_response, inputs=[input_textbox], outputs=[output_textbox]) demo.launch(share=True) # 启动服务允许外部访问 ``` 以上脚本实现了从用户端获取数据并通过 LangChain 发送请求到本地部署的语言模型的功能。同时借助 Gradio 提供了一个直观友好的图形化用户体验界面。 --- #### 4. 关键技术点解析 - **LangChain**: 主要负责简化与不同类型的自然语言处理系统的集成过程,支持多种主流平台如 OpenAI、HuggingFace 等以及自托管解决方案比如这里提到的 Ollama。 - **Ollama**: 是一款轻量级开源软件包,旨在让开发者能够在个人计算机或者服务器环境中便捷地运行大型预训练神经网络架构而无需担心高昂成本或其他复杂因素的影响。 - **Gradio**: 则专注于帮助研究人员和技术人员迅速开发原型产品并向非技术人员展示研究成果的价值所在。 ---
评论 45
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

明明跟你说过

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

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

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

打赏作者

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

抵扣说明:

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

余额充值