HuggingFace-下载模型
Hugging Face保存模型
Cache setup
如果本地和缓存中均没有模型的话,那么运行model.fromPretrained会从huggingface官网中下载模型,保存到本地的默认路径~/.cache/huggingface/hub.下
因此可以从~/.cache/huggingface/hub下进入删除你不再需要的模型参数
Offline mode
如果在有防火墙或者离线的情况下使用Huggingface在cache file中保存的文件,通过设置环境变量
TRANSFORMERS_OFFLINE=1.如果要使用本地的数据集,设置HF_DATASETS_OFFLINE=1.
12HF_DATASETS_OFFLINE=1 TRANSFORMERS_OFFLINE=1 \python examples/pytorch/translation/run_translation.py --model_name_or_path t5-small --dataset_name wmt16 --dataset_config ro-en ...
上述指令就不会尝试从huggingfa ...
VoxPoser
VoxPoser:使用语言模型的可组合三维价值地图进行机器人操纵
author:Wenlong Huang, Chen Wang, Ruohan Zhang, Yunzhu Li , Jiajun Wu, Li Fei-Fei
Abstract
大型语言模型(LLMs)显示出具有可操作知识的丰富性,可以通过推理和规划的形式提取用于机器人操纵的知识。尽管取得了进展,但大多数仍然依赖预定义的运动原语来进行与环境的物理交互,这仍然是一个主要瓶颈。在这项工作中,我们旨在合成机器人轨迹,即一系列密集的6自由度末端执行器路径点,用于各种操纵任务,并给定开放式指令和开放式对象。我们首先观察到LLMs在根据自由形式语言指令推断能力和约束方面表现出色。更重要的是,通过利用它们编写代码的能力,它们可以与视觉-语言模型(VLM)交互以组合3D价值地图将知识落实到代理者所观测到空间中。然后,在基于模型的规划框架中使用组合后的价值地图来零样本综合闭环机器人轨迹,并对动态扰动具有鲁棒性。我们进一步演示了所提出框架如何从在线经验中受益,并有效学习涉及接触丰富交互场景下的动力学模型。我们在模拟和真实机器人环境中对所提 ...
华为杯数模小记
今天下午在实验室摸鱼的时候,听到隔壁组说华为杯出结果了,心下一惊,去官网查了一下结果,出乎意料地竟然拿了国一(还有一个小插曲,在excel表里搜我名字的时候搜到了国三,结果发现是同名同姓的一位老哥)。简单记录一下数模的经历,给之后像我一样第一次参加的同学一些经验。
赛前
第一次参加数模类的竞赛,赛前抱着学习和积累经验的想法报的名,也没做啥准备,找到了一个相关的b站视频,结果那段时间太忙了一集也没看,最后就截了一页各类问题适合的模型。剩下的倒是在知乎看了不少经验贴,不过感觉也没学到什么有用的东西。
总的来说,因为我在队里主要负责编程和模型部分,虽然真的打起比赛来完全没有按照分工进行,但是因为自己是计算机出身,又是学人工智能的,所以对于常见的机器学习的模型,都还算了解,再加上python各种库都有,所以其实真的做起来感觉编程的压力不算很大。
开赛
因为我是一个人住在宿舍,所以我的宿舍就成了我们打比赛的场地,赛前我专门买了一张小桌子,后来成了我们开会讨论和聚在一起吃外卖的餐桌,还有一个同学的办公桌。
第一天开赛的时候,我们很快就决定了做E题,一道医学的数据分析的题,倒不是因为其他什么原因,纯 ...
python多线程
最近用到python的多线程,因此整理了一下,仅做记录。
创建多线程
要创建一个简单的多线程程序,其中一个线程从API中获取订单信息,另一个线程将订单分配给无人机群,我们可以使用Python的**threading**模块。这里我们模拟API调用和无人机分配,因为没有具体的API和无人机群实现细节。
获取订单的线程:模拟从API中获取新订单,实际使用中,这里应替换为真实的API调用。
分配订单的线程:获取到新订单后,模拟分配这些订单到无人机上。
123456789101112131415161718192021222324252627282930313233import threadingimport timeimport queue# 模拟的订单队列order_queue = queue.Queue()# 模拟从API获取订单def fetch_orders(): order_id = 0 while True: # 模拟API调用的延时 time.sleep(2) order_id += 1 print(f&q ...
OpenAI-API-中文版
OpenAI-API-中文版
一. Introduction 介绍
如果你想使用我们的API,你可以通过 HTTP 请求从任何语言与 API 进行交互,也可以使用我们的官方 Python 绑定、官方 Node.js库 或 社区维护的库。
若要安装官方 Python 绑定,请运行以下命令:
1pip install openai
要安装官方的 Node.js 库,请在您的 Node.js 项目目录中运行以下命令:
1npm install openai
二. Authentication 认证
1. OpenAI-API-KEY
OpenAI API 使用 API密钥 进行身份验证。请访问您的 API密钥 页面以检索您在请求中使用的API密钥。
请记住,您的API密钥是机密的! 不要与他人分享它或在任何客户端代码(浏览器、应用程序)中公开它。生产请求必须通过您自己的后端服务器路由,其中您的 API密钥 可以从环境变量或密钥管理服务中安全加载。
所有API请求都应在 Authorization HTTP标头中包含您的API密钥,如下所示:
12345ht# 注意Bearer OPENAI_ ...
为Linux新增用户
创建新用户所使用的命令是:
1sudo useradd -r -m -s /bin/bash test
命令来设置新用户的密码。
1sudo passwd test
上面命令的参数意义如下:
r:建立系统账号
m:自动建立用户的登入目录
s:指定用户登入后所使用的shell
输入ls /home/可以看到用户目录被成功创建了
然后需要登陆新用户,为新用户创建密钥
12su test[test@host ~]$ ssh-keyge
在 当前 用户的家目录中生成了一个 .ssh 的隐藏目录,内含两个密钥文件。id_rsa 为私钥,id_rsa.pub 为公钥。
为了确保连接成功,要保证以下文件权限正确:
12[test@host ~]$ cd .ssh[test@host .ssh]$ cat id_rsa.pub >> authorized_keys
在服务器上安装公钥
键入以下命令,在服务器上安装公钥:
123su root[root@host .ssh]$ chmod 600 authorized_keys[root@host .ssh]$ chmod 700 ~/. ...
Fine Turn BLIP2
1!pip install -q datasets
[1m[[0m[34;49mnotice[0m[1;39;49m][0m[39;49m A new release of pip is available: [0m[31;49m23.1.1[0m[39;49m -> [0m[32;49m23.2.1[0m
[1m[[0m[34;49mnotice[0m[1;39;49m][0m[39;49m To update, run: [0m[32;49mpip install --upgrade pip[0m
教程网址:
Fine-tune BLIP using Hugging Face transformers and datasets 🤗
https://colab.research.google.com/drive/1lbqiSiA0sDF7JDWPeS0tccrM85LloVha?usp=sharing
讨论区:
https://github.com/salesforce/BLIP/issues/37
数据集制作方法:
http ...
mac 连接配置多个Github账号
1. 生成多个SSH密钥:
1234#bash# 将email修改为你的第一账户的email,建议为常用的账号ssh-keygen -q -t rsa -C "your_email_1@example.com" -f ~/.ssh/id_rsa_github_1 --N ""# 将email修改为你的第二账户的emailssh-keygen -q -t rsa -C "your_email_2@example.com" -f ~/.ssh/id_rsa_github_2 -N ""
上述命令将将会生成两个SSH密钥对id_rsa_github_1和id_rsa_github_2,分别对应两个GitHub账号。
2. 添加SSH密钥到GitHub账号:
分别将id_rsa_github_1.pub和id_rsa_github_2.pub文件的内容添加到对应的GitHub账号的SSH Keys设置页面,注意别搞反了哦!
可以用以下命令将文件内容读取到剪贴板:
123#bashpbcopy < id_rsa ...
HuggingFace Accelerate
使用 🤗 Accelerate 进行分布式训练
随着模型变得越来越大,并行训练已经成为在有限的硬件上训练更大模型,并将训练速度提高几个数量级的必备策略。Hugging Face 创建了**🤗 Accelerate**库,在任何类型的分布式设置上轻松训练 🤗 Transformers 模型,无论是一台机器上的多个 GPU 还是跨多台机器的多个 GPU。
本文关于如何自定义 PyTorch 训练循环以在分布式环境中启用训练。
Setup
首先安装下载分布式训练库 🤗 Accelerate 并导入
12345!pip install acceleratefrom accelerate import Acceleratoraccelerator = Accelerator()
如果你需要自己手动的分配每块GPU的内存,那么在初始化的时候需要传递参数device_placement=False
然后将所有的训练相关的对象传递给prepare函数,包括用于训练和用于模型评估的Dataloader、model和optimizer
123train_dataloader, eval_datal ...
HuggingFace Pipeline
HuggingFace 中的pipeline
pipline是使用模型进行推理的一种很好且简单的方法。使用pipline()可以使用**Hub**中的任何模型来推理任何语言、计算机视觉、语音和多模式任务。而不用考虑模型底层代码。
这些pipline是从库中抽象出大部分复杂代码的对象,提供专用于多个任务的简单 API
简单使用
每个任务都有其关联的pipline,使用应用于特定任务的pipeline的时候,能够自动加载默认模型和能够处理该任务的预处理类
首先创建**pipeline()**并指定推理任务:
123from transformers import pipelinegenerator = pipeline(task="automatic-speech-recognition")
将输入文本传递给**pipeline()**:
1generator("https://huggingface.co/datasets/Narsil/asr_dummy/resolve/main/mlk.flac")
3.也可以更换参数量更大的模型进行推 ...