AI大模型企业应用实战--本地大模型部署

本文涉及的产品
NLP自然语言处理_基础版,每接口每天50万次
视觉智能开放平台,分割抠图1万点
NLP自然语言处理_高级版,每接口累计50万次
简介: 【8月更文挑战第20天】

3 使用 Ollama 在本地部署大模型

3.1 下载并运行应用程序

3.2 从命令行中选取模型(ollama pull llam2)

官网支持的模型

挑选一个比较小的试玩下:

3.3 运行

浏览器:

4 本地大模型调用

既然部署本地完成了,来看看如何调用呢?

from langchain_community.llms import Ollama

llm = Ollama(model="qwen2:0.5b")
llm.invoke(input="你是谁?")

使用流式

#使用流式
from langchain.callbacks.manager import CallbackManager
from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler

llm = Ollama(
    model="qwen2:0.5b", callback_manager=CallbackManager([StreamingStdOutCallbackHandler()])
)
llm.invoke(input="第一个登上月球的人是谁?")

5 模型评估

5.1 远程大模型

from langchain_openai import ChatOpenAI
from langchain.evaluation import load_evaluator
llm = ChatOpenAI(
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
    model="qwen-plus"
)

evaluator = load_evaluator("criteria", llm=llm, criteria="conciseness")
eval_result = evaluator.evaluate_strings(
    prediction="four.",
    input="What's 2+2?",
)
print(eval_result)

如果不简洁的回答:

#inpt 输入的评测问题
#prediction 预测的答案
# 返回值 Y/N 是否符合
# 返回值score 1-0分数,1为完全,0为不完全
eval_result = evaluator.evaluate_strings(
    prediction="What's 2+2? That's an elementary question. The answer you're looking for is that two and two is four.",
    input="What's 2+2?",
)
print(eval_result)

5.2 本地大模型

from langchain_community.chat_models import ChatOllama
llm = ChatOllama(model="qwen2:0.5b")
evaluator = load_evaluator("criteria", llm=llm, criteria="conciseness")
#inpt 输入的评测问题
#prediction 预测的答案
# 返回值 Y或者N是否符合
# 返回值score 1-0分数,1为完全,0为不完全
eval_result = evaluator.evaluate_strings(
    prediction="What's 2+2? That's an elementary question. The answer you're looking for is that two and two is four.",
    input="What's 2+2?",
)
print(eval_result)

5.3 内置评估标准

# 内置的一些评估标准
from langchain.evaluation import Criteria

list(Criteria)

llm = ChatOllama(model="qwen2:0.5b")
#使用enum格式加载标准
from langchain.evaluation import EvaluatorType
#自定义评估标准
custom_criterion = {
   
   
    "幽默性": "输出的内容是否足够幽默或者包含幽默元素",
}
eval_chain = load_evaluator(
    EvaluatorType.CRITERIA,
    llm=llm,
    criteria=custom_criterion,
)
query = "给我讲一个笑话"
prediction = "有一天,小明去买菜,结果买了一堆菜回家,结果发现自己忘了带钱。"
eval_result = eval_chain.evaluate_strings(prediction=prediction, input=query)
print(eval_result)

模型比较

from langchain.model_laboratory import ModelLaboratory
from langchain.prompts import PromptTemplate
from langchain_openai import OpenAI
from langchain_community.llms.chatglm import ChatGLM
from langchain_community.chat_models import ChatOllama

#比较openai、ChatGLM、ChatOllama三个模型的效果
llms = [
    # OpenAI(temperature=0),
    ChatOllama(model="qwen2:0.5b"),
]
model_lab = ModelLaboratory.from_llms(llms)
model_lab.compare("齐天大圣的师傅是谁?")

目录
相关文章
|
8天前
|
人工智能
AI大模型初体验
为了实现真正的A,需不断学习以提升能力。
39 3
AI大模型初体验
|
1天前
|
机器学习/深度学习 人工智能 自然语言处理
赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
【9月更文挑战第4天】赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
AI人工智能大模型的架构演进
随着深度学习的发展,AI大模型(Large Language Models, LLMs)在自然语言处理、计算机视觉等领域取得了革命性的进展。本文将详细探讨AI大模型的架构演进,包括从Transformer的提出到GPT、BERT、T5等模型的历史演变,并探讨这些模型的技术细节及其在现代人工智能中的核心作用。
27 9
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
AI战略丨物流 AI 新变化,用大模型定义
物流企业在大模型上纷纷主动探索,也在推动物流行业实现智能化加速。
|
4天前
|
人工智能 Linux iOS开发
AI超强语音转文本SenseVoice,本地化部署教程!
【9月更文挑战第7天】以下是AI超强语音转文本工具SenseVoice的本地化部署教程:首先确保服务器或计算机满足硬件和软件要求,包括处理器性能、内存及操作系统等。接着从官网下载适合的安装包,并按操作系统进行安装。配置音频输入设备和语言模型后,启动SenseVoice并测试其语音转文本功能。最后根据实际使用情况进行优化调整,并定期更新以获取最新功能。详细步骤需参照官方文档。
|
5天前
|
机器学习/深度学习 人工智能 测试技术
AI计算机视觉笔记二十五:ResNet50训练部署教程
该项目旨在训练ResNet50模型并将其部署到RK3568开发板上。首先介绍了ResNet50网络,该网络由何恺明等人于2015年提出,解决了传统卷积神经网络中的退化问题。项目使用车辆分类数据集进行训练,并提供了数据集下载链接。环境搭建部分详细描述了虚拟环境的创建和所需库的安装。训练过程中,通过`train.py`脚本进行了15轮训练,并可视化了训练和测试结果。最后,项目提供了将模型转换为ONNX和PT格式的方法,以便在RK3568上部署。
|
9天前
|
人工智能 JSON 自然语言处理
你的Agent稳定吗?——基于大模型的AI工程实践思考
本文总结了作者在盒马智能客服的落地场景下的一些思考,从工程的角度阐述对Agent应用重要的稳定性因素和一些解法。
|
5天前
|
机器学习/深度学习 人工智能 计算机视觉
AI计算机视觉笔记二十三:PP-Humanseg训练及onnxruntime部署
本文介绍了如何训练并使用PaddleSeg的人像分割模型PP-HumanSeg,将其导出为ONNX格式,并使用onnxruntime进行部署。首先在AutoDL服务器上搭建环境并安装所需库,接着下载数据与模型,完成模型训练、评估和预测。最后,通过paddle2onnx工具将模型转换为ONNX格式,并编写预测脚本验证转换后的模型效果。此过程适用于希望在不同平台上部署人像分割应用的开发者。
|
4天前
|
机器学习/深度学习 人工智能 搜索推荐
AI技术在现代医疗领域的革命性应用
随着人工智能技术的飞速发展,其在医疗领域的应用也日益广泛。本文将从AI技术在医疗诊断、治疗和健康管理等方面的应用入手,探讨其如何改变传统医疗模式,提高医疗服务质量和效率。同时,我们也将关注AI技术在医疗领域面临的挑战和未来发展趋势。
|
3天前
|
机器学习/深度学习 人工智能 编解码
深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析
【9月更文挑战第2天】深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析
 深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析