树莓派5 笔记26:ollama大型语言模型_中文输入法_Python_espeak文字转语音
今日继续学习树莓派5 8G:(Raspberry Pi,简称RPi或RasPi)
本人所用树莓派4B 装载的系统与版本如下:
版本可用命令 (lsb_release -a) 查询:
Opencv 与 python 版本如下:
下载大语言模型,下载中文输入法,Python_espeak文字转语音
目录
大型语言模型与ollama:
ollama主要功能与特点:
下载与验证ollama:
验证下载:
安装中文输入法:
编辑
切换输入法:
下载语言模型:
文字转语音:
下载espeak:
测试espeak:
关键列说明:
在Python中使用espeak:
网上查阅资料贴出:
大型语言模型与ollama:
大型语言模型(Large Language Models,简称LLM)是一类基于人工智能技术的高级文本生成系统, 其主要特点是能够通过大规模的训练数据来学习和理解人类语言,并能够生成自然流畅的文本。
ollama主要功能与特点:
- 简化部署:Ollama旨在简化在Docker容器中部署LLM的过程,使得管理和运行这些模型变得更加容易。
- 捆绑模型组件:它将模型权重、配置和数据捆绑到一个包中,称为Modelfile,这有助于优化设置和配置细节,包括GPU使用情况。
- 支持多种模型:Ollama支持多种大型语言模型,如Llama 2、Code Llama、Mistral、Gemma等,并允许用户根据特定需求定制和创建自己的模型。
- 跨平台支持:支持macOS和Linux平台,Windows平台的预览版也已发布。用户可以通过简单的安装过程,在各自平台上运行Ollama。
- 命令行操作:安装完成后,用户可以通过简单的命令行操作启动和运行大型语言模型。例如,要运行Gemma 2B模型,只需执行命令
ollama run gemma:2b
。- 资源要求:为了顺畅运行大模型,需要一定的内存或显存。例如,至少需要8GB的内存/显存来运行7B模型,至少需要16GB来运行13B模型,至少需要32GB来运行34B的模型。
下载与验证ollama:
curl -fsSL https://ollama.com/install.sh | sh
验证下载:
安装中文输入法:
sudo apt-get update sudo apt-get install -y fcitx fcitx-googlepinyin
安装完后重启系统,添加输入法:
先取消 Only Show Current Language选项勾选,然后输入方式列表内容选择 Google PinYin,最后点击 OK 选项,关闭这个界面
切换输入法:
Ctrl + 空格
下载语言模型:
这里我下了俩个阿里的语言模型:
阿里的通义千问:
ollama pull qwen2:7bollama run qwen2:1.5b
通过终端输入调出大模型: ollama run qwen2:7bollama run qwen2:1.5b
它们都是能离线运行的对话模型,但注意只有树莓派5能够运行这俩大模型,而且树莓派5的8G版本才能运行7b的大模型,4G版本只能运行1.5b
文字转语音:
下载espeak:
sudo apt-get install espeak
测试espeak:
在终端输入:
espeak -vzh “世界你好”
这句中文能正常播放,但有报错,这行报错意味着句子其实是没法正常播放的
可以在此时输入以下句子测试一下,你会发现句子只发音了一半Hello:
espeak -vzh “hello world”
这是因为命令中使用了中文引号(
“
和”
),在大多数 Unix/Linux 系统中可能不被识别。应使用英文引号("
或'
),或者不使用引号,因为 "hello world" 作为一个简单的字符串,通常不需要引号。复制以下代码即可正常读出hello world:
espeak -vzh "hello world"
对于发音声音的选择:
可以在终端输入来查询语言,发音:
espeak --voices
关键列说明:
- Language: 这一列列出了每种声音支持的语言或方言。
- VoiceName: 这一列包含了用于引用该声音的特定名称或代码。然而,请注意,这个列并不总是直接对应于
espeak
命令中用于指定声音的参数。- File: 在某些情况下,这一列可能包含了一个更具体的文件名或路径,但这通常不是直接用于
espeak
命令的参数。不过,它可以帮助您了解声音文件的位置或命名模式。- Other Languages: 这一列提供了额外支持的语言或方言的备注,这些信息有助于理解声音的适用性。
以下是使用美式英语发音的示例:
espeak -v en-us "hello world"
在Python中使用espeak:
替换
'-v', 'en+f1'
中的en+f1
以选择不同的语音。espeak
支持多种语言和声音。你可以调整语速(
-s
)和音调(-p
)参数,以找到最适合你需求的设置。
import subprocessdef speak(text):# 构造espeak命令# -v 是设置语音(例如,en+f1 是英语女性声音1)# -s 是设置语速(例如,150 是正常语速)# -p 是设置音调(例如,50 是正常音调)# 文本作为最后一个参数传入#command = ['espeak', '-v', 'zh+f2', '-s', '100', '-p', '50', text]#中文女#command = ['espeak', '-v', 'zh', '-s', '100', '-p', '50', text]#中文男 command = ['espeak', '-v', 'en+f1', '-s', '150', '-p', '50', text] #英文女# 使用subprocess.run运行命令subprocess.run(command)# 使用函数speak("Hello, this is espeak speaking through Python.")
#speak("你好世界")
网上查阅资料贴出:
基于树莓派的语音识别和语音合成_树莓派python离线语音识别-CSDN博客
python linux 中文语音合成,树莓派-6-中文语音合成和智能对话-CSDN博客
相关文章:

树莓派5 笔记26:ollama大型语言模型_中文输入法_Python_espeak文字转语音
今日继续学习树莓派5 8G:(Raspberry Pi,简称RPi或RasPi) 本人所用树莓派4B 装载的系统与版本如下: 版本可用命令 (lsb_release -a) 查询: Opencv 与 python 版本如下: 下载大语言模型,下载中文输入法&#…...
【kubernetes】k8s安全机制
Kubernetes 作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介, 也是外部控制的入口。所以 Kubernetes 的安全机制基本就是围绕保护 API Server 来设计的。 比如 kubectl 如果想向 API Server…...
Android T(13) The app is granted permissions by default
我的博客 对比Android11,frameworks\base\services\core\java\com\android\server\pm\permission文件夹下,多了个PermissionManagerServiceImpl.java. 有一部分关于权限的处理,移到了这个文件中.比如:restorePermissionState(…) all app granted permissions by default b/fr…...

4 - Linux远程访问及控制
目录 一、SSH远程管理 1. SSH概述 2.SSH的优点 3.配置OpenSSH客户端 4.sshd服务支持的两种验证方式 5. 使用SSH客户端程序 5.1 ssh - 远程登录 5.2 scp - 远程复制 6.配置密钥对验证 二、TCP Wrappers访问控制 1.TCP Wrappers 概述 2. TCP Wrappers 机制的基本原则 …...

如何使用AWS EC2资源?
随着云计算技术的迅速发展,越来越多的企业和个人选择将工作负载迁移到云端,以获取灵活性、可扩展性和成本效益。作为全球领先的云计算服务提供商,AWS为用户提供了丰富的服务,其中最受欢迎的之一是云服务器EC2。本文中九河云将探讨…...

Linux高编-进程的概念(1)
目录 1.ps aux 2.top 3.kill -2 进程pid // fork函数 getpid拿自己的进程号 getppid拿父进程号 fork()&&fork()||fork() 父子进程的关系: 僵尸进程,孤儿进程 僵…...
go语言中new和make的区别
在 Go 语言中,new 函数不能用来创建通道(chan),这是因为 new 只分配内存并返回指向该内存的指针,而不负责初始化内存。 为什么不能使用 new 来创建通道? new 只能分配内存,但不会对内存进行初…...

SpringBoot响应式编程(3)R2DBC
一、概述 1.1简介 R2DBC基于Reactive Streams反应流规范,它是一个开放的规范,为驱动程序供应商和使用方提供接口(r2dbc-spi),与JDBC的阻塞特性不同,它提供了完全反应式的非阻塞API与关系型数据库交互。 …...
什么是私有继承
私有,公有,针对类而言; 私有( private )的成员,自己的,只能在自己内部( 类的定义体内部 )访问,外部( 类的定义体外部 )不能访问/调用; 公有( 或者说公开,public )的成员࿰…...
Scratch编程:开启智能硬件控制的大门
标题:“Scratch编程:开启智能硬件控制的大门” 在当今数字化时代,编程不仅仅是与计算机的交互,更是与物理世界的连接。Scratch,这款由麻省理工学院媒体实验室开发的视觉化编程语言,以其易学易用的特性&…...
机器学习第十二章-计算学习理论
目录 12.1基础知识 12.2 PAC学习 12.3有限假设空间 12.3.1可分情形 12.3.2不可分情形 12.4VC维 12.5 Rademacher复杂度 12.1基础知识 计算学习理论研究的是关于通过"计算"来进行"学习"的理论,即关于机器学习的理论基础,其目的…...
Java-自定义注解操作日志记录处理(@Pointcut注解不是必须的)
在Java中,使用自定义注解结合Spring AOP来实现操作日志记录是一种常见的做法。这种方式可 以帮助你轻松地在不修改业务代码的情况下增加日志记录的功能。 下面我将详细介绍如何定义一个自定义注解,并结合Spring AOP来实现操作日志记录的功能。 1. 定义自定义注解 首先,我…...

【c++】深入理解别名机制--引用
🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:C 目录 前言 一、引用的概念和定义 二、引用的特性 三、引用的实用性 1.引用传参 2.引用做返回值 2.1 引用做返回值的作用 2.2 引用坍缩问题、悬挂引用问…...
简便的qemu img扩容方法
虚拟机用着用着磁盘空间就不够了,那就要想办法增加磁盘空间大小 了。在虚拟机本身磁盘的基础上直接增加空间大小最简便,于是记录一下方法。 首先,在虚拟机关机状态下,使用qemu-img命令给虚拟机的磁盘镜像增加虚拟空间5GBÿ…...
EPERM: operation not permitted,
这个错误提示 EPERM: operation not permitted, mkdir C:\Program Files\nodejs\node_global\node_modules\pnpm_tmp 通常是因为权限不足导致的。在 Windows 系统中,C:\Program Files\ 目录通常需要管理员权限才能写入。 要解决这个问题,你可以尝试以下…...

将Centos 8 Linux内核版本升级或降级到指定版本
本文以centos 8.0为例,内核版本为4.18.0-80.el8.x86_64,升级到内核版本为4.18.0-80.4.2.el8_0.x86_64。 1.查看当前系统版本信息 [rootcentos80-1905 ~]# uname -sr Linux 4.18.0-80.el8.x86_642.在网站:https://vault.centos.org/里面下载…...

小程序商城被盗刷,使用SCDN安全加速有用吗?
在电子商务蓬勃发展的今天,小程序商城因其便捷性和灵活性成为商家和消费者的新宠。然而,随着其普及,小程序商城的安全问题也日益凸显,尤其是盗刷现象频发,给商家和用户带来了巨大损失。面对这一挑战,是否可…...

nginx的基本使用与其日志
文章目录 1.nginx编译安装脚本2.nginx平滑升级,以及其步骤3.nginx核心配置,及实现nginx多虚拟主机4.nginx日志格式定制5.nginx反向代理及https安全加密6.基于LNMP和Redis的phpmyadmin的会话保持,以及其完整步骤 1.nginx编译安装脚本 #编译安…...

linux | 苹果OpenCL(提高应用软件如游戏、娱乐以及科研和医疗软件的运行速度和响应)
点击上方"蓝字"关注我们 01、引言 >>> OpenCL 1.0 于 2008 年 11 月发布。 OpenCL 是为个人电脑、服务器、移动设备以及嵌入式设备的多核系统提供并行编程开发的底层 API。OpenCL 的编程语言类似于 C 语言。其可以用于包含 CPU、GPU 以及来自主流制造商如 …...
算法-UKF中Sigma点生成
void UKF::MakeSigmaPoints() {Eigen::VectorXd x_aug_ Eigen::VectorXd(n_x_);x_aug_.head(n_x_) x_;Eigen::MatrixXd P_aug Eigen::MatrixXd::Zero(n_x_, n_x_);// 转成正定矩阵P_aug pdefinite_svd(P_);// LLT分解Eigen::MatrixXd L P_aug.llt().matrixL();sigma_point…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...

10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)
引言 工欲善其事,必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后,我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集,就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...

Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...