Pegasus开发环境

Pegasus开发环境

HUAWEI DevEco Device Tool

以插件的形式部署在Visual Studio Code上

开发环境部署

步骤1 安装 vs code

Visual Studio Code - Code Editing. Redefined

步骤2 DecEco Device Tool 下载安装

华为集成开发环境IDE DevEco Device Tool下载 | HarmonyOS设备开发

  • 解压后安装

  • 选择安装路径

安装完成后打开vs code可以发现扩展图标

在这里插入图片描述

步骤3 下载Hi3861 Openharmony SDK

https://gitee.com/wgm2022/hi3861_for_AI_topic

步骤4 下载开发者工具

https://hispark.obs.cn-east-3.myhuaweicloud.com/DevTools_Hi3861V100_v1.0.zip

解压后目录
在这里插入图片描述

步骤5 工程管理配置
1. 打开DevEco Device Tool 主页 导入工程

在这里插入图片描述

2. 选择Hi3861 Openharmony SDK目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HQbTNLbq-1688213901157)(pic/image-20230701192129230.png)]

3. 芯片选型

SOC栏选择Hi3861, 开发板选择hi3861, 框架栏选择Hb

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gqe86pqw-1688213901158)(pic/image-20230701192247140.png)]

4. 进行后续代码开发、编译、烧录

Pegasus相关代码路径:

hi3861_for_AI_topic-master\src\vendor\hisilicon\hispark_pegasus\demo\

步骤6 编译、烧录
1. 配置开发工具路径

点击工程配置,配置compiler_bin_path选项为下载好的开发工具目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o82x5LMn-1688213901159)(pic/image-20230701192720063.png)]

2. 编译

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JfnA7Z08-1688213901159)(pic/image-20230701192744525.png)]

3. 烧录

连接设备后,选择对应的COM

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xmqx7sEF-1688213901160)(pic/image-20230701195957028.png)]

烧录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lBpVR67G-1688213901160)(pic/image-20230701192831327.png)]

测试程序-led闪烁

1. 创建子模块文件夹

在hi3861_for_AI_topic-master\src\applications\sample\wifi-iot\app目录下创建led_demo文件夹

2. 子模块程序编写

led_demo文件夹中的文件结构如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eR3lt8II-1688213901161)(pic/image-20230701201058862.png)]

  • app_demo_led_control.c

    #include <stdio.h>
    #include <unistd.h>
    #include "ohos_init.h"
    #include "cmsis_os2.h"
    #include "iot_gpio.h"
    #include "iot_watchdog.h"
    #include "hi_io.h"
    
    
    #define IOT_GPIO_IDX_10 9 // for hispark_pegasus
    
    static void *LedCntrolDemo(const char *arg)
    {
         
         
        (void)arg;
        printf("LedTask start\r\n");
        // 配置GPIO引脚号和输出值
        while(1){
         
         
            IoTGpioSetOutputVal(IOT_GPIO_IDX_10, IOT_GPIO_VALUE1);
            TaskMsleep(800);
            IoTGpioSetOutputVal(IOT_GPIO_IDX_10, IOT_GPIO_VALUE0);
            TaskMsleep(800);
        }
        return NULL;
    }
    
    static void LedControlTask(void)
    {
         
         
        osThreadAttr_t attr;
        // 初始化GPIO
        IoTGpioInit(IOT_GPIO_IDX_10);
        // 设置GPIO为输出方向
        IoTGpioSetDir(IOT_GPIO_IDX_10, IOT_GPIO_DIR_OUT);
    
        attr.name = "LedCntrolDemo";
        attr.attr_bits = 0U;
        attr.cb_mem = NULL;
        attr.cb_size = 0U
03-08
### Pegasus 技术概述 Pegasus 是指多种信息技术中的不同概念,具体取决于上下文环境。通常情况下,在计算机科学和技术领域中,“Pegasus”可能指的是特定软件平台、硬件设备或者算法框架。 #### 作为自然语言处理模型的一部分 当提到与 Pegasus 相关的技术信息时,最常见的是指百度公司开发的大规模预训练语言模型系列之一——PEGASUS (Pre-training with Extractive Gap-sentence Selection)[^3]。该模型专注于文档摘要生成任务,并通过引入提取式间隙句选择机制来改进传统的序列到序列架构性能。 此方法利用了两种类型的监督信号:一是基于抽取式的片段;二是由这些片段组成的完整句子之间的顺序关系。这使得 PEGASUS 能够更有效地捕捉文本结构特征并生成高质量的总结[^3]。 ```python from transformers import PegasusForConditionalGeneration, PegasusTokenizer model_name = 'google/pegasus-xsum' tokenizer = PegasusTokenizer.from_pretrained(model_name) model = PegasusForConditionalGeneration.from_pretrained(model_name) text = "A very long article about something interesting." tokens = tokenizer(text, truncation=True, padding="longest", return_tensors="pt") summary_ids = model.generate(tokens['input_ids']) print(tokenizer.decode(summary_ids[0], skip_special_tokens=True)) ``` 上述代码展示了如何使用 Hugging Face 的 `transformers` 库加载 PEGASUS 模型并对给定的文章创建简洁明了的小结[^3]。 #### 安全性和隐私保护方面 值得注意的是,在涉及任何大型数据集或复杂机器学习系统的讨论中,安全性和隐私问题始终是一个重要话题。对于像 PEGASUS 这样的高级 NLP 工具而言也不例外。开发者们采取了一系列措施确保用户信息安全以及遵循 GDPR 等法规要求[^4]。
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暴风雨中的白杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值