【AI大模型开发】
大模型的运行需要极高的硬件资源,通常都是服务器集群并挂载数量众多的 GPU(显卡)。为了满足低性能设备的运行,可以对大模型进行蒸馏。ollama:是一款旨在简化大型语言模型本地部署和运行过程的开源软件。ollama 提供了一个轻量级、易于扩展的框架,让开发者能够在本地机器上轻松构建和管理 LLMs(大型语言模型)。通过 ollama,开发者可以导入和定制自己的模型,无需关注复杂的底层实现细节。安装
什么是大模型
大模型,一般也称为 "大语言模型",是一种基于深度学习技术训练出来的人工智能系统,主要用于处理和生成人类语言。

大模型工作原理:通过学习大量的文本,掌握了语言的规律和知识,然后根据相应的提示,形成相应的输出。
深度神经网络
深度学习就是用层数较多(深)的人工神经网络从数据中学习输入与输出之间映射关系的算法,而人工神经网络是受生物神经网络的结构和功能启发下设计的计算模型。

大模型分类

大模型实现三步走
1.学会说话
利用深度神经网络来训练语言模型,先收集尽可能多的文本,每次随机抽一段上文,让模型学会接着往下 “背诵”

由于看过和背过的文字实在是太多了(实际训练使用了几乎所有能从各种渠道获得的文字和图书资源)模型就可以像模像样地说话了。
2.理解意图
简单的说就是理解用户的需求是什么。

自然语音(人类语音)是非结构化的,以中文为例,同样的含义可以有不同的说法。通过训练,让大模型可以准确的识别用户的意图。并基于 “给上文、补下文” 的形式完成回答。
3.反馈择优
对于某些问题,模型可能会生成带有偏见、歧视或者令人不适的回答。另外,之前提到过,对于同一个问题,模型能够生成多个不同的回答。

这一步中我们让人们对同一问题的不同回答进行排序,然后采用强化学习算法进一步调整模型,使输出回答更符合人们的期望。
什么是大模型的蒸馏模型
大模型的运行需要极高的硬件资源,通常都是服务器集群并挂载数量众多的 GPU(显卡)。为了满足低性能设备的运行,可以对大模型进行蒸馏。


ollama 介绍
ollama:是一款旨在简化大型语言模型本地部署和运行过程的开源软件。
ollama 提供了一个轻量级、易于扩展的框架,让开发者能够在本地机器上轻松构建和管理 LLMs(大型语言模型)。
通过 ollama,开发者可以导入和定制自己的模型,无需关注复杂的底层实现细节。
安装好ollama之后,在命令行执行:

可以检查ollama是否安装成功,并且下载大模型
大模型的名称可以进入官网查询:
位于右上角的model中。
需要注意的是,我们在下载大模型的时候可能因为权限不足导致下载的请求失败,所以我们需要打开终端管理员运行:

重启ollama,再次进行下载大模型的操作就行了。

Chatbox
Chatbox 是一款基于 OpenAI API 的开源跨平台智能对话工具,支持 Windows、macOS 和 Linux 系统。它旨在为用户提供便捷的 AI 对话体验,同时具备强大的功能扩展性和灵活性。

为什么要用 WSL
WSL 作为 Windows 10 系统带来的全新特性,正在逐步颠覆开发人员既有的选择。
- 传统方式获取 Linux 操作系统环境,是安装完整的虚拟机,如 VMware
- 使用 WSL,可以以非常轻量化的方式,得到 Linux 系统环境
目前,开发者正在逐步抛弃以虚拟机的形式获取 Linux 系统环境,而在逐步拥抱 WSL 环境。
所以,课程也紧跟当下趋势,为同学们讲解如何使用 WSL,简单、快捷的获得 Linux 系统环境。
所以,为什么要用 WSL,其实很简单:
- 开发人员都在用,大家都用的,我们也要学习
- 实在是太方便了,简单、好用、轻量化、省内存
什么是 WSL
WSL:Windows Subsystem for Linux,是用于 Windows 系统之上的 Linux 子系统。

作用很简单,可以在 Windows 系统中获得 Linux 系统环境,并完全直连计算机硬件,无需通过虚拟机虚拟硬件。
简而言之:Windows 10 的 WSL 功能,可以无需单独虚拟一套硬件设备,就可以直接使用主机的物理硬件,构建 Linux 操作系统,并不会影响 Windows 系统本身的运行。
Ollama python基础api
- list 方法,列出可用模型
client.list() - show 方法,显示指定模型的详细信息
client.show('deepseek-r1:7b') - ps 方法,显示当前正在运行的模型
client.ps() - chat 方法,与模型进行对话,示例代码
import ollama
#获取ollama客服端对象
Client = ollama.Client(host="http://localhost:11434")
#list列出有哪些模型
models = Client.list()
print(models)
#展示模型的详细信息
print(Client.show("deepseek-r1:7b"))
#ps列出有哪些模型在运行
print(Client.ps())
#chat和模型进行对话
res = Client.chat(
model = "deepseek-r1:7b",
messages=[
{"role": "user", "content": "你是谁?"}
]
)
print(res["message"]["content"])
运行结果

可多次提问的demo
import ollama
client = ollama.Client(host="http://localhost:11434")
# list,列出有哪些可用模型
print(client.list())
# show,展示模型的详细信息
print(client.show('deepseek-r1:7b'))
# ps,列出有哪些模型在运行中
print(client.ps())
while True:
prompt = input("请输入问题:")
# chat,和模型进行对话
response = client.chat(
model='deepseek-r1:7b',
messages=[{"role": "user", "content": prompt}]
)
print(response['message']['content'])
Streamlit的基础api应用
import streamlit as st
import time
#title设置标题
st.title("py快速入门教学")
#write在网页中渲染提供的内容
st.write("欢迎来到本页面")
#分割符
st.divider()
#输入聊天框
name = st.chat_input("请输入你的名字:")
if name:
st.write(f"欢迎{name}")
#spinner创建等待动画
with st.spinner("思考中..."):
time.sleep(5)
st.write("思考完成")
效果展示

更多推荐


所有评论(0)