当前位置:

首页 > 编程开发 > Python如何与Redis数据库进行交互操作?

Python如何与Redis数据库进行交互操作?

Redis Assistant
Redis Assistant

Redis Assistant 是一款为Redis设计的高效可视化管理与监控工具,提供多种操作模式,高效处理服务器数据。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

立即下载
¥19
Windows/macOS/Linux 2026-08-22
正版软件 Windows macOS软件 Linux 数据库管理工具

介绍Redis是一个开源的基于内存也可持久化的Key-Value数据库,采用ANSIC语言编写。它拥有丰富的数据结构,拥有事务功能,保证命令的原子性。由于是内存数据库,读写非常高速,可达10w/s的评率,所以一般应用于数据变化快、实时通讯、缓存等。但内存数据库通常要考虑机器的内存大小。Redis有16个逻辑数据库(db0-db15),每个逻辑数据库项目是隔离的,默认使用db0数据库。若选择第2个数据库,通过命令select2,python中连接时可以指定数据库。常用数据结构String-字符串List-列

本文目录

    介绍

    Redis是一个开源的基于内存也可持久化的Key-Value数据库,采用ANSI C语言编写。它拥有丰富的数据结构,拥有事务功能,保证命令的原子性。由于是内存数据库,读写非常高速,可达10w/s的评率,所以一般应用于数据变化快、实时通讯、缓存等。但内存数据库通常要考虑机器的内存大小。

    Redis有16个逻辑数据库(db0-db15),每个逻辑数据库项目是隔离的,默认使用db0数据库。若选择第2个数据库,通过命令 select 2 ,python中连接时可以指定数据库。

    常用数据结构

    • String-字符串

    • List-列表

    • Hash-哈希

    • Set-集合

    • ZSet-有序集合

    • Bitmap-位图

    python中我们使用redis-py库来操作Redis数据库,下面将着重介绍。

    前提:需安装Redis数据库,若没安装点这里

    安装

    pip3 install redis

    连接

    第一种方式:普通

    import redis
     
    redis_conn = redis.Redis(host='127.0.0.1', port= 6379, password= 'your pw', db= 0)

    第二种方式:连接池

    import redis
     
    redis_pool = redis.ConnectionPool(host='127.0.0.1', port= 6379, password= 'your pw', db= 0)
    redis_conn = redis.Redis(connection_pool= redis_pool)

    redis中字符返回值类型都是字节(bytes)类型

    String 字符串(键值对)

    在redis中,一个键对应一个值

    1.String set 设置单个键值

    set(name, value, ex=None, px=None, nx=False, xx=False)

    • ex:过期时间(秒),时间到了后redis会自动删除

    • px:过期时间(毫秒),时间到了后redis会自动删除。ex、px二选一即可

    • nx:如果设置为True,则只有name不存在时,当前set操作才执行

    • xx:如果设置为True,则只有name存在时,当前set操作才执行

    redis_conn.set('name_2', 'Zarten_2')

    2.String get 获取单个值

    v = redis_conn.get('name_1')
    print(v)

    3.String mset 设置多个键值

    mset(*args, **kwargs)

    redis_conn.mset(name_1= 'Zarten_1', name_2= 'Zarten_2')

    或者

    name_dict = {
        'name_4' : 'Zarten_4',
        'name_5' : 'Zarten_5'
    }
    redis_conn.mset(name_dict)

    4.String mget 获取多个值

    mget(keys, *args)

    m = redis_conn.mget('name_1', 'name_2')
    #m = redis_conn.mget(['name_1', 'name_2']) 也行
    print(m)

    Python如何与Redis数据库进行交互操作?

    5.String getset 给已有的键设置新值,并返回原有的值

    getset(name, value)

    当所给的键不存在时,会设置其新值,但返回值为None

    v = redis_conn.getset('name_1', 'hi')

    6.String setrange 根据索引修改某个键的value值

    setrange(name, offset, value)

    返回值为:修改后的字符串长度

    • name:键,所给不存在时自动添加

    • offset:偏移量,以0开始

    • value:修改的字符或字符串,字符串时以offset向后顺延

    length = redis_conn.setrange('name_2', 1, 'zhihu')
    print(length)

    Python如何与Redis数据库进行交互操作?

    7.String getrange 根据索引获取某个键的部分value值

    若所给的键不存在时,返回空值 b''

    getrange(key, start, end)

    v = redis_conn.getrange('name_4', 0, 2)

    结果为:

    Python如何与Redis数据库进行交互操作?

    8.String strlen 获取value的长度

    strlen(name)

    所给的键不存在时,返回值为0

    length = redis_conn.strlen('name_2')

    9.String incr int类型的value自增(自减)

    同理:自减,decr(name, amount=1)

    所给的键对应的值必须是整数或字符串的数值,不然会报错。默认自增幅度为1

    incr(name, amount=1)

    返回值为:修改后的值,int类型

    redis_conn.set('num_2', 2)
    #redis_conn.set('num_2', '2') 都行
     
    v = redis_conn.incr('num_2')

    10.String incrbyfloat 浮点数类型的value自增

    incrbyfloat(name, amount=1.0)

    返回值为:浮点数类型float

    v = redis_conn.incrbyfloat('num_2')

    11.String append value后面追加

    append(key, value)

    若所给的键不存在,则设置新值

    返回值为修改后的字符串的长度

    length = redis_conn.append('name_5', '666')

    结果为:

    Python如何与Redis数据库进行交互操作?

    List 列表

    在redis中,一个键对应一个列表

    12.List lpush 列表左边添加值 rpush(右边)

    lpush(name, *values)

    value值有多个时,从左到右依次向列表左边添加,类型可以不同

    所给的键不存在时,新建一个列表

    返回值:列表的大小

    v = redis_conn.lpush('Zarten', 1,2,3,4,5)
    #v = redis_conn.lpush('Zarten', 6)

    Python如何与Redis数据库进行交互操作?

    13.List lpushx 键存在时,添加到列表左边 rpushx(最右边)

    lpushx(name, value)

    只有键存在时,才添加。若键不存在则不添加,也不新创建列表

    返回值为:列表大小

    v = redis_conn.lpushx('Zarten_1', 'hehe')

    14.List llen 获取所给键的列表大小

    llen(name)

    v = redis_conn.llen('Zarten')

    15.List linsert 在列表中间插入新值

    linsert(name, where, refvalue, value)

    • name:键名

    • where:位置,前面(BEFORE)或后面(AFTER)

    • refvalue:指定哪个值的前后插入

    • value:插入的新值

    返回值:插入后列表的长度,若返回-1,则refvalue不存在

    插入前的数据:

    Python如何与Redis数据库进行交互操作?

    v = redis_conn.linsert('Zarten', 'AFTER', 6, 'b')

    插入后的数据:

    Python如何与Redis数据库进行交互操作?

    16.List lset 列表中通过索引赋值

    lset(name, index, value)

    返回值:成功 True 否则 False

    v = redis_conn.lset('Zarten', 2, 'cc')

    17.List lindex 通过索引获取列表值

    lindex(name, index)

    v = redis_conn.lindex('Zarten', 2)

    18.List lrange 列表中获取一段数据

    lrange(name, start, end)

    返回值:List类型的一段数据

    v = redis_conn.lrange('Zarten', 2, 5)

    19.List lpop 删除左边的第一个值 rpop(右边)

    lpop(name)

    返回值:被删除元素的值

    v = redis_conn.rpop('Zarten')

    20.List lrem 删除列表中N个相同的值

    lrem(name, value, num=0)

    • name:键名

    • value:需删除的值

    • num:删除的个数 整数表示从左往右 负数表示从右往左 例如:2 -2

    返回值:返回删除的个数

    v = redis_conn.lrem('Zarten', 'hehe', -2)

    21.List ltrim 删除列表中范围之外的所有值

    ltrim(name, start, end)

    返回值:成功 True

    v = redis_conn.ltrim('Zarten', 5, 10)

    22.List blpop 删除并返回列表最左边的值 brpop(最右边)

    blpop(keys, timeout=0)

    • keys:给定的键

    • timeout:等待超时时间,默认为0,表示一直等待

    返回值:tuple类型 形如: (键名, 删除的值) (b'Zarten', b'hehe')

    v = redis_conn.blpop('Zarten')

    23.List rpoplpush 一个列表中最右边值取出后添加到另一个列表的最左边 brpoplpush阻塞版本

    rpoplpush(src, dst)

    brpoplpush(src, dst, timeout=0)为rpoplpush的阻塞版本,timeout为0时,永远阻塞

    返回值:取出的元素值

    v = redis_conn.rpoplpush('Zarten', 'Zhihu')

    Hash 哈希

    内部存储为各个键值对

    Python如何与Redis数据库进行交互操作?

    24.Hash hset 哈希中添加一个键值对

    hset(name, key, value)

    key存在,则修改,否则添加

    返回值:返回添加成功的个数 int

    v = redis_conn.hset('Zarten', 'age', 10)

    25.Hash hmset 设置哈希中的多个键值对

    hmset(name, mapping)

    mapping:dict 类型

    返回值:成功 True

    v = redis_conn.hmset('Zarten', {'sex':1, 'tel':'123'})

    26.Hash hmget 获取哈希中多个键值对

    hmget(name, keys, *args)

    返回值:值的列表 list 形如: [b'1', b'123']

    v = redis_conn.hmget('Zarten', ['sex', 'tel'])
    #v = redis_conn.hmget('Zarten', 'sex', 'tel') 也ok

    27.Hash hget 获取指定key的值

    hget(name, key)

    v = redis_conn.hget('Zarten', 'age')

    28.Hash hgetall 获取哈希中所有的键值对

    hgetall(name)

    返回值:dict类型

    v = redis_conn.hgetall('Zarten')

    29.Hash hlen 获取哈希中键值对的个数

    hlen(name)

    v = redis_conn.hlen('Zarten')

    30.Hash hkeys 获取哈希中所有的键key

    hkeys(name)

    返回值:list类型

    v = redis_conn.hkeys('Zarten')

    31.Hash hvals 获取哈希中所有的值value

    hvals(name)

    返回值:list类型

    v = redis_conn.hvals('Zarten')

    32.Hash hexists 检查哈希中是否有某个键key

    hexists(name, key)

    返回值:有 True ;否则 False

    v = redis_conn.hexists('Zarten', 'b')

    33.Hash hdel 删除哈希中键值对(key-value)

    hdel(self, name, *keys)

    返回值:int 删除的个数

    v = redis_conn.hdel('Zarten', 'age')

    34.Hash hincrby 自增哈希中key对应的value值(必须整数数值类型)

    hincrby(name, key, amount=1)

    若所给的key不存在则创建,amount默认增加1,可以为负数

    返回值:int 增加后的数值

    v = redis_conn.hincrby('Zarten', 'sex', -3)

    35.Hash hincrbyfloat 自增浮点数 同上hincrby

    hincrbyfloat(name, key, amount=1.0)

    36.Hash expire 设置整个键的过期时间

    expire(name, time)

    time:秒,时间一到,立马自动删除

    v = redis_conn.expire('Zarten', 10)

    37.Hash hscan 增量迭代获取哈希中的数据

    hscan(name, cursor=0, match=None, count=None)

    • name:redis的name

    • cursor:游标(基于游标分批取获取数据)

    • match:匹配指定key,默认None 表示所有的key

    • count:每次分片最少获取个数,默认None表示采用Redis的默认分片个数

    返回值:tuple 类型 ;(扫描位置,所有dict数据)

    v = redis_conn.hscan('Zarten')

    38.Hash hscan_iter 返回hscan的生成器

    hscan_iter(name, match=None, count=None)

    参照上面函数hscan

    v = redis_conn.hscan_iter('Zarten')
    for i in v:
        print(type(i), i)

    Python如何与Redis数据库进行交互操作?

    Set 集合

    集合中的元素不重复,一般用于过滤元素

    39.Set sadd 添加元素到集合中

    sadd(name, *values)

    若插入已有的元素,则自动不插入

    v = redis_conn.sadd('Zarten', 'apple', 'a', 'b', 'c')

    40.Set scard 返回集合中元素的个数

    scard(name)

    v = redis_conn.scard('Zarten')

    41.Set smembers 获取集合中的所有元素

    smembers(name)

    返回值:set类型,形如: {b'a', b'apple', b'c', b'b'}

    v = redis_conn.smembers('Zarten')

    42.Set srandmember 随机获取一个或N个元素

    srandmember(name, number=None)

    • name:键名

    • number:一个或N个,默认返回一个。若返回N个,则返回List类型

    返回值:返回一个值或一个列表

    v = redis_conn.srandmember('Zarten', 2)

    43.Set sismember 判断某个值是否在集合中

    sismember(name, value)

    返回值:True 在 False 不在

    v = redis_conn.sismember('Zarten', 'appl')

    44.Set spop 随机删除并返回集合中的元素

    spop(name)

    v = redis_conn.spop('Zarten')

    45.Set srem 删除集合中的一个或多个元素

    srem(name, *values)

    返回值:返回删除的个数 int

    v = redis_conn.srem('Zarten', 'c', 'a')

    46.Set smove 将一个集合中的值移动到另一个集合中

    smove(src, dst, value)

    若value不存在时,返回False

    返回值:成功 True

    v = redis_conn.smove('Zarten', 'Fruit', 'apple')

    47.Set sdiff 返回在一个集合中但不在其他集合的所有元素(差集)

    sdiff(keys, *args)

    在keys集合中,不在其他集合中的元素

    返回值:set类型 {b'2', b'4', b'3', b'1'}

    v = redis_conn.sdiff('Zarten', 'Fruit')

    48.Set sdiffstore 上面的sdiff的返回值(差集)保存在另一个集合中

    sdiffstore(dest, keys, *args)

    在keys集合中,不在其他集合中的元素保存在dest集合中

    • dest:新的集合,设置的新集合,旧集合会被覆盖

    返回值:int 返回作用的个数

    v = redis_conn.sdiffstore('Left', 'Zarten', 'Fruit')

    49.Set sinter 返回一个集合与其他集合的交集

    sinter(keys, *args)

    返回值:set类型

    v = redis_conn.sinter('Zarten', 'Fruit')

    50.Set sinterstore 返回一个集合与其他集合的交集,并保存在另一个集合中

    sinterstore(dest, keys, *args)

    • dest:另一个集合,设置新集合,旧集合元素会被覆盖

    v = redis_conn.sinterstore('Left', 'Zarten', 'Fruit')

    51.Set sunion 返回一个集合与其他集合的并集

    sunion(keys, *args)

    v = redis_conn.sunion('Zarten', 'Fruit')

    52.Set sunionstore 返回一个集合与其他集合的并集,并保存在另一个集合中

    sunionstore(dest, keys, *args)

    • dest:另一个集合,设置新集合,旧集合元素会被覆盖

    返回值:新集合元素个数

    v = redis_conn.sunionstore('Left', 'Zarten', 'Fruit')

    Zset 有序集合

    有序集合比集合多了一个分数的字段,可对分数升序降序

    53.Zset zadd 有序集合中添加元素

    zadd(name, *args, **kwargs)

    添加元素时需指定元素的分数

    返回值:返回添加的个数

    2种方式如下:

    v = redis_conn.zadd('Zarten', 'a', 3, 'b', 4)
    #v = redis_conn.zadd('Zarten', c= 5, d= 6)

    Python如何与Redis数据库进行交互操作?

    54.Zset zcard 返回有序集合中元素个数

    zcard(name)

    v = redis_conn.zcard('Zarten')

    55.Zset zcount 返回有序集合中分数范围内的元素个数

    zcount(name, min, max)

    包含min max

    返回值:个数 int

    v = redis_conn.zcount('Zarten', 3, 5)

    56.Zset zscore 返回有序集合中指定某个值的分数

    zscore(name, value)

    返回值:float 类型的分数;形如: -5.0

    v = redis_conn.zscore('Zarten', 'zhi')

    57.Zset zincrby 增加有序集合中某个值的分数

    zincrby(name, value, amount=1)

    • value:若存在,则增加其amount分数;若不存在,则增加新值以及对应的分数

    • amount:增加的值,可以为负数

    返回值:增加后的分数 float类型 ;形如: -5.0

    v = redis_conn.zincrby('Zarten', 'zhi', -5)

    58.Zset zrem 删除有序集合中的某个或多个值

    zrem(name, *values)

    返回值:返回删除的个数

    v = redis_conn.zrem('Zarten', 'zhi', 'a')

    59.Zset zremrangebyrank 删除有序集合元素根据排序范围

    zremrangebyrank(name, min, max)

    返回值:删除个数 int

    Python如何与Redis数据库进行交互操作?

    v = redis_conn.zremrangebyrank('Zarten', 1, 3)

    删除后如下图:

    Python如何与Redis数据库进行交互操作?

    60.Zset zremrangebyscore 删除有序集合根据分数范围

    zremrangebyscore(name, min, max)

    返回值:删除个数 int

    v = redis_conn.zremrangebyscore('Zarten', 8, 15)

    61.Zset zrank 返回某个值在有序集合中的分数排名(从小到大) zrevrank(从大到小)

    zrank(name, value)

    返回值:value在name中的分数排名值,分数从小到大排名,从0开始

    Python如何与Redis数据库进行交互操作?

    v = redis_conn.zrank('Zarten', 'b')

    返回值如下图:

    Python如何与Redis数据库进行交互操作?

    62.Zset zrange 返回有序集合分数排序的一段数据

    zrange(name, start, end, desc=False, withscores=False, score_cast_func=float)

    • name:redis的name

    • start:有序集合索引起始位置(非分数)

    • end:有序集合索引结束位置(非分数)

    • desc:排序规则,默认按照分数从小到大排序

    • withscores:是否获取元素的分数,默认只获取元素的值

    • score_cast_func:对分数进行数据转换的函数

    返回值:list类型 [(b'tt', 10.0), (b'd', 6.0), (b'c', 5.0)]

    Python如何与Redis数据库进行交互操作?

    v = redis_conn.zrange('Zarten', 1, 3, True, True, score_cast_func=float)

    结果如图:

    Python如何与Redis数据库进行交互操作?

    Bitmap 位图

    bitmap中存放二进制的位0和1,类似位数组。典型应用是基于redis的布隆过滤器。

    属于String字符串数据结构,固bit 映射被限制在 512 MB 之内(2^32)

    63.Bitmap setbit 设置位图的值

    setbit(name, offset, value)

    • name:redis键名

    • offset:偏移量,大于等于0。当偏移伸展时,空白位置以0填充

    • value:二进制值 0或1

    v = redis_conn.setbit('Zarten_2', 100, 1)

    64.Bitmap getbit 返回位图指定偏移量的值

    getbit(name, offset)

    返回0或1

    v = redis_conn.getbit('Zarten_2', 101)

    65.Bitmap bitcount 返回位图中二进制为1的总个数

    bitcount(key, start=None, end=None)

    start end指定开始和结束的位,默认整个位图

    v = redis_conn.bitcount('Zarten_2', 100, 1000)

    全局函数

    全局函数对任何数据结构都适用

    66.全局函数 delete 删除redis中一个或多个键的所有数据

    delete(*names)

    返回值:int 删除的个数

    v = redis_conn.delete('name', 'name_1')

    67.全局函数 exists 判断redis中是否存在某个键

    exists(name)

    返回值:存在True;反之False

    v = redis_conn.exists('name')

    68.全局函数 rename 重命名redis中键名

    rename(src, dst)

    返回值:成功True

    v = redis_conn.rename('name_2', 'name_100')

    69.全局函数 move 移动redis中某个键所有数据到某个db中

    move(name, db)

    返回值:成功True

    v = redis_conn.move('name_100', 12)

    70.全局函数 randomkey 随机获取redis中某个键名

    randomkey()

    返回值:形如: b'name_55'

    v = redis_conn.randomkey()

    71.全局函数 type 查看redis中某个键数据结构类型

    type(name)

    返回值:字符串(字节形式) 形如: b'hash'

    • none (key不存在)

    • string (字符串)

    • list (列表)

    • set (集合)

    • zset (有序集)

    • hash (哈希表)

    v = redis_conn.type('name_4')
    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Python
    相关文章 更多
    python删除一个列表里的重复元素的方法与代码示例
    python删除一个列表里的重复元素的方法与代码示例

    学习如何使用Python高效删除列表中的重复元素。本文提供5种常见方法的代码示例,涵盖保持顺序与不保持顺序的场景,适合初学者和进阶开发者参考。

    Python写接口的步骤及完整代码示例
    Python写接口的步骤及完整代码示例

    详细讲解使用Python编写Web接口的核心步骤与完整代码示例,涵盖环境准备、路由定义、数据校验、服务启动及调试测试方法。

    codex怎么读取word文档及docx文件操作教程
    codex怎么读取word文档及docx文件操作教程

    介绍如何利用编程工具读取和解析Word文档(docx格式),涵盖基础文本提取代码示例、结构化数据处理逻辑,以及处理复杂排版时的技术局限与替代方案。

    怎么在Python中调用C语言代码提升性能
    怎么在Python中调用C语言代码提升性能

    详细讲解在Python中调用C语言代码提升性能的完整实践指南,包含原理分析、编译步骤、ctypes与CFFI具体实现、性能对比及常见陷阱。

    Python与C语言的性能差异及底层原理
    Python与C语言的性能差异及底层原理

    深入解析Python与C语言在执行效率上的数量级差异,从编译机制、变量内存布局、动态类型推断到GIL锁,系统阐明底层核心原理。

    Python和C语言哪个更适合编程入门
    Python和C语言哪个更适合编程入门

    客观对比Python与C语言在心智负担、底层机制与学习反馈上的核心差异,提供清晰有据的选择标准与切实的入门学习路径。

    selenium上传文件教程本地文件路径设置方法
    selenium上传文件教程本地文件路径设置方法

    深入解析Selenium处理文件上传的技术细节,涵盖标准HTML控件的路径直接注入法与非标准控件的系统级模拟方案,提供Windows与Linux环境下的路径设置最佳实践及常见异常排查。

    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景
    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景

    针对大数据工程场景,系统对比Java、Scala与Python在执行性能、生态结合、开发效率和维护成本上的核心差异,给出清晰的架构选型依据与落地方案。

    langgraph python guide中文入门教程详解
    langgraph python guide中文入门教程详解

    本篇LangGraph Python中文入门教程详解,系统梳理StateGraph状态机定义、节点编写、边与条件路由、检查点持久化(MemorySaver)等核心机制,提供从环境安装到完整循环智能体构建的代码示例与实操指导。

    Windows 安装 Python:从官方入口到虚拟环境的可复现实践
    Windows 安装 Python:从官方入口到虚拟环境的可复现实践

    面向后端开发者,基于 Python 官方文档说明如何在 Windows 上安装 Python、创建 venv 虚拟环境及使用 pip 管理依赖。包含可复制命令、验证方法及工具选择边界,避免常见配置误区。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。

    即将离开本站
    您即将前往第三方网站,请确认是否继续?