当前位置: 首页 > news >正文

wordpress 页面压缩给网站做优化怎么做

wordpress 页面压缩,给网站做优化怎么做,wordpress多广告位,软件开发培训机构去学之前做个几个大模型的应用,都是使用Python语言,后来有一个项目使用了Java,并使用了Spring AI框架。随着Spring AI不断地完善,最近它发布了1.0正式版,意味着它已经能很好的作为企业级生产环境的使用。对于Java开发者来说…

之前做个几个大模型的应用,都是使用Python语言,后来有一个项目使用了Java,并使用了Spring AI框架。随着Spring AI不断地完善,最近它发布了1.0正式版,意味着它已经能很好的作为企业级生产环境的使用。对于Java开发者来说真是一个福音,其功能已经能满足基于大模型开发企业级应用。借着这次机会,给大家分享一下Spring AI框架。

注意由于框架不同版本改造会有些使用的不同,因此本次系列中使用基本框架是 Spring AI-1.0.0,JDK版本使用的是19
代码参考: https://github.com/forever1986/springai-study

目录

  • 1 ModerationModel
    • 1.1 关于Moderation
    • 1.2 Spring AI的ModerationModel
  • 2 示例演示

上一章讲了AudioModels(音频大模型),这一章再讲一个ModerationModel(内容审核大模型)

1 ModerationModel

1.1 关于Moderation

在互联网时代,用户每天会生成海量的内容,现在有了大模型那么网上的内容增加量几乎是几何倍增长。一方面享受到了大模型的生产力和创造力的红利,但是另一方面,对生成内容的安全性与合规性也提出了更高的要求。因此对于一些场景比如评论、弹幕、论坛、短视频、直播等领域,用户发表的内容可能包含一些敏感的、违规的内容。这不仅会对用户体验造成影响,更重要的,可能会给企业带来舆论和法律风险。因此需要对其内容进行审核。
ModerationModel :也叫内容审核模型,旨在基于文本、图像、音频、视频的检测技术,可自动检测涉黄、涉暴、图文违规等内容,对用户上传的文字、图片、音视频进行内容审核,以满足上传要求,帮助客户降低业务违规风险。以下是常见的违规事项(不同模型可能内容不同,但是大同小异):

类型说明
Sexual性相关(色情等)
Hate and Discrimination仇恨与歧视
Violence and Threats暴力与威胁
Dangerous and Criminal危险且犯罪的
Self-Harm自残,自我伤害
Health包含或试图提供详细或个性化医疗建议的内容。
Financial包含或试图提供详细或个性化财务建议的内容。
Law包含或试图提供详细或定制化法律建议的内容。
PII包含个人信息

1.2 Spring AI的ModerationModel

在Spring AI中抽象了一个ModerationModel接口,定义了一个通用的用于内容审核的 AI 模型。它扩展了Model接口,以处理与各种类型 AI 模型的交互(目前该接口来看只适合于文本类型内容审核)。其源码如下:

import org.springframework.ai.model.Model;/*** 提供了一个单一的方法“call”方法*/
@FunctionalInterface
public interface ModerationModel extends Model<ModerationPrompt, ModerationResponse> {ModerationResponse call(ModerationPrompt request);}

同时提供的入参ModerationPrompt和出参ModerationResponse
其中ModerationPrompt有2个重要的变量:

  • ModerationMessage:表示一条需进行审核处理的消息,其中包含文本内容。此类别为可提交至审核流程的消息提供了基本结构。
  • ModerationOptions:提供一些模型可用的配置,只是个接口,需要模型厂商需要自己实现自己的配置

其中ModerationResponse有2个重要的变量:

  • ModerationResponseMetadata:定义了与审核回复相关的元数据,扩展了基础回复接口。
  • Generation:来自审核流程的响应。它包含了审核生成的元数据以及审核对象。

比较遗憾的是目前Spring AI中的ModerationModel只实现了OpeanAI和MistralAI两个模型,不过相信后续会有更多厂商模型接入。

2 示例演示

代码参考lesson20子模块

示例说明:由于目前Spring AI只有OpeanAI和MistralAI两个模型实现了ModerationModel,这里利用Mistral AI模型作为演示,只是它是免费且没有被禁用

1)申请MistralAI的API KEY,访问:https://console.mistral.ai/api-keys

在这里插入图片描述

说明:没注册的朋友可能要注册一下,需要使用一个邮箱和手机

2)新建lesson20子模块,其pom引入如下:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-mistral-ai</artifactId></dependency>
</dependencies>

3)配置application.properties文件

spring.ai.mistralai.api-key=你的Mistral API KEY

4)新建演示类ModerationController :

import org.springframework.ai.mistralai.moderation.MistralAiModerationModel;
import org.springframework.ai.mistralai.moderation.MistralAiModerationOptions;
import org.springframework.ai.moderation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@RestController
public class ModerationController {private final MistralAiModerationModel mistralAiModerationModel;@Autowiredpublic ModerationController(MistralAiModerationModel mistralAiModerationModel) {this.mistralAiModerationModel = mistralAiModerationModel;}@GetMapping("/ai/moderation")public void moderation(@RequestParam(value = "message", defaultValue = "这个事情只有男的可以做,女的做不到!") String message) {// 说明一下,这个message只是为了测试效果,并不代表作者任何观点MistralAiModerationOptions moderationOptions = MistralAiModerationOptions.builder().model("mistral-moderation-latest").build();ModerationPrompt moderationPrompt = new ModerationPrompt(message, moderationOptions);ModerationResponse moderationResponse = mistralAiModerationModel.call(moderationPrompt);// 获取审核结果Moderation moderation = moderationResponse.getResult().getOutput();// Access the moderation results (there's usually only one, but it's a list)for (ModerationResult result : moderation.getResults()) {System.out.println("最终结果:");System.out.println("Flagged: " + result.isFlagged());// Access categoriesCategories categories = result.getCategories();System.out.println("\n类型,true表示包含:");// 触发法律System.out.println("Law: " + categories.isLaw());// 触发金融限制System.out.println("Financial: " + categories.isFinancial());// 包括个人信息System.out.println("PII: " + categories.isPii());// 包括色情System.out.println("Sexual: " + categories.isSexual());// 包括偏见、敌意System.out.println("Hate: " + categories.isHate());// 包括骚扰信息System.out.println("Harassment: " + categories.isHarassment());// 包括宣传、鼓励自杀自残等System.out.println("Self-Harm: " + categories.isSelfHarm());// 包括未成年人色情System.out.println("Sexual/Minors: " + categories.isSexualMinors());// 包括偏见、敌意的恐吓等System.out.println("Hate/Threatening: " + categories.isHateThreatening());// 包括暴力血腥层面System.out.println("Violence/Graphic: " + categories.isViolenceGraphic());// 包括自杀自残倾向System.out.println("Self-Harm/Intent: " + categories.isSelfHarmIntent());// 包括引导自杀自残System.out.println("Self-Harm/Instructions: " + categories.isSelfHarmInstructions());// 包括自杀自残恐吓System.out.println("Harassment/Threatening: " + categories.isHarassmentThreatening());// 包括暴力System.out.println("Violence: " + categories.isViolence());// Access category scoresCategoryScores scores = result.getCategoryScores();System.out.println("\n以下个各种类型分数(分数越高代表可能性越高:");System.out.println("Law: " + scores.getLaw());System.out.println("Financial: " + scores.getFinancial());System.out.println("PII: " + scores.getPii());System.out.println("Sexual: " + scores.getSexual());System.out.println("Hate: " + scores.getHate());System.out.println("Harassment: " + scores.getHarassment());System.out.println("Self-Harm: " + scores.getSelfHarm());System.out.println("Sexual/Minors: " + scores.getSexualMinors());System.out.println("Hate/Threatening: " + scores.getHateThreatening());System.out.println("Violence/Graphic: " + scores.getViolenceGraphic());System.out.println("Self-Harm/Intent: " + scores.getSelfHarmIntent());System.out.println("Self-Harm/Instructions: " + scores.getSelfHarmInstructions());System.out.println("Harassment/Threatening: " + scores.getHarassmentThreatening());System.out.println("Violence: " + scores.getViolence());}}
}

5)新建启动类Lesson20Application :

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Lesson20Application {public static void main(String[] args) {SpringApplication.run(Lesson20Application.class, args);}}

6)演示效果:

http://localhost:8080/ai/moderation

在这里插入图片描述

说明:从上图可以看到,输入一句具有歧视的内容,Hate就是true,其代表的分数也接近1。

结语:本章讲述了什么是内容审核模型,并对Spring AI 中的ModerationModel相关类和接口进行讲解。最后通过使用Mistral模型演示了效果。看到有内容审核模型,有朋友可能会想到大模型经常出现幻觉,那么应该就有评估是否存在幻觉的测试,Spring AI也提供了Evaluation这样的模块实现模型评估测试,下一章将着重介绍这一部分的使用。

Spring AI系列上一章:《Spring AI 系列之二十三 - AudioModels》

Spring AI系列下一章:《Spring AI 系列之二十五 - Evaluation模型评估》

http://www.dtcms.com/a/572346.html

相关文章:

  • 网站建设需要注意哪些中国设计之窗官方网站
  • 校园淘宝店网站开发平面设计师接单app
  • h5网站网站建设网站建设淄博
  • 法学院网站建设建议网站设计制作ihanshi
  • 做网站用的图标济南市建设招标中心网站
  • 刷单类网站开发2022实时热点新闻事件
  • 广州网站设计制作报价室内装修图片效果图
  • p2p网站开发的流程图广州微网站建设机构
  • 网站建设创业经历做网站优化的公司的宣传海报
  • 如何做好一个网站的推广江苏省住房和城乡建设厅
  • 网站设计需要多久抖音电脑网页版入口
  • 网站宣传策略网站建设方案书 百度
  • 大通县wap网站建设公司深圳保障性住房在哪里申请
  • 内网小网站的建设黄金交易平台app
  • html5网站有点ip达1万的网站怎么做
  • 网站建设的功能和定位策划公司电话
  • 半路出家去学计算机网站开发北京网站建设laitang
  • 做网站最专业龙海网站建设
  • 重庆智能网站建设价格十大免费文案网站
  • 做女朋友的网站腰椎间盘突出压迫神经腿疼怎么治
  • 威海做企业网站短视频营销案例
  • 网页设计作业网站素材和效果图官方推广平台
  • 做视频官方网站苏州网站网站建设
  • 奉新网站制作免费seo培训
  • 深圳网站开发搜行者seo微信公众平台开发实例教程
  • 网站页面宽度珠海网页设计公司
  • 成都企业网站建设费用怎么用手机创建网站
  • 开源的 二次网站开发沈阳建设企业网站
  • 枣庄手机网站开发公司wordpress开发登录插件
  • 华为网站的建设建议书泗县建设局网站