Grok-1 源码中语法 @dataclass 变量名称:变量类型

Grok-1 源码中语法 @dataclass 变量名称:变量类型

flyfish
model.py

@dataclass
class Transformer(hk.Module):"""A transformer stack."""num_q_heads: intnum_kv_heads: intkey_size: intwidening_factor: floatinit_scale: floatmesh: Anyattn_output_multiplier: floatshard_activations: boolnum_layers: int# MoEnum_experts: intnum_selected_experts: intname: Optional[str] = None# Used for activation shardingdata_axis: Union[str, Tuple[str, ...]] = "data"model_axis: Union[str, Tuple[str, ...]] = "model"

模拟代码
使用dataclasses ,变量名称:变量类型 这种方式

from dataclasses import dataclass@dataclass
class employee:name: stremp_id: strage: int# initialization the object
emp1 = employee("xiaoming", "1", 21)
emp2 = employee("xiaohong", "2", 28)
emp3 = employee("xiaoming", "1", 21)print("employee object are :")
print(emp1)
print(emp2)
print(emp3)# printing new line
print()# 检查两个对象是否相等
print("Data in emp1 and emp2 are same? ", emp1 == emp2)
print("Data in emp1 and emp3 are same? ", emp1 == emp3)

如果不使用dataclasses
代码如下

class employee:# init method or constructordef __init__(self, name, emp_id, age):# Instance Variableself.name = nameself.emp_id = emp_idself.age = age# magic function to return class objectdef __repr__(self):return ("employee (name={}, emp_id={}, age={} )".format(self.name, self.emp_id, self.age))# magic function to return booleandef __eq__(self, check):return ((self.name, self.emp_id, self.age) ==((check.name, check.emp_id, check.age)))

使用了使用dataclasses 之后自动生成了

__init__, __repr__, __eq__ 

这些函数
即 dataclasses 数据类模块提供了一个装饰器和一些函数,用于向类中自动添加生成的 special method 例如 __init__() 和 __repr__()。

参考

https://docs.python.org/zh-cn/3/library/dataclasses.html#module-dataclasses

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/758415.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLO_you only look once

前言 计算机图形学的课程即将结束,我需要提交一份关于YOLO模型的学习报告。在这段时间里,我对YOLO进行了深入的学习和研究,并记录下了我的学习过程和心得体会。本文将详细介绍YOLO模型的原理、优缺点以及应用领域,希望能够为后续…

css 如何获取分辨率(使用@media查询)

在CSS中,可以使用media查询来应对不同的屏幕分辨率。例如,您可以为不同的屏幕宽度设置不同的样式规则。 /* 针对屏幕宽度小于600px的样式 */ media screen and (max-width: 599px) {body {background-color: lightblue;} }/* 针对屏幕宽度大于或等于600…

spring整合Sentinel

安装sentinel: 执行命令; java -jar sentinel-dashboard-1.8.6.jar 注:sentinel的默认端口为8080,容易出现tomcat的冲突。 当端口冲突,可以使用该指令修改sentinel的端口 默认账号和密码都为sentinel Springcloud整合sentinel:…

首个业内DNA存储技术规范发布

在DNA数据存储的检索过程中,采用了三个输入对应一个输出逻辑实现的算法模式来生成数据表示的模式。这一算法模式的设计是为了有效编码和解码存储在DNA分子上的信息。 其中提到的“扰动比例”δ(n)是一个关键概念,它衡量的是在总的细胞数目(此…

UE4_官方动画内容示例1.2_动画蓝图——使用蓝图告知Actor播放动画

展示了两个示例:在其中一个示例中,使用蓝图告知Actor播放动画,在另外一个示例中,展示了告知Actor播放动画的动画蓝图(例如,此示例展示了如何将变量从蓝图传递给动画蓝图,并演示了如何将现有姿势…

获取A股所有股票实时行情、价格

数据来源: https://quote.eastmoney.com/center/gridlist.html#hs_a_board 代码: import akshare as ak import pandas as pd pd.set_option(display.max_columns, None) pd.set_option(display.max_rows, None) pd.set_option(display.width, 1000)s…

【LabVIEW FPGA入门】插值、输出线性波形

概述 NI 的可重配置 I/O (RIO) 硬件使开发人员能够创建自定义硬件,以在坚固耐用、高性能和模块化架构中执行许多任务,而无需了解低级 EDA 工具或硬件设计。使用 RIO 硬件轻松实现的此类任务之一是模拟波形生成。本教程介绍了使用 CompactRIO 硬件和 LabV…

【Unity】Plastic云同步总是password error

【背景】 Plastic是Unity的项目版本控制功能,可以方便在多个地点同步项目进度。原本用得挺爽的,结果今天遇到糟心事,明明Hub也正常登着,可Plastic的一个update的dll就是不停反复运行并报Password invalid。 【问题分析】 听说I…

简易版 RPC 框架实现 2.0 -netty实现

这一篇理解如果有难度,可能对netty不是很理解, 可以关注我netty专栏,还有另外一篇: 用 Netty 自己实现简单的RPC, 这一篇是学习netty的时候写的,更倾向于分析netty相关的知识, 今天我是学习dubb…

【每日算法】理论:常见AIGC模型; 刷题:力扣单调栈

上期文章 【每日算法】理论:生成模型基础; 刷题:力扣单调栈 文章目录 上期文章一、上期问题二、理论问题1、stable diffusion模型的网络架构2、T5的网络架构(Text-To-Text Transfer Transformer模型)3、SDXL模型4、DA…

LeetCode 爬楼梯(动态规划题解)

题目链接: https://leetcode.cn/problems/climbing-stairs/ 资源: 关于动态规划和贪心算法的区别,动态规划的常见题型,我总结了一些(还有文档哦),大家可移步至:动态规划基础知识点…

基于FPGA的光纤通信系统的实现的优化技巧与方法

逻辑电路基本框架回顾 跨时钟域同步技术 读写操作相互独立时钟域 A 和 B 不需要一致的相位由专门逻辑控制读写操作的切换 高速数据的乒乓缓存技术

代码随想录(day7)——哈希表

Leetcode.454 四数相加Ⅱ: 454. 四数相加 II - 力扣(LeetCode) 对于本题,虽然使用四层循环嵌套可以解决,但是效率过慢,为,因此,可以将给定的四个数组,分成两组&#xff…

【NC16783】拼数

题目 拼数 自定义字符串排序 思路 经过观察可以知道:越高位的数越大,这个数就应该排在越前面的位置,比如 4321 4321 4321 和 4331 4331 4331,则 4331 4331 4331 应该排在前面。 所以将给出的整数转为字符串更容易操作。 将数…

在服务器上配置源和安装anaconda

在服务器上配置源和安装anaconda解决无法import torch的方法: 一、在 anaconda上创建环境 1、创建环境 conda create -n yourname pythonx.x 2、查看环境 conda info --envs 3、进入环境 source activate your_env_name 4、退出环境 conda deactivate 5、…

广播接收不到

BroadcastQueue: Background execution not allowed: receiving Intent 最主要是要制定包名

程序计数器

程序计数器 JVM中的程序计数器(Program Counter Register)并非是广义上所指的物理寄存器,是对物理PC寄存器的一种抽象模拟 PC寄存器(程序计数器) PC寄存器用来存储指向下一条指令的地址,也即将要执行的指令代码。由执行引擎读取下一条指令。 它是一块很…

Adams Car——Adams car与Simulink联合仿真

1.修改悬架阻尼、刚度 ①先找到车辆悬架阻尼和刚度文件,这里以阻尼显示为例 ②修改阻尼曲线 找到对应车的文件 ③修改完后进行替换,刚度修改同理 2.转动惯量与车的质量修改

【晶振选型】VCTCXO TCXO 布线 参考

一、供电旁路电容 二、使能信号 三、输出的交流耦合 四、输出波形转换 五、压控滤波电容 最后 CTS的是真不错,1K可是-140啊

Linux---基本操作命令之用户管理命令

1.1useradd 添加新用户 root用户:/root 普通用户:/home/ 创建的用户还是david,只是在dave文件夹下 1.2 passwd 设置密码 给用户tony设置密码: 123456 1.3 id 查看用户是否存在 查看有没有这个用户:id 名字 gid:用…