游戏开发调用 ChatGPT API,独立开发者哭诉:应用被下架,多年的存款和心血没了

将 ChatGPT App 集成到现有产品与 SDK/MCP 迁移 本文探讨在现有系统上集成与迁移MCP/Apps SDK的实践路径,强调将MCP视为对旧后端的轻量适配器,而非重构新系统。核心原则包括:以单一事实来源(如Zod)统一数据模式,通过版本化工具(如_v2)实现安全演进;严格测试契约与认证(scopes、.well-known);善用注解(destructiveHint等)引导模型行为;并遵循金丝雀发布、黄金用例验证的工程流程。避免常见错误如模式冗余、隐性破坏变更、忽视可观测性,确保系统在长期演进中稳定可靠。 阅读详情

一个月前,有人在“美版贴吧”的 Reddit 社区上发问,“如果我使用了 ChatGPT 生成的一些代码来制作我的游戏,这款游戏是否会被 Steam 禁止?”

图片

评论区多数人认为,“游戏直接被 Steam 平台封禁有些不太可能。只不过借助 AI 来进行游戏开发听起来像是一种制作游戏的悲惨方式。游戏开发是一门艺术,练习艺术并变得更好本身就是一种回报。游戏开发者应该尽量自己动手。这虽然需要时间,但这样会使得游戏越来越好,也会让其自身拥有真正的成就感。”

然而,未等这位版主有下一步的尝试,另一位名为 Shasaur 的独立开发者便发帖带来了预警,其表示,「自己花了多年时间和所有积蓄开发的游戏今天被 Steam 平台拒绝了还直接做了下架处理,只因为他们尝试将 ChatGPT 适当引入游戏中」。

图片

游戏开发中初尝试 ChatGPT,结果:赔了夫人又折兵

根据 Shasaur 的描述,他已经为这款游戏投入了三年半的时间。除此之外,Shasaur 投入了包含金钱在内的诸多资源,甚至牺牲了自己很多社交生活时间来开发游戏,只想把这款游戏做好。

如今随着 ChatGPT 等 AIGC 时代的到来,与整日担忧自己的工作可能会被取而代之的开发者有所不同,Shasaur 认为可以适当地将最新的技术融合自己的游戏中。

于是,在三四个月前,Shasaur 决定在他的游戏测试版中加入一个可选的 ChatGPT Mod,使得玩家可以调用 ChatGPT API 的回复来替换与 NPC 的对话。

首先,需要明确的一点是,这个模块完全是可选择的。Shasaur 称,它不是游戏所必选项,甚至不是游戏的一部分,只是一个对新技术的尝试与实验。在设置中,游戏玩家可以选择打开或关闭这个选项。

与此同时,Shasaur 还要求游戏者测试者使用自己的 OpenAI API 密钥来访问这一功能。

在一个月前,当 Shasaur 将游戏提交并进入 Early Access 时,意想不到的事情发生了。Steam 认为该游戏的新版本需要交给他们团队进行额外的人工审核,并要求开发者 Shasaur 提供有关使用 AI 的详细信息。

基于此,Shasaur 准确地解释了这款游戏的运作的原理,并解释了新构建版本中没有直接包含 AI 的内容。同时,为了安全起见,Shasaur 也发布了一个不包含调用 ChatGPT  API 功能的新版本。

紧接着,Shasaur 便进入了漫长的审核等待期,过去的一个月时间里,他没有收到 Steam 有关审核的反馈以及最新的进展,甚至 Steam 平台也没有提出任何后续问题,也没有尝试与开发者 Steam 进行沟通对话。

Shasaur 在回想那段时间时表示,“仅是这段时间就给了我极大的压力,因为我根本不知道会发生什么。”

然后,就在近日,Shasaur 终于等来了回音,只是这个回应首先还是他的一个粉丝告诉他的。当时那个粉丝通过在 Discord 上给他发消息,询问他为什么要把游戏下架?

随即,Shasaur 收到了一封邮件,里面写着——「应用程序已被停用,并附带了一个通用的 "您的游戏包含 AI"的回复」。

这让 Shasaur 完全无法接受,感到十分震惊。

「数年时间开发的游戏,牺牲了金钱、与家人和朋友在一起的时间,为游戏倾注了我的全部心血,却只得到一封简短的邮件 "对不起,我们将下架您的应用"!」

Shasaur 在 Reddit 上发布的帖子中写道:

“自从我在 Steam 上发布了我的游戏页面后,我就一直在引导人们直接到 Steam 上。Chris Zukowski 说过的一句话言犹在耳:‘不要建立网站,直接链接到你的 Steam 页面就可以了,这样更轻松地添加愿望清单’。Steam 拥有 75% 的桌面市场,没有他们,我就无法成功发布游戏。

整个经历、他们做出这个决定的方式、他们的支持人员对待我的方式,都让我感觉完全没有人性,尽管感觉非常不公平,但我却无能为力。即使是他们发送的最后一封电子邮件,也没有提到我可以尝试对决定提出上诉,只是说'是的,这已经结束了,但你可以拿回你的应用程序积分!'。”

图片

无独有偶

最后,Shasaur 表示自己还在尝试了所有能想到的方式,包括对游戏进行新的审查并联系 Steam 支持团队,但他自己也感到希望渺茫。

毕竟这并不是独立游戏第一次因为包含 AI 创建的资源而被 Steam 封禁了。

几个月前,另一个 Reddit 子版块的博主 potterharry97 发布了一篇标题为《Valve 不愿意用户发布带有 AI 生成内容的游戏》,其中详述了他从提交新版本到被 Steam 拒之门外的经历。

图片

potterharry97 在不知道 Steam 有任何禁止使用 AI 政策的前提下,设计了一款游戏,其中有些内容是借助 AI 工具生成的,然后他向 Steam 平台提交此版本之后,便收到了一条 Steam 反馈信息:

你好,

虽然我们努力交付提交给我们的大多数游戏,但我们无法交付开发商不拥有所有必要权利的游戏。

经过审查,我们发现[游戏名称]中的知识产权似乎属于一个或多个第三方。特别是,[此处游戏名称]包含由人工智能生成的艺术资产,这些资产似乎依赖于第三方拥有的受版权保护的材料。由于此类人工智能生成艺术的合法所有权尚不清楚,因此我们无法发布包含这些人工智能生成资产的游戏,除非您可以肯定地确认您拥有训练该人工智能生成的数据集中使用的所有 IP 的权利。

我们这一次会不通过您的提交申请,并将为您再提供一次机会,从您的构建中删除您无权访问的所有内容。

如果您未能删除所有此类内容,我们将无法在 Steam 上发布您的游戏,并且该应用程序将被禁止。

而后,potterharry97 手动修改了 AI 生成的这部分内容,也不存在借助 AI 工具生成的代码痕迹,但 potterharry97 表示,他的应用程序在上一次已经被标记为人工智能生成的内容,所以即使在重新提交后,应用程序还是遭到了拒绝。

不过,据外媒 The Verge 报道,其收到 Steam 母公司 Valve 就此事发表的一份声明,其中 Valve 强调了人工智能创造的资产的版权问题,并试图对此保持谨慎。Valve 还表示,AI 在游戏开发中的应用仍然是一个新的、不断发展的话题,因此他们正在像行业其他公司一样学习和适应。Valve 在声明中也不忘记指出,他们并不反对在游戏中使用人工智能。

图片

程序员借助 ChatGPT 等工具生成代码,到底是对还是错?

对于 Shasaur 和 potterharry97 的遭遇,倾注心血完成的游戏开发内容于一夕之间付诸东流,作为独立开发者的梦想只剩下零散的碎片,这也令人十分痛心。

不过,AI 创造了开发新范式,实则已经是一种不可避免的趋势,今年早些时候,育碧(Ubisoft)公司宣布了其 Ghostwriter 人工智能工具;High on Life 团队也利用人工智能创建了视频游戏语音对话......只是,AI 应用领域还是有很多悬而未决的问题。

对此,有网友表示,“Valve 在这方面的立场已经很明确了。我确实为你感到难过,但你肯定是在将多年的工作置于风险之前研究过这个问题的吧?需要注意的是,尽管你只是在使用 API,但 ChatGPT 也 100% 是在受版权保护的数据上训练出来的。在法律明确规定之前,这是 Valve 不愿涉及的未开发和未规范领域。”

图片

事实上,就应用 AIGC 工具或者借助其来生成代码本身并没有对错之分,只是也像询问 ChatGPT 时,它给出的见解一样,开发者使用 AIGC 时一定需要注意:

  • 知识产权问题:如果开发者未获得合适的授权或许可,使用 AI 工具生成的内容可能侵犯知识产权,这是不合法的。

  • 不当内容:生成的内容可能包含不适当、冒犯性或虚假信息,这可能导致用户的困扰或误导。

  • 欺诈和滥用:在某些情况下,开发者可能会滥用这些工具,例如制作虚假评论、欺骗用户或进行其他不当行为。

  • 法律和道德问题:使用 AI 工具时,开发者应该遵守适用的法律和道德准则,确保生成的内容和应用程序的使用方式合法合规。

最后,各行各业有关 ChatGPT 等工具的使用仍存在巨大的争议,作为开发者,我们也在此建议,不要在盲目之下直接在生产环境中的产品上使用这类工具,一定要先做好充分的调研再行动,避免自己或团队多年的心血付诸东流。

如何解决 ChatGPT 在科研学术写作中“不说人话”? 短视频真正改变的,是知识抵达人的方式。真正该改的是信息顺序:先给结论,再讲原因和证据,最后补充必要的边界,边界在这里是护栏,不该挡在正文前面。读者还没质疑,例外和边界已经先摆好了,不敢把话说透,真正好的文章会先把核心判断稳稳立住,再补充复杂性,不会让读者猜半天你到底想说什么。观点还没展开,就先回应并不存在的反对意见,大量篇幅都在证明我没这么说,不过度防御的文章都是前者忙着管理风险,后者才是在推进认识。逐句查看文章中的转折、退让和补充说明,追问一句,如果拿掉这句话,事实是否仍然准确,推理是否依然成立。 阅读详情

相关推荐

Bright Data ChatGPT 搜索抓取器(Python)

使用 GitHub 登录,然后 fork 该仓库开始进行更改。本项目提供一个使用 Bright Data Web Scraper API 抓取结果的简易 Python 样板代码。

亮数据 Bright Data 的博客 309

吴恩达-面向开发人员的 ChatGPT 提示工程

大部分的ChatGPT用户目前更倾向通过Web 用户界面去完成特定且通常是一次性的任务。而大语言模型(LLM)可以在开发者的手中实现更多的用途,但具体应该怎么做一直没有一个统一的体系去参考。幸运的是,人工智能领域的大佬吴恩达与OpenAI推出了面向开发者的ChatGPT提示工程课程,旨在教授开发者如何通过API调用LLM来快速构建软件应用程序。目前免费且新手也可以轻松上手!可能有的童鞋会问,什么是LLM呢,让我们简单介绍一下。1。

昨天发生了什么? 3505

PX4实战指南:通过遥控器通道直连实现舵机PWM控制

本文详细介绍了如何通过PX4飞控实现遥控器通道直连控制舵机PWM输出的完整流程。从硬件准备、遥控器配对到PX4参数配置和硬件连接,提供了实战技巧和常见问题解决方案,帮助无人机爱好者快速掌握舵机控制技术。重点讲解了AUX Passthrough模式设置和PWM参数调整等关键步骤。

weixin_29195217的博客 154

游戏开发调用 ChatGPT API,独立开发者哭诉:应用被下架,多年的存款和心血没了...

整理 |屠敏出品 | 优快云(ID:优快云news)一个月前,有人在“美版贴吧”的 Reddit 社区上发问,“如果我使用了 ChatGPT 生成的一些代码来制作我的游戏,这款游戏是否会被 Steam 禁止?”评论区多数人认为,“游戏直接被 Steam 平台封禁有些不太可能。只不过借助 AI 来进行游戏开发听起来像是一种制作游戏的悲惨方式。游戏开发是一门艺术,练习艺术并变得更好本身就是一种回...

优快云资讯 3413

Abaqus滞回问题求解—浆锚连接装配式剪力墙滞回模拟

当下土木工程研究生,多数都在从事装配式混凝土构件安全或装配式混凝土构件连接节点力学性能的研究。研究这类问题,几乎脱离不开对有限元软件的使用,Abaqus求解能力非常强大,但模型处理能力相对较弱。装配式混凝土结构的有限元计算与传统现浇结构相比,其节点处理起来相对复杂,计算结果往往需要凸显出连接节点力学特性,所以对建模精程度的要求较高。所以向大家介绍一款工具—HyperMesh软件(一下简称Hm),它是专业的有限元前处理工具,用于处理装配式混凝土构件或连接节点有限元模型比较合适。这篇文章主要介绍如何利用Hm处理

qq_31918049的博客 2902

STM32驱动SPL06-001气压传感器:I2C通信与温度补偿实战

气压传感器在无人机定高、室内定位和气象监测中至关重要。SPL06-001凭借±0.06 hPa相对精度和I2C接口,成为STM32项目的理想选择。通过I2C总线读取原始数据,并利用出厂校准系数进行温度补偿和气压解算,可输出高精度气压值。本文详细解析SPL06-001的寄存器操作、校准系数拼接及补偿算法,并分享I2C上拉电阻、地址配置等避坑经验,帮助开发者快速实现气压测量与高度解算。

weixin_29188043的博客 339

独立游戏调用ChatGPT遭Steam下架,开发者:我的存款和三年半时光都没了

克雷西 发自 凹非寺量子位 | 公众号 QbitAI辛苦做了3年半的游戏,只因用了ChatGPT就被Steam给下架了?!这则控诉贴在Reddit一经发出即爆火,围观热度达到2.5k。帖主Shasaur(我们姑且叫他S叔)介绍,他和Steam进行了长时间拉锯,但最终游戏还是被下架了。他在提及表述自己收到下架通知时,特意用了“randomly”来烘托内心的不解:我耗费数年心血和积蓄投入这个游戏,换来...

量子位 290

【ESP32-S3量产指南】基于Flash下载工具实现Release模式Flash加密与安全配置

本文详细介绍了ESP32-S3量产阶段如何通过Flash下载工具实现Release模式下的Flash加密与安全配置。从加密模式选择、工具配置到分区表优化,提供了一套完整的量产安全解决方案,帮助开发者有效防止固件泄露和篡改,确保设备安全。

weixin_28730131的博客 230

ChatGPT 广告技术栈架构拆解:多轮意图、LLM 工具编排、ANN 召回与拍卖闭环

基于 OpenAI 官方工程文章,拆解 ChatGPT 广告系统如何用有状态会话理解多轮意图,以独立链路隔离自然回答,再由 LLM 编排召回、过滤、相关性评分、拍卖和最终交付,并给出可复用的超时、观测、安全与反馈闭环设计。

jerry764的博客 361

Unity插件-Mirror使用方法(一)Mirror介绍

Unity Mirror 是一个专为 Unity 引擎设计的开源、社区驱动的网络库,主要用于简化多人联机游戏的开发。它最初是为了替代 Unity 原生的 UNet 系统(已被官方弃用)而创建的,因其轻量、灵活和高效的特点,成为 Unity 开发者构建多人游戏的热门选择。

qq_44501691的博客 4099

视觉SLAM与激光SLAM简单对比分析

本文旨在梳理目前较为前沿的SLAM技术,包括激光和视觉,主要从精度和实时性两个方面对算法进系评价。对于激光SLAM了解不深,后期需要补充相关算法的核心思想与算法框架。有问题请大佬们随时留言,我再改正。

超爱吃小蛋糕的66的博客 3854

ChatGPT Projects 使用教程:项目指令、文件管理与上下文复用

使用ChatGPT的Projects功能可高效处理长期任务,避免重复说明背景与要求。通过设置项目指令、上传参考文件、复用上下文,实现代码分析、文档维护等任务的持续优化。建议按任务类型建项目,配置简洁规则,重要结论存为独立文档,避免依赖记忆遗漏。适用于有固定流程、需多资料协作的场景,但不可替代Git版本管理。

carriedream的博客 276

GameFramework框架详解之 Network网络框架

NetworkManager只负责维护NetworkChannel,实际的有种我们简历网络连接的也是NetworkChannel作为一个网路频道,这样管理起来比较方便,比如:一个游戏可能有多个网络连接,那么我们建立多个网络频道即可,或者当我们一个网络频道断线后,我们可以直接再新建一个,防止数据混乱。/// /// 网络管理器。/// /// 网络频道。/// 用户自定义网络错误事件。/// 检查是否存在网络频道。/// 获取网络频道。/// 获取所有网络频道。

TxNet 3366

ChatGPT、Codex工程实战:数据库迁移脚本开发环境测试通过,为什么生产上线仍可能锁表甚至丢数据?

ChatGPT、Codex生成的数据库迁移脚本开发环境测试通过,为什么生产上线仍可能锁表甚至造成数据不一致?本文从Java订单系统生产变更切入,分析MySQL DDL、元数据锁、大批量数据回填、新旧版本兼容和数据迁移风险,并介绍Expand-Contract分阶段迁移方案。

lb654509656的博客 308

【Power Compiler手册】4.saif文件

功耗计算的准确性取决于切换活动数据的准确性。这些数据是通过使用RTL仿真或门级仿真生成的,并存储在SAIF文件中。在执行功耗优化和分析之前,应该使用SAIF文件来反标设计对象上的切换活动信息。SAIF是由Synopsys支持的ASCII格式,用于促进不同Synopsys工具之间的信息交换(参见IEEE 1801标准,附录J)。使用`read_saif`命令读取SAIF文件,使用`write_saif`命令写出SAIF文件。有关更多信息,请参见`read_saif`和`write_saif`命令的手册页。

QRBQ 2186

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

《C++ 项目:手写大模型接入 SDK》ChatGPT接口设计(中):全量响应实现和测试

本文详细实现了ChatGPTProvider对接OpenAI ResponsesAPI的全量响应sendMessage接口,涵盖模型可用性校验、请求参数解析、JSON报文组装、HTTP客户端配置(含代理与超时)、网络请求发送及响应解析全流程。通过GTest编写测试用例,发现并修复了因Content-Type重复设置导致的400错误,揭示了不同厂商网关对请求头规范的宽容度差异,最终提出一套兼容多模型服务商的标准写法,提升了代码通用性与鲁棒性。

2501_91275995的博客 579

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ChatGPT Images 2.6 实测解读:一句话直出 GIF,Flare 提速 46%,API 支持 2~64 帧动图

过去两年,AI 生图解决了"画得像不像""字写得对不对"的问题,但交付物始终是一张静态图。想让它动起来,通常要另外找视频模型,或者自己拆帧、用 PS、ffmpeg 合成 GIF——对运营、设计、做表情包的人来说,这一步既麻烦又容易翻车:帧之间画风跳变、角色走样、文件体积失控。这次 OpenAI 发布的,把这一步直接收进了生图本身:在对话里说一句"能做成 GIF 吗",返回的就是一张可循环播放的动图,而且生成后还能接着改。按 OpenAI 的说法,这是第一个原生直出 GIF 的主流生图产品。

JEECG官方博客 219

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ChatGPT和Codex怎么选?看任务、环境与验收方式

想让AI解释一个报错,打开ChatGPT就能问;想让它进入现有项目,定位问题、修改文件并运行测试,Codex通常更合适。它们都能回答问题,也都能处理不止一步的任务。区别在于任务需要哪些上下文、工具,以及你准备怎样检查结果。[1][2]**答案可以在对话中看完,先用ChatGPT;结果要落到代码仓库,还要看改动和测试,先用Codex。**需要处理文件、研究资料或写报告时,也可以从ChatGPT开始;Codex并不局限于写代码。[1]

2601_96207100的博客 271

ChatGPT Images 2.6 入门:保存角色参考图并生成循环 GIF

按官方 Images in ChatGPT 说明,介绍在 ChatGPT 中把照片存成角色参考并用 @名字复用,再用提示词或静图生成循环 GIF、打开后调速并保存分享的完整步骤。

死磕音视频 193

ChatGPT Images 2.6 商业落地与场景应用指南

本文聚焦电商与设计团队的视觉生产痛点,提出“人机协同”的AI高效工作流。通过十大实战场景,系统拆解商品图生成、海报自动化、风格一致性控制、提示词工程等关键环节,构建可复制、可量化的视觉生产管线。强调以标准化模板、模块化提示词与人机协作闭环,实现从构思到成图的极速落地,显著提升效率与质量,助力各行业实现视觉内容的智能化升级。

frt的博客 268

OpenAI 合并 ChatGPT 的 Chat 与 Work 标签,ChatGPT 与 Codex 共用 token 配额

OpenAI计划合并ChatGPT桌面应用中的Chat与Work标签页,简化用户界面,使从想法探索到任务执行全程在一个界面完成。新体验将支持文件、插件调用,助力生成网站、演示文稿等。Codex仍独立存在,且聊天与Codex将共享token额度,部分用户或需更频繁等待重置。该调整将先面向部分用户测试,后续推广。此举呼应Anthropic此前对Claude功能的整合。

小川搞开发的博客 177

研究生做文献综述,ChatGPT、NNScholar、Elicit 怎么选?按检索、精读和改稿逐步比较

选AI科研工具,不只比较谁回答得长。围绕一个文献综述任务,从检索范围、PDF原文核对到初稿修改,说明ChatGPT、NNScholar和Elicit的比较方法,并给出可复用的提问与记录模板。

suiceee的博客 159

官方更新里冒出的“记忆卡片”该怎么用:从9月22日功能更新到双层记忆系统,把ChatGPT里两种“记”的分工读清楚

被动的记忆留给身份与偏好,主动的卡片留给知识与练习,任务级的约束与标准留给提示词。官方更新只是给了工具,分工的判断权在你手里。参考资料:《ChatGPT 版本说明 | OpenAI Help Center》(2026年9月22日更新条目:在 ChatGPT 中创建记忆卡片);《ChatGPT Plus 深度使用指南:从入门到真正提效的硬核技巧》(约束注入法、评判标准 Rubric、Memory 系统相关章节)

2603_96980045的博客 436
上一篇: 华为再放大招,PC 版鸿蒙系统明年见?
下一篇: 微信的聊天记录占比,被网友玩成了新一代 MBTI ?
IT界那些事儿
博客等级 码龄6年 2万+粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值