HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

解决支付宝小程序动态插件问题

插件 支付宝小程序

uniapp在开发支付宝小程序时,不可避免使用支付宝插件能力,大部分情况下插件是直接引入使用的,即静态引入,如下图所示


但是有些插件是需要动态加载的,而插件又分为页面插件、组件插件。其中页面插件基本没什么问题,直接使用my.loadPlugin加载后跳转,但是组件插件是不能直接按支付宝文档使用的,支付宝推荐使用‘元组件’component 通过is指定插件名称,但是uniapp的小程序是不支持使用component的,因为uniapp中的is只能使用字符串而且是直接用is的值作为组件名称支持平台,而支付宝端的插件格式为dynamic-plugin://xxx/xxx,是无法直接使用的。
下面是解决方法,主要依据uniapp的小程序自定义组件支持,按照文档创建mycomponents目录并创建自己的组件,这个组件需要按照支付宝小程序语法写,然后.axml中使用component加载插件,具体实现看自己业务


配置完成后,就可以直接在自己页面里面使用了


注意这里一定要用my.loadPlugin先把插件加载完再显示,不然有可能白屏
还有外面使用插件如果需要传参,是直接按照uniapp的语法来的,就是按照正常的组件一样使用
最后最好重新编译并打开项目,不然mycomponents目录可能不会生成

继续阅读 »

uniapp在开发支付宝小程序时,不可避免使用支付宝插件能力,大部分情况下插件是直接引入使用的,即静态引入,如下图所示


但是有些插件是需要动态加载的,而插件又分为页面插件、组件插件。其中页面插件基本没什么问题,直接使用my.loadPlugin加载后跳转,但是组件插件是不能直接按支付宝文档使用的,支付宝推荐使用‘元组件’component 通过is指定插件名称,但是uniapp的小程序是不支持使用component的,因为uniapp中的is只能使用字符串而且是直接用is的值作为组件名称支持平台,而支付宝端的插件格式为dynamic-plugin://xxx/xxx,是无法直接使用的。
下面是解决方法,主要依据uniapp的小程序自定义组件支持,按照文档创建mycomponents目录并创建自己的组件,这个组件需要按照支付宝小程序语法写,然后.axml中使用component加载插件,具体实现看自己业务


配置完成后,就可以直接在自己页面里面使用了


注意这里一定要用my.loadPlugin先把插件加载完再显示,不然有可能白屏
还有外面使用插件如果需要传参,是直接按照uniapp的语法来的,就是按照正常的组件一样使用
最后最好重新编译并打开项目,不然mycomponents目录可能不会生成

收起阅读 »

uniapp IOS 云打包,签名失败问题

iOS云端打包 云打包 iOS

按照 ios 安心打包证书安装 文档操作完成,还是报错签名失败。
怀疑是 AppleWWDRCA.cer 签名过期问题,这种应该怎么解决啊?

继续阅读 »

按照 ios 安心打包证书安装 文档操作完成,还是报错签名失败。
怀疑是 AppleWWDRCA.cer 签名过期问题,这种应该怎么解决啊?

收起阅读 »

封装第三方组件时,传递第三方组件的slot


vue3  
<script lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
    import { h } from 'vue'  
    export default {  
      props: {  
      },  
      setup(props,ctx) {  
        // 返回渲染函数  
        return () => h(Exentds,null,ctx.slots)  
      }  
    }  
</script>  
vue2  
<script>  
  import Exentds from '@/components/Exentds/index';  
  export default {  
    name:"exentds-slot",  
    props:["num","max"],  
    functional: true,  
  // 无状态 (没有响应式数据),也没有实例 (没有 this 上下文)。一个函数式组件  
    render(h,ctx){  
      console.log(ctx.data)  
      return h(Exentds,ctx.data,ctx.children)或return h(Exentds,ctx.data,ctx.slots().default,ctx.slots().main)  
    }  

  }  
</script>  
slot的嵌套  
vue2/3  
<template>  
    <Exentds>  
        <template v-slot:default>  
            <slot></slot>  
        </template>  
        <template v-slot:main>  
            <slot  name="main"></slot>  
        </template>  
    </Exentds>  
</template>  

<script setup lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
</script>  
extend继承  
vue2/3  
<script lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
    // import { h } from 'vue'  
    export default {  
      props: {  

      },  
      extends:Exentds  
    }  
</script>  
注意:封装第三方组件时,除了第三方组件外,还需添加其他元素或组件  
如:  
    <div>  
      <p>1</p>  
      <testTag></testTag>  
    </div>  
    <p>2</p>  
那就不能使用extend继承的方式。 ``` 
继续阅读 »

vue3  
<script lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
    import { h } from 'vue'  
    export default {  
      props: {  
      },  
      setup(props,ctx) {  
        // 返回渲染函数  
        return () => h(Exentds,null,ctx.slots)  
      }  
    }  
</script>  
vue2  
<script>  
  import Exentds from '@/components/Exentds/index';  
  export default {  
    name:"exentds-slot",  
    props:["num","max"],  
    functional: true,  
  // 无状态 (没有响应式数据),也没有实例 (没有 this 上下文)。一个函数式组件  
    render(h,ctx){  
      console.log(ctx.data)  
      return h(Exentds,ctx.data,ctx.children)或return h(Exentds,ctx.data,ctx.slots().default,ctx.slots().main)  
    }  

  }  
</script>  
slot的嵌套  
vue2/3  
<template>  
    <Exentds>  
        <template v-slot:default>  
            <slot></slot>  
        </template>  
        <template v-slot:main>  
            <slot  name="main"></slot>  
        </template>  
    </Exentds>  
</template>  

<script setup lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
</script>  
extend继承  
vue2/3  
<script lang="ts">  
    import Exentds from '@/components/slot/Exentds.vue';  
    // import { h } from 'vue'  
    export default {  
      props: {  

      },  
      extends:Exentds  
    }  
</script>  
注意:封装第三方组件时,除了第三方组件外,还需添加其他元素或组件  
如:  
    <div>  
      <p>1</p>  
      <testTag></testTag>  
    </div>  
    <p>2</p>  
那就不能使用extend继承的方式。 ``` 
收起阅读 »

纯nvue模式下App.vue方法调用

nvue

随着nvue组件越来越多,开始将项目从uniapp模式移植到纯nvue模式,发现在纯nvue模式下App.vue methods中的方法在未初始化完成时无法在onLaunch进行调用。
只需使用setTimeout包住,即可在onLaunch中直接调用methods中的方法。

setTimeout(() => {  
this.checkRuntimeEnv()  
}, 0)
继续阅读 »

随着nvue组件越来越多,开始将项目从uniapp模式移植到纯nvue模式,发现在纯nvue模式下App.vue methods中的方法在未初始化完成时无法在onLaunch进行调用。
只需使用setTimeout包住,即可在onLaunch中直接调用methods中的方法。

setTimeout(() => {  
this.checkRuntimeEnv()  
}, 0)
收起阅读 »

uniapp H5保存base64图片方法

                         savePicture(base64) {  

            // var arr = base64.split(','); //可以这样去掉data:image/png;base64,只拿,号后面部分  
            var bytes = atob(base64)  
            let ab = new ArrayBuffer(bytes.length);  
            console.log(ab)  
            let ia = new Uint8Array(ab);  
            for (let i = 0; i < bytes.length; i++) {  
                ia[i] = bytes.charCodeAt(i);  
            }  
            var blob = new Blob([ab], { type: 'application/octet-stream' });  
            var url = URL.createObjectURL(blob);  
            var a = document.createElement('a');  
            a.href = url;  
            a.download = new Date().valueOf() + ".jpg";  
            var e = document.createEvent('MouseEvents');  
            e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);  
            a.dispatchEvent(e);  
            URL.revokeObjectURL(url);  
        },
继续阅读 »
                         savePicture(base64) {  

            // var arr = base64.split(','); //可以这样去掉data:image/png;base64,只拿,号后面部分  
            var bytes = atob(base64)  
            let ab = new ArrayBuffer(bytes.length);  
            console.log(ab)  
            let ia = new Uint8Array(ab);  
            for (let i = 0; i < bytes.length; i++) {  
                ia[i] = bytes.charCodeAt(i);  
            }  
            var blob = new Blob([ab], { type: 'application/octet-stream' });  
            var url = URL.createObjectURL(blob);  
            var a = document.createElement('a');  
            a.href = url;  
            a.download = new Date().valueOf() + ".jpg";  
            var e = document.createEvent('MouseEvents');  
            e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);  
            a.dispatchEvent(e);  
            URL.revokeObjectURL(url);  
        },
收起阅读 »

开源一个uniapp、hyperf MineAdmin 实现的chatGPT应用,支持小程序、H5、App!

OpenAI uniapp 教程

起因:
前段时间找了一下 github 上的项目,有一些,但有的只开源了前端或只开源前端、管理端 ui ,索性自己写一个自用!

体验
注册账号密码随便填,邀请人填1

效果图
App



后台系统

技术栈 具体依赖看项目代码吧!
前端

uniapp vue3 pug scss  

后端

swoole hyperf MineAdmin

仓库地址
github

继续阅读 »

起因:
前段时间找了一下 github 上的项目,有一些,但有的只开源了前端或只开源前端、管理端 ui ,索性自己写一个自用!

体验
注册账号密码随便填,邀请人填1

效果图
App



后台系统

技术栈 具体依赖看项目代码吧!
前端

uniapp vue3 pug scss  

后端

swoole hyperf MineAdmin

仓库地址
github

收起阅读 »

个人从0到1 uni-app开发微信小程序项目——《MJ AI传送门》

uniapp 微信小程序

调用的接口是市面上最流行的AI模型之一[Midjourney]提供。

优势是'免费'。

B站也有博主用这个AI模型制作表情包,这美术效率杠杠滴。

用的开发引擎是uni-app,看中的就是它的跨平台能力,另外市场上的js插件都挺好用的,避免重复造轮子,而且用起来挺方便。

都说AI是风口,抱着试一试的态度制作了这款工具,看看我这头猪是否可以起飞。[牛]

有兴趣的可以搜索微信小程序体验下,有作图的需求的小伙伴也可以联系我哦。技术交流也可以。[佛系]

附上了几张界面图和成品图↓↓

继续阅读 »

调用的接口是市面上最流行的AI模型之一[Midjourney]提供。

优势是'免费'。

B站也有博主用这个AI模型制作表情包,这美术效率杠杠滴。

用的开发引擎是uni-app,看中的就是它的跨平台能力,另外市场上的js插件都挺好用的,避免重复造轮子,而且用起来挺方便。

都说AI是风口,抱着试一试的态度制作了这款工具,看看我这头猪是否可以起飞。[牛]

有兴趣的可以搜索微信小程序体验下,有作图的需求的小伙伴也可以联系我哦。技术交流也可以。[佛系]

附上了几张界面图和成品图↓↓

收起阅读 »

云打包iOS时,报错没有苹果根证书,解决方案

1、打开根证书目录安装3个证书,安装的时候需要注意,选择左侧登录,然后把证书拖入证书列表

证书应该只需要安装DeveloperIDCA.cer、AppleWWDRCAG3.cer就行,AppleWWDRCA.cer证书有效期到2023.02.08,已过期

2、所需根证书安装后,用原来.p12证书打包一样会报该错。这时就需要删除原来证书iPhone Distribution:xxx和iPhone Development:xxx,重新安装证书,重新生成p12文件,用新的p12证书打包,一般应该就可以解决问题了。

继续阅读 »

1、打开根证书目录安装3个证书,安装的时候需要注意,选择左侧登录,然后把证书拖入证书列表

证书应该只需要安装DeveloperIDCA.cer、AppleWWDRCAG3.cer就行,AppleWWDRCA.cer证书有效期到2023.02.08,已过期

2、所需根证书安装后,用原来.p12证书打包一样会报该错。这时就需要删除原来证书iPhone Distribution:xxx和iPhone Development:xxx,重新安装证书,重新生成p12文件,用新的p12证书打包,一般应该就可以解决问题了。

收起阅读 »

uni-app使用 uni_modules 插件模块化规简单范示例详细演示

首先需要在项目的根目录下创建一个 uni_modules 文件夹,用于存放字典文件和插件模块。

在 uni_modules 文件夹下创建一个名为 $manifest.json 的字典文件,定义插件模块的名称、版本和入口文件等信息,比如:

{  
  "name": "my-plugin",  
  "version": "1.0.0",  
  "main": "index.js"  
}  

在 uni_modules 文件夹下创建一个名为 my-plugin 的目录,用于存放插件模块的源代码。

在 my-plugin 目录下创建一个名为 index.js 的入口文件,定义插件模块的行为,比如:

export function helloWorld() {  
  console.log('Hello, World!');  
}  

现在可以在应用中引用插件模块了,比如:

<template>  
  <view>  
    <button @click="clickHandler">Click Me</button>  
  </view>  
</template>  

<script>  
import { helloWorld } from '@/uni_modules/my-plugin/index.js';  

export default {  
  methods: {  
    clickHandler() {  
      helloWorld();  
    }  
  }  
}  
</script>  

这样就完成了 uni_modules 的使用。需要注意的是,这里的引用路径使用了 @ 符号,表示项目根目录,这是 uni-app 的默认路径别名。
插件模块也可以使用同样的路径别名来引用应用程序中的代码。

继续阅读 »

首先需要在项目的根目录下创建一个 uni_modules 文件夹,用于存放字典文件和插件模块。

在 uni_modules 文件夹下创建一个名为 $manifest.json 的字典文件,定义插件模块的名称、版本和入口文件等信息,比如:

{  
  "name": "my-plugin",  
  "version": "1.0.0",  
  "main": "index.js"  
}  

在 uni_modules 文件夹下创建一个名为 my-plugin 的目录,用于存放插件模块的源代码。

在 my-plugin 目录下创建一个名为 index.js 的入口文件,定义插件模块的行为,比如:

export function helloWorld() {  
  console.log('Hello, World!');  
}  

现在可以在应用中引用插件模块了,比如:

<template>  
  <view>  
    <button @click="clickHandler">Click Me</button>  
  </view>  
</template>  

<script>  
import { helloWorld } from '@/uni_modules/my-plugin/index.js';  

export default {  
  methods: {  
    clickHandler() {  
      helloWorld();  
    }  
  }  
}  
</script>  

这样就完成了 uni_modules 的使用。需要注意的是,这里的引用路径使用了 @ 符号,表示项目根目录,这是 uni-app 的默认路径别名。
插件模块也可以使用同样的路径别名来引用应用程序中的代码。

收起阅读 »

ios disabled属性时,文字变灰,解决办法 css vue

iOS disabled

1.opacity: 1;

  1. -webkit-text-fill-color:#333;
  2. 如:input:disabled{
    color: #666;
    opacity:1; IOS默认的不透明级别为0.3
    -webkit-text-fill-color:#666;字体颜色安卓与IOS适配
    -webkit-opacity:1; 不透明级别安卓与IOS适配

}

继续阅读 »

1.opacity: 1;

  1. -webkit-text-fill-color:#333;
  2. 如:input:disabled{
    color: #666;
    opacity:1; IOS默认的不透明级别为0.3
    -webkit-text-fill-color:#666;字体颜色安卓与IOS适配
    -webkit-opacity:1; 不透明级别安卓与IOS适配

}

收起阅读 »

每日互动探索可控大模型,推动垂直行业数智化发展

ChatGPT的推出引爆了一场波及全球科技领域的“AI飓风”,越来越多的企业入局大模型赛道,推动AI全面迈进应用时代。在2023数据安全发展大会上,每日互动创始人、CEO方毅谈及大模型,他表示,大模型的能力令人震撼,“吃”的是数据,“吐”的是智能。通过与行业知识结合,大模型能从海量的数据中提取出有价值的信息,为业务决策提供智能支持,但现阶段大模型缺乏对价值观的判断。在实际的业务场景中,垂直行业更需要“可控大模型”

垂直行业更需要可控大模型

当下,大模型正在不断精进,以GPT-4、文心一言为代表的大模型(LLM)表现出了强大的逻辑推理能力,并能够很好地处理复杂任务,使得社会生产力得到了飞跃式提升。

面对大模型热度的持续狂飙,很多企业跃跃欲试,希望在发展和应用大模型的道路上抢占先机。然而在实际落地大模型的过程中,企业发现目前的大模型多是通用大模型(GLM),这些通用大模型未经过相应专业领域知识的系统性训练和学习,无法很好地满足垂直领域的专业需求;而如果考虑结合所在行业的细分需求、专业Know-How进行大模型的精调,则要花费高昂的算力成本,也需要足够优质的“算料”,也就是数据的“投喂”。此外,这些数据在流转过程中的合规安全问题,也是企业进行大模型应用过程中需要关注的重要因素。

综上,每日互动率先提出垂直行业更需要可控大模型。具体而言,大模型的可控体现在算力、算法、算料等三个方面:一是在“算力”上实现成本可控。相信随着云计算、芯片等技术的不断突破以及一些大模型走向开源,未来企业接入和使用大模型所需要的成本将越来越可控。二是在“算法”上要应用可控,即大模型的应用场景和计算输出结果要可管、可控、可计量。未来在足够的算力和算料支撑下,大模型的能力将进化到更高的水平,行业需要确保大模型做出的决策保持公平和善意。三是在“算料”上要安全可控。算料即数据,当下对每个企业来讲,数据要素都具有非常重要的战略意义。如何在数据流转和处理链路上,真正做到安全、可控,更好地保护个人隐私?这是当下大模型发展需要重视和解决的命题。

推动大模型实现安全可控

作为一家数据智能企业,每日互动更多的是推动大模型在“算法”和“算料”这两个层面实现可控。每日互动首倡大数据联合计算模式,并积极参与中国(温州)数安港建设,推动大模型在算法应用和数据安全层面实现可控。数安港打造的大数据联合计算平台,为垂直行业进行大模型的训练提供了安全可控的闭环容器。

首先,在数据安全层面,平台实现了“数据不流转而数据价值流转”“数据可用不可拥”,使各方数据得以在一个具有公信力的中立安全环境中进行融合计算,共同参与大模型的训练和调优。其次,大数据联合计算平台采用“三审核、三隔离”的方式,会对数据处理逻辑算法、输出结果、应用场景等进行严格审核,实现了大模型在算法应用场景和计算结果上的可控。

每日互动的可控大模型探索

在推动大模型实现可控的前提下,每日互动也积极探索将大模型与自身数智能力结合,帮助垂直领域客户更好地解决具体的业务问题。

每日互动积累了海量的数据资源和深厚的行业经验,在算法建模、图像视觉、机器学习等前沿技术领域持续深耕。每日互动通过充分释放“算料”价值,输出“算法”经验,辅助垂直行业客户定制化训练专属自身的垂直大模型,更好地发挥大模型的能力以针对性解决具体的业务场景问题。

为助力垂直行业客户的数字化转型升级,每日互动打造了数据智能操作系统DiOS(Data Intelligence Operating System)。DiOS承担着“让数好用,把数用好”的使命,致力于帮助行业客户更高效地管理和使用数据。目前,每日互动也在尝试将大模型融入到DiOS产品中,推进研发DiOS智能助手。通过接入开源大模型,并进行私有化部署和专门调优,每日互动将公司在治数、用数方面的经验和能力以及元数据等输入给大模型学习,推动大模型进化成为一个数据治理、加工和应用方面的超级专家,以DiOS智能助手的形态为客户服务。

类似ChatGPT的交互方式,未来行业客户可以用自然语言对话的方式,与DiOS智能助手进行互动。“我想了解本月公司的App在浙江的活跃情况,请帮我写段分析代码”“请帮我圈选出周边游偏好人群”“我要做公司快消类目商品的销售业绩分析,用哪些数据分析模板比较合适”……每日互动希望通过大模型能力的应用,变革数据治理和应用的范式,让更多的行业客户和中小企业能够极其便捷地挖掘数据价值,实现数智普惠

在商业服务领域,每日互动正在探索通过大模型解决投放人群和创意素材精准匹配的难题,帮助品牌广告主和互联网企业实现更有效的广告投放及用户触达。在品牌营销场景,每日互动正在打造“智选人群”功能,帮助营销人员基于广告文案和商品特性找到对应的TA人群。借助大模型对文本语义的学习和理解,每日互动帮助营销人员提取出商品和广告文案的内容特征,并智能预测出高购买潜力人群,进行定向触达,从而提升广告投放效果。

此外,每日互动也在探索应用大模型等前沿技术以促进内部生产经营效率提升的创新方案,比如结合语言链、RPA(机器人流程自动化)等技术,将以往需要大量人工操作以及复杂流程才能实现的诸多环节进行自动化,并在积累一定规模知识之后,逐步实现业务流程的智能化,让员工得以更加专注于高层次的工作,进一步释放内部生产力。

对于大模型,每日互动CTO叶新江做过一个非常形象的比喻,“大模型相当于一个全新的大脑,输出中枢能力,但它需要手和脚,才能和环境互动、反馈和优化,并完成各种具体的动作”。

每日互动自身的核心业务逻辑就是“DMP(Data-Machine-People)”,构成“数据积累-数据治理-数据应用”的业务闭环。每日互动正是基于DMP的闭环路径开展可控大模型的行业落地实践,把大模型“大脑”的能力输出给各行各业使用,并结合行业客户的应用反馈持续进行大模型的训练迭代。我们期待和行业伙伴们携手,在安全可控的前提下,更好地应用大模型,推动产业发展和社会进步。

继续阅读 »

ChatGPT的推出引爆了一场波及全球科技领域的“AI飓风”,越来越多的企业入局大模型赛道,推动AI全面迈进应用时代。在2023数据安全发展大会上,每日互动创始人、CEO方毅谈及大模型,他表示,大模型的能力令人震撼,“吃”的是数据,“吐”的是智能。通过与行业知识结合,大模型能从海量的数据中提取出有价值的信息,为业务决策提供智能支持,但现阶段大模型缺乏对价值观的判断。在实际的业务场景中,垂直行业更需要“可控大模型”

垂直行业更需要可控大模型

当下,大模型正在不断精进,以GPT-4、文心一言为代表的大模型(LLM)表现出了强大的逻辑推理能力,并能够很好地处理复杂任务,使得社会生产力得到了飞跃式提升。

面对大模型热度的持续狂飙,很多企业跃跃欲试,希望在发展和应用大模型的道路上抢占先机。然而在实际落地大模型的过程中,企业发现目前的大模型多是通用大模型(GLM),这些通用大模型未经过相应专业领域知识的系统性训练和学习,无法很好地满足垂直领域的专业需求;而如果考虑结合所在行业的细分需求、专业Know-How进行大模型的精调,则要花费高昂的算力成本,也需要足够优质的“算料”,也就是数据的“投喂”。此外,这些数据在流转过程中的合规安全问题,也是企业进行大模型应用过程中需要关注的重要因素。

综上,每日互动率先提出垂直行业更需要可控大模型。具体而言,大模型的可控体现在算力、算法、算料等三个方面:一是在“算力”上实现成本可控。相信随着云计算、芯片等技术的不断突破以及一些大模型走向开源,未来企业接入和使用大模型所需要的成本将越来越可控。二是在“算法”上要应用可控,即大模型的应用场景和计算输出结果要可管、可控、可计量。未来在足够的算力和算料支撑下,大模型的能力将进化到更高的水平,行业需要确保大模型做出的决策保持公平和善意。三是在“算料”上要安全可控。算料即数据,当下对每个企业来讲,数据要素都具有非常重要的战略意义。如何在数据流转和处理链路上,真正做到安全、可控,更好地保护个人隐私?这是当下大模型发展需要重视和解决的命题。

推动大模型实现安全可控

作为一家数据智能企业,每日互动更多的是推动大模型在“算法”和“算料”这两个层面实现可控。每日互动首倡大数据联合计算模式,并积极参与中国(温州)数安港建设,推动大模型在算法应用和数据安全层面实现可控。数安港打造的大数据联合计算平台,为垂直行业进行大模型的训练提供了安全可控的闭环容器。

首先,在数据安全层面,平台实现了“数据不流转而数据价值流转”“数据可用不可拥”,使各方数据得以在一个具有公信力的中立安全环境中进行融合计算,共同参与大模型的训练和调优。其次,大数据联合计算平台采用“三审核、三隔离”的方式,会对数据处理逻辑算法、输出结果、应用场景等进行严格审核,实现了大模型在算法应用场景和计算结果上的可控。

每日互动的可控大模型探索

在推动大模型实现可控的前提下,每日互动也积极探索将大模型与自身数智能力结合,帮助垂直领域客户更好地解决具体的业务问题。

每日互动积累了海量的数据资源和深厚的行业经验,在算法建模、图像视觉、机器学习等前沿技术领域持续深耕。每日互动通过充分释放“算料”价值,输出“算法”经验,辅助垂直行业客户定制化训练专属自身的垂直大模型,更好地发挥大模型的能力以针对性解决具体的业务场景问题。

为助力垂直行业客户的数字化转型升级,每日互动打造了数据智能操作系统DiOS(Data Intelligence Operating System)。DiOS承担着“让数好用,把数用好”的使命,致力于帮助行业客户更高效地管理和使用数据。目前,每日互动也在尝试将大模型融入到DiOS产品中,推进研发DiOS智能助手。通过接入开源大模型,并进行私有化部署和专门调优,每日互动将公司在治数、用数方面的经验和能力以及元数据等输入给大模型学习,推动大模型进化成为一个数据治理、加工和应用方面的超级专家,以DiOS智能助手的形态为客户服务。

类似ChatGPT的交互方式,未来行业客户可以用自然语言对话的方式,与DiOS智能助手进行互动。“我想了解本月公司的App在浙江的活跃情况,请帮我写段分析代码”“请帮我圈选出周边游偏好人群”“我要做公司快消类目商品的销售业绩分析,用哪些数据分析模板比较合适”……每日互动希望通过大模型能力的应用,变革数据治理和应用的范式,让更多的行业客户和中小企业能够极其便捷地挖掘数据价值,实现数智普惠

在商业服务领域,每日互动正在探索通过大模型解决投放人群和创意素材精准匹配的难题,帮助品牌广告主和互联网企业实现更有效的广告投放及用户触达。在品牌营销场景,每日互动正在打造“智选人群”功能,帮助营销人员基于广告文案和商品特性找到对应的TA人群。借助大模型对文本语义的学习和理解,每日互动帮助营销人员提取出商品和广告文案的内容特征,并智能预测出高购买潜力人群,进行定向触达,从而提升广告投放效果。

此外,每日互动也在探索应用大模型等前沿技术以促进内部生产经营效率提升的创新方案,比如结合语言链、RPA(机器人流程自动化)等技术,将以往需要大量人工操作以及复杂流程才能实现的诸多环节进行自动化,并在积累一定规模知识之后,逐步实现业务流程的智能化,让员工得以更加专注于高层次的工作,进一步释放内部生产力。

对于大模型,每日互动CTO叶新江做过一个非常形象的比喻,“大模型相当于一个全新的大脑,输出中枢能力,但它需要手和脚,才能和环境互动、反馈和优化,并完成各种具体的动作”。

每日互动自身的核心业务逻辑就是“DMP(Data-Machine-People)”,构成“数据积累-数据治理-数据应用”的业务闭环。每日互动正是基于DMP的闭环路径开展可控大模型的行业落地实践,把大模型“大脑”的能力输出给各行各业使用,并结合行业客户的应用反馈持续进行大模型的训练迭代。我们期待和行业伙伴们携手,在安全可控的前提下,更好地应用大模型,推动产业发展和社会进步。

收起阅读 »

在uni-app main.js 中定义3个全局方法的例子

全局组件

import Vue from 'vue'  
import App from './App'  

Vue.config.productionTip = false  

App.mpType = 'app'  

// 定义全局方法1  
Vue.prototype.method1 = function () {  
  console.log('这是全局方法1')  
}  

// 定义全局方法2  
Vue.prototype.method2 = function (param1, param2) {  
  console.log(`这是全局方法2,参数1=${param1},参数2=${param2}`)  
}  

// 定义全局方法3  
Vue.prototype.method3 = function () {  
  uni.showToast({  
    title: '这是全局方法3',  
    icon: 'none'  
  })  
}  

// 引入全局uView  
import uView from 'uview-ui'  
Vue.use(uView);  

const app = new Vue({  
    ...App  
})  
app.$mount()

在调用全局方法之前,需要先确保在应用程序中已成功引入了定义这些方法的代码。

调用全局方法的方法与调用任何其他方法相同,即通过访问实例的方法名进行调用。以下是在组件中调用这3个方法的示例代码:

<script>
export default {
methods: {
onClick1() {
// 调用全局方法1
this.method1()
},
onClick2() {
// 调用全局方法2
this.method2('参数1值', '参数2值')
},
onClick3() {
// 调用全局方法3
this.method3()
},
}
}
</script>

继续阅读 »

import Vue from 'vue'  
import App from './App'  

Vue.config.productionTip = false  

App.mpType = 'app'  

// 定义全局方法1  
Vue.prototype.method1 = function () {  
  console.log('这是全局方法1')  
}  

// 定义全局方法2  
Vue.prototype.method2 = function (param1, param2) {  
  console.log(`这是全局方法2,参数1=${param1},参数2=${param2}`)  
}  

// 定义全局方法3  
Vue.prototype.method3 = function () {  
  uni.showToast({  
    title: '这是全局方法3',  
    icon: 'none'  
  })  
}  

// 引入全局uView  
import uView from 'uview-ui'  
Vue.use(uView);  

const app = new Vue({  
    ...App  
})  
app.$mount()

在调用全局方法之前,需要先确保在应用程序中已成功引入了定义这些方法的代码。

调用全局方法的方法与调用任何其他方法相同,即通过访问实例的方法名进行调用。以下是在组件中调用这3个方法的示例代码:

<script>
export default {
methods: {
onClick1() {
// 调用全局方法1
this.method1()
},
onClick2() {
// 调用全局方法2
this.method2('参数1值', '参数2值')
},
onClick3() {
// 调用全局方法3
this.method3()
},
}
}
</script>

收起阅读 »