将本地LLM部署为OPENAI的API进行调用

接上一篇使用langgraph搭建agent。有一个问题是能不能用本地的llm来接入langgraph,这里先介绍一下把模型部署为OPENAI的API进行调用。

Vllm

部署

# CUDA_DEVICES_VISIBLE=0
python -m vllm.entrypoints.openai.api_server --host 0.0.0.0 --port 8000  --model /mnt/nvme2/xuedongge/LLM/llama-3.1-8B-Instruct --trust-remote-code  --gpu-memory-utilization 0.90

调用

inference_server_url = "http://localhost:8000/v1"
#其中model就是上面shell命令里面那个模型路径
model = ChatOpenAI(
    model="/mnt/nvme2/xuedongge/LLM/llama-3.1-8B-Instruct",
    openai_api_key="none",
    openai_api_base=inference_server_url,
    max_tokens=500,
    temperature=0,
)
re = model("I'm the best!")

FastChat

部署

python3 -m fastchat.serve.controller
# CUDA_DEVICES_VISIBLE=0
python3 -m fastchat.serve.model_worker --model-names "gpt-3.5-turbo" --model-path /mnt/nvme2/xuedongge/LLM/llama-3.1-8B-Instruct
python3 -m fastchat.serve.openai_api_server --host localhost --port 8000

调用

inference_server_url = "http://localhost:8000/v1"
from langchain_openai import ChatOpenAI

model = ChatOpenAI(
    model="gpt-3.5-turbo",
    openai_api_key="none",
    openai_api_base=inference_server_url,
    max_tokens=500,
    temperature=0,
)
print(model)
re = model.invoke("who are you?")

目前试了fastchat方式部署的OPENAI的API服务能接入到langgraph框架中

Ollama

部署

ollama serve
ollama run llama3.1

在这里插入图片描述

调用

#注意这里端口号改了
inference_server_url = "http://localhost:11434/v1"
from langchain_openai import ChatOpenAI

model = ChatOpenAI(
    model="gpt5",
    openai_api_key="none",
    openai_api_base=inference_server_url,
    max_tokens=500,
    temperature=0,
)
# print(model)
re = model.invoke("who are you?")

在这里插入图片描述

参考资料

https://www.bilibili.com/video/BV1GF8ye2E1E/?spm_id_from=333.337.search-card.all.click&vd_source=aed07ada24cdf555789faf75cbc507a4
https://github.com/lm-sys/FastChat/blob/main/docs/langchain_integration.md
https://github.com/ollama/ollama?tab=readme-ov-file

### RKLLM 视觉模型实现与使用 RKLLM(Recurrent Knowledge Large Language Model)视觉模型是一种结合了大语言模型和计算机视觉技术的先进架构。这类模型旨在处理涉及图像理解的任务,同时利用自然语言处理的能力来增强解释性和交互性。 #### 架构概述 RKLLM视觉模型通常由两部分组成: 1. **视觉感知模块** - 使用卷积神经网络(CNN)或其他先进的视觉特征提取器来分析输入图像。 - 提取到的特征向量会被传递给后续的语言建模组件[^1]。 2. **语言生成模块** - 基于Transformer架构的大规模预训练语言模型负责理解和生成描述性的文字说明。 - 输入既可以是纯文本也可以是从视觉感知阶段获得的信息组合形式。 #### 实现细节 对于具体的实现过程,假设已经安装好了必要的依赖项如PyTorch等深度学习框架,则可以通过如下Python代码片段创建一个简单的RKLLM视觉模型实例: ```python import torch from transformers import CLIPProcessor, CLIPModel def create_rkllm_visual_model(): device = "cuda" if torch.cuda.is_available() else "cpu" # 加载预训练好的CLIP模型及其处理器 model_name_or_path = 'openai/clip-vit-base-patch32' processor = CLIPProcessor.from_pretrained(model_name_or_path) model = CLIPModel.from_pretrained(model_name_or_path).to(device) return { 'processor': processor, 'model': model, 'device': device } rkllm_vis = create_rkllm_visual_model() ``` 这段代码展示了如何加载预先训练过的CLIP (Contrastive Language–Image Pre-training) 模型,这是一种流行的多模态模型,适用于多种跨模态任务,包括但不限于图像分类、检索以及零样本迁移学习[^4]. #### 应用场景 当涉及到实际应用场景时,RKLLM视觉模型可用于自动化几乎任何涉及解析和生成基于视觉数据的文字内容的工作流程。这可能涵盖了从自动图像标注、辅助诊断医疗影像报告撰写直到支持无人驾驶汽车决策制定等多个领域.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

牛右刀薛面

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

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

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

打赏作者

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

抵扣说明:

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

余额充值