Token笔记

本文深入探讨了有状态和无状态Token的工作原理及应用。有状态Token类似session机制,需服务器存储并更新;无状态Token则完全依赖于Token本身,服务器通过解密验证其有效性。文章还介绍了RefreshToken机制,用于减少服务器负担,延长Token的有效期。

有状态Token:
有状态的token和session的sessionid差不多,用户每次操作都会自动刷新(推迟) Token 的过期时间。(需要服务器存储登录记录,增加服务器负担)
还有另一种方案,使用 Refresh Token,它可以避免频繁的读写操作,服务器不用每次用户登录操作推迟Token的过期时间。当Token过期时,服务器告诉客户端Token过期,客户端发送Refresh Token给服务器生成新的Token给客户端,客户端就可以使用新的Tonken。(Refresh Token由服务器在第一次发给客户端Tonken的时候发过去,且有效期相对长一点,Refresh Token再过期就就重新用户密码登录)。
无状态 Token
把所有状态信息放在Token上,服务器不要存放Token的状态(像Token的过期时间等等),服务器对Tonken进行对称加密再发送给客户端,客户端发送这个Tonken给服务器时候,服务器只需要对称解密就可以认证 Token 有效。
(JWT 已经定义了详细的规范,而且有各种语言的若干实现。)
区别:
无状态的Token:服务器存放的是这个加密解密Tonken的算法和密钥,收到Token由算法解密得以认证。Refresh Token 有效时间较长,所以它应该在服务器端有状态。
有状态的Token:需要服务器存放Tonken,收到Token与服务器的Token进行比较认证。

参考链接:
博客园大佬
简单理解token机制

### 关于人工智能 LLM 模型中的 Token 概念 #### 什么是 Token? 在大规模语言模型(LLM)中,Token 被定义为模型可以理解和生成的最小意义单位[^1]。它是自然语言处理中最基础的数据单元之一,用于连接人类可读的文本与计算机可操作的数字表示形式。具体来说,Token 的表现形式可以根据同的标记化方案有所变化,可能是完整的单词、子词甚至是单个字符。 #### Token 的作用 Token 在 LLM 中扮演着至关重要的角色,它充当了原始文本数据和数字化表达方式之间的桥梁[^2]。通过将输入文本拆解成一系列 Tokens 并赋予每种 Token 数值化的标识符,使得复杂的自然语言能够被转化为适合神经网络训练和推理的形式。这种转化仅提高了效率还增强了灵活性,因为同长度或结构的内容都可以统一映射到固定维度的空间里进行运算。 #### 同类型的 Token 表现形式 根据具体的实现方法和技术需求,Tokens 可能呈现多种形式: - **整词级别**:每一个独立存在的词语作为一个单独的 Token; - **子词级别**:较长或者少见词汇会被进一步切分为更短的部分,例如 "playing" -> ["play", "ing"] 或者按照 BPE(Byte Pair Encoding)算法得到的结果; - **字符级别**:极端情况下每个字母都视为一个独特的 Token; 这种方法的选择直接影响到了最终效果以及资源消耗情况,在设计阶段就需要综合考虑各方面因素做出权衡决策[^3]. #### 流式输出机制下的 Tokens 应用场景 当涉及到实时交互式的应用场景时(如聊天机器人),为了提供更加流畅用户体验,则采用了所谓的“流式响应”。这意味着是等到整个句子完全生成后再返回给用户查看而是逐字/逐句地逐步展现出来——而这背后正是依赖于一个个连续产生的 Tokens 来完成这一过程. ```python def generate_tokens(input_text, tokenizer): tokens = tokenizer.encode(input_text) return tokens def decode_to_string(tokens_list, tokenizer): output_str = tokenizer.decode(tokens_list) return output_str ``` 上述代码展示了如何利用预训练好的分词器对象`tokenizer`, 将一段字符串转换为其对应的 token ID 列表 (`generate_tokens`) 和反之从 token IDs 解码回原生文字串(`decode_to_string`)的功能. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值