在商汤的1024天
5220
2022-09-20 10:39    文章来源:AI小男孩
文章摘要:2022 年的 4 月 25 号,是我在商汤的第 1024 天,对于程序员来说,这是个很吉利的数字了。

2022 年的 4 月 25 号,是我在商汤的第 1024 天,对于程序员来说,这是个很吉利的数字了。

640-1.jpeg

不过,看到这篇文章的你应该也猜到,我在之后就离职了。本来应该趁着离职的时间总结一下我这一段职业生涯的经历,但后面我几乎是一刻不停地入职新公司,开始适应新的同事、新的公司文化、新的工具链和办公模式,再加上拖延症发作,就一直拖到了现在。

现在过渡期已过,是时候整理整理我在商汤的点滴了,也算为第一段职业生涯画个句号。

初次结缘

18 年春的时候,我还在读研一,当时正在为暑期实习而烦恼。当年的我用现在的标准来看,菜得不行,简历上没有比赛、没有论文,只有自己的毕设课题项目,而且由于导师比较放养,我的毕设从选题到复现 baseline 都是自己在弄,按现在的标准也是虚得一匹。

我当时找人帮忙内推了腾讯、阿里这些大厂,但无一例外都挂了,腾讯连简历都没过。当时有点挫败,心情低落,我的导师估计是察觉到我的问题,就说可以帮我内推商汤。他有个同学,也是学校的教授,当时在商汤兼任研发总监。于是,我的简历被直接投给了我后来的 leader (大家叫她琼姐),面试过程也比较顺利,之后就去实习了。

我的导师当时心思并不在学术上,还带走了实验室几乎所有同学,去忙他的「副业」了。这也间接导致我的研究生生涯混得并不好。但冲他帮我内推这次,我就已经很感激他了。

这几年我自己也面试过很多同学,也遇到很多简历跟我一样「普通」的同学。其实面试中发现,很多同学还是有很多闪光点的,只是简历写得不好。

在商汤实习的时候,我发现其实自己能力并不差。实习期间做的几个项目,虽然最终没有达到预期目标,但由于我的代码能力比较强,所以琼姐对我比较满意,甚至有点惊讶 (确实之前的简历比较差),后来就顺利转正了。所以说,人如果在自己的小圈子里面待太久,就容易对自己的认知产生偏差。

不过,如果能重新读研究生的话,在导师放养的情况下,我要么研一甚至大四的时候就出去找相关的实习了,要么找几个靠谱的同学打比赛,要么就看看能否去同校那些比较强的实验室混经验,而不是一个人死磕研究课题。作为一个没有科研经验的人,一个人死磕是效率最低的办法。

在商汤搞计算摄影

我所在的组主要做计算摄影相关的产品。计算摄影从相机诞生就开始出现了,目的是为了帮助相机拍出更好看的图片,我在之前的一篇文章也提到过。

早期的计算摄影功能有限,主要受限于算力,以及算法本身实用性也不够强。普通人大概只能在美图秀秀这类软件里感受到一点计算摄影的威力,专业摄影师则可以在 PS 中体会一些更强大的算法。这些都是一些后处理的模式,侧面说明当时用相机或者手机拍出来的东西并不好看。

最近这些年,由于 AI 的突破,计算摄影这门学科焕发新春,那种勃勃生机、万物竞发的境界,犹在眼前。业内的朋友应该知道,计算摄影所依赖的 AI 算法是众多 AI 应用中算力要求较高、对实时性要求也较高的应用之一。这些年,在众多研究员和工程师的努力下,现在手机上也能跑这类 AI 算法了。君不见现在每款手机发布,拍照几乎成为头部亮点,这个能拍出月亮陨石坑,那个能拍出超级夜景。总之,这几年也是内卷的厉害。

作为和手机产商紧密合作的算法供应商,我们主要是给甲方提供算法软件,并集成到他们的拍照系统中。

我从实习到最后离职,在商汤基本只做成了一个项目——人像修复。这个东西现在已经烂大街了,不仅论文层出不穷,工业界也出现了很多产品,包括之前一个叫「你我当年」的小程序,以及腾讯出的老照片修复等更惊艳的产品,甚至各大手机厂都把高清人像作为一个卖点。

但在 2018 年的时候,这个技术还很不成熟,我实习的时候也是对当时一篇看起来效果还行的论文进行复现,虽然最后复现出来了,但计算量以及效果上都无法满足商业化的要求。于是,后面两年多的时间都花在算法优化上了,从数据集采集优化、对模型的各种千锤百炼、模型结构搜索和压缩量化等等。中间对接手机产商的时候,被竞争对手击败过几次,也因为疫情以及制裁等原因遇到一些困难,但最后总归把它推出去了 (主要功劳在组内的「丹神」超哥,我在模型训练和量化上做了一点微小的贡献)。

大家如果买了荣耀或者 oppo 新出的手机,如果又碰巧使用了人像拍照的话,那十有八九会用到我们做的算法。至少写这篇文章的时间点是这样的。

除此以外,也陆陆续续搞过其他应用,比如计算机美学,夜景去噪,以及去运动模糊等等,但都没有落地成功。

我收获了什么

技术

在知乎上,提起商汤,大家普遍会觉得它的人工智能技术很强 (起码发论文很强),但商业模式很迷。作为一枚基层员工,这里只谈技术,不谈商业。

就技术而言,商汤起家的港中文实验室,放在全世界也是第一梯队。CEO 徐立早前也是顶尖的科学家,发了很多优雅且非常实用的论文 (很多都是收录到 OpenCV 的算法),我目前最喜欢的文章,仍然是徐总很多年前发的 L0 Smooth。有时候也会感叹,如果徐总没有选择经商的话,应该也会成为像 Kaiming He 一样的存在。当然,他选择了另一条赛道,看到的风景就不一样了,创造的价值也更大一些。

我在商汤主要做计算摄影,此前在学校的时候也了解过一些相关的图像处理工作,比如去噪、超分、去雾之类,但在计算摄影里面,除了算法外,还需要了解整个相机成像的原理,尤其是 ISP 的基本原理,这里面其实还涉及到很多物理方面的知识。在这两年多的工作中,恶补了不少相关的知识。其实,比起「炼丹」这种凭感觉的工作,我对计算摄影的兴趣更大一些,这里面隐藏着很多数学上的美妙。

当然啦,作为各种炼丹术师聚集地,我也从各路大神身上学到了很多炼丹的奇技淫巧。从画质修复网络的魔改,到 GAN 的各种五花八门的训练技巧,再到层出不穷的数据增强思路。总之,大家在各大主流公众号上见到的各种 sota、逆天、震惊的论文,都可能成为炼丹炉的座上宾。成则核心技术,败则再来一篇。不过呢,这几年被这些公众号轮流轰炸,很多人大抵是审美疲劳了,放眼望去都是各种 sota,但真正能打的有几个?除了术之外,真正的道又是什么,很遗憾这几年我炼废无数模型,却始终悟不出来。

除此之外,由于手机的算力很有限,而计算摄影方面的 AI 计算量又极大,因此常常需要对模型做量化。当时组里没人懂量化,我就被委以重任搞定这个事情。然后我就迎来入职后迷茫煎熬的一段时间。身边没人会,论文看不懂,入门的文章一篇没有。我翻遍各大公司的技术文档,上面明明白白写着怎么用,从哪开始,到哪结束。可我是个爱钻牛角尖的人,不懂原理,就感觉命门被扼在别人手里。而且当时琼姐让我用公司自研的量化库,她很有远见的预料到,画质模型的量化,要求会比较苛刻,可能需要在量化训练上用一些 trick,而公司的量化训练库,知根知底,还可以更好地适配推理引擎。这下好了,论文还没读懂,就要开始看代码了。而且这个量化框架的文档非常简洁,完美体现了 talk is cheap,show me the code。好在写代码的都是自己人,而且有了代码,可以更有针对性地提问。更好在写代码的大佬人美心善,耐心地帮我解答了很多问题,成功把我拉入量化这个坑。也由于自己入门时走过不少弯路,后来才决定在公众号中写一些量化的教程。

坦白讲,我这些年在商汤并没有学到太多技术上的方法论,和其他同事倒是会经常讨论一些新的论文或者炼丹技巧,但也多是经验之谈。由于深度学习目前还是一门实验科学,很多时候稀里糊涂地就做出了一些成果,但更多时候则是莫名其妙又不 work 了。这几年也看过无数文章。但很多其实也是一些实验发现,背后的原理解释不清。普通的文章会交代清楚怎么做,稍好的文章会讲清楚为什么要这么做,再好的文章会告诉读者是什么促使我去想到这么做,这样的文章就已经能给人醍醐灌顶的感觉了,更好的文章会告诉读者,掌握什么原理或者方法论,这一类问题都有解决的可能,这种往往是领域宗师十年磨一剑的结果。

不过,很多理论体系很完备的科学研究,也是经过大量实验积累后才总结出来的规律。正如牛顿在前人大量的实验观察中发现万有引力,法拉第数十年实验发现电磁感应。虽然现在很多人对深度学习的调参炼丹嗤之以鼻,但也许我们离最后的理论只差临门一脚。但凡大事情,总需要大决心和大定力。

产品

除了技术之外,另一点感触是:做好一个产品真心难,尤其是 toB 的产品。

就拿之前做的人像修复产品来说吧。首先是 AI 模型的效果要达标,计算量要达标,在手机上运行时间要达标,这些就不说了,属于基操。

但还有大量的时间精力会用在跟模型算法无关的地方。

比如,客户要求能提供 NPU/APU/VPU/DSP 等平台的模型。于是,你需要针对这些平台,找对应的芯片产商的开发工具来转模型,而且这几个平台通常都只能跑定点化的模型,因此又需要对模型进行量化。紧接着,这几个平台的量化算法可能有差异,有些量化算子的实现又不一样,因此,针对不同的芯片平台,需要专门对模型的一些算子做一些定制化修改,而这又可能导致效果上会有一些损失。。。如此一套流程下来,真是朝如青丝暮成秃。

再比如,客户有些低端机型的 sensor 奇差无比,在暗光下拍出来的人脸几乎人畜不分。这种情况下,AI 模型根本不可能修复好。因此,需要设计一个画质过滤模块,过滤掉这些模型不能处理的人脸。熟悉 low level 任务的同学可能知道,有一门技术叫做图像质量评估 (IQA),就是希望设计一个算法可以对图像的画质进行打分或者分类。(与之对应的,还有一门技术叫计算机美学,这个是希望计算机可以对图像的美感进行评分,目前属于坑人的领域)。画质过滤,本质上是一种 IQA 技术。虽然它是对画质的客观质量进行打分,但问题的定义本身仍然比较模糊。有些图客户认为是应该处理的,但模型处理之后其实 artifact 比较重,这种情况就需要过滤掉,同时要给客户一个「模型会持续升级」的预期。而在模型进步到可以处理这类人像后,就不能把这种画质的人脸过滤了,因此,这对过滤算法的设计要求就比较高了,要提供灵活的参数可以调整过滤粒度。另外,由于计算能力受限,这块只能采用传统算法高效实现。这么下来,一个在学术上看起来不难解决的问题,在产品落地中就变成了一个既要又要还要的问题,并不好做。

640-1.png    

一张人畜不分、AI也爱莫能助的人脸

还有一些小概率出现的问题。比如有一次,一位微博网友爆出,某手机在拍兵马俑的时候,给兵马俑上妆了,这眉毛很明显是我们的算法生成的。为了防止舆情扩大,客户立马通知我们要用最快的速度解决。其实这个问题跟人像修复已经没有关系,很明显是人脸识别出了问题。但我们算法中用的人脸识别算法是其他部门开发的,人家也不可能因为这个问题帮你升级算法 (一来这个问题并不常见,二来解决了也不算他们业绩)。于是我们只能另辟蹊径。此时算法已经上线了,计算耗时、内存资源都不能再增加了,换句话说,得用最小的计算开销解决问题。这个问题出现的时候,我刚好离职了,听说,是一位大佬同事五一加了两天班解决的。其实,遇到这种问题是很恼人的,比较好的方法当然是跨部门合作,谁的算法模块出现问题,就由谁负责解决,这样整个算法方案鲁棒性也更强。但现实中又很难办到,因此只能用一些 trick 暂时解决。

640.png这个兵马俑的效果,其实我觉得还行。。

此外,AI 模型在持续升级的过程中,会遇到一些理论瓶颈。比如,一开始设计算法的时候,为了方便客户接入他们的拍照系统,我们把接口设计在整个 ISP 流程的最后。这在产品设计上是一个很强的优势,因为在算法效果差距不是很大的情况下,算法接入的成本越低,更容易击败对手。但随着产品持续迭代,这种方式就遇到了性能瓶颈。熟悉 ISP 的同学应该清楚,ISP 涉及一套复杂的图像处理流程,很多信息在这个流程中会逐渐丢失,这对于人像画质的修复来说并不是好事,而且噪声模型也会变得很复杂。虽然前期开发中,用了很多训练的技巧让模型的泛化性取得了很大进步,但在 90 分向 100 分迈进的时候,整个算法框架的瓶颈就出现了。这个时候就需要设计一套全新的算法方案,和客户手机中的 ISP 做深度绑定。这当然是一件很有挑战性的工作,光是如何跟客户的其他拍照算法进行调整就费老大劲了。这还没完,客户不同机型的手机,一般是不同团队在负责,每个团队由于产品的调性问题,采用的算法方案又不一样,因此,这就要求我们能设计一个泛化性最高的方案,可以用最小的改动应用到绝大部分机型中。同时,要保证新方案取得的效果相比之前的方案有显著提升,不然人家费老大劲跟你磨,结果年底了一点 kpi 都没有,以后就不想跟你合作了。

因此,套用销售老大的一句话,每拿下一个客户,哪怕一款机型,都是虎口拔牙的事情。

当然啦,以上这些都是产品设计的问题,它们能够出现,证明你的产品已经有市场了,所以客户才会不断给你提出新的需求。这都是摘果子的路上需要做的除草除虫的工作。更多时候,是你做的东西,别人觉得很酷,但不好意思,暂时没发现或者还没达到商用价值,或者还不在我们的产品规划中。甚至可能遇到客户产品规划发生调整,结果你做的东西就只能先搁置了 (有些直接胎死腹中)。这都是 toB 这门生意中存在的各种问题。

不过,琼姐在某一次会上说过的一句话,我觉得很有道理。她大概的意思就是说,公司很多成熟的产品,刚起步的时候也没什么人看好,甚至研发人员自己都觉得是 shit。但只要认定是对的事情,就应该坚持做下去。很多产品 (包括算法) 也是在不断尝试、不断踩坑的过程中逐步构建起了自己的护城河。等到量变引起质变的时候,就可能产生伟大的产品。这个时候,别人看到你做成了,即使他们想模仿你的路径走下去,也必须把你踩过的坑填完才行,而你已经走在他们前面了 (当然你也得持续不断往前走,不然别人的体量优势,可能追赶得也很快)。

以前在学校的时候,觉得技术更强的产品,自然更好。后来进入公司了,知道技术不是产品的全部,用户体验、售后服务、算法定制的灵活度等等也是重要的维度。等到之后经历的事情多了,发现公司技术体系的完备性、团队的坚韧性,甚至你在客户眼中有多大面子 (你的招牌和影响力),都可能是产品的核心竞争力。至于你认为的核心技术的优势,其实可能对手也做得七七八八,甚至不分伯仲了,但客户就是选你。

管理

话说在商汤最幸运的一点,可能是碰上一个好 leader。作为我职业生涯的第一个老板,琼姐给我树立了一个优秀 leader 该有的模样。我始终认为,一个优秀的管理者,应该是对外能顶住压力,对内保护好下属。

印象最深刻的一次,是 20 年那个春节,由于疫情叠加制裁的影响,产品往外推的过程中遇到很大问题,技术上还很不完备,而且大家突然被封在家里,沟通协作一开始还很不顺畅。这种时候,大老板为了让各个团队不松懈,会亲自督战。我们每周会线上开两到三次会,每次开会的时候,大老板 (王晓刚) 也会加入。那会离最终和对手 PK 竞标的时间只剩半个多月了,琼姐在会上报告了目前的现状,结果被晓刚老师一顿批,措辞之严厉,大家都默默不敢说话,一时间空气都凝结了。最后貌似能感觉到琼姐吞了口唾沫后,再阐述后面的产品和技术规划要如何调整。之后琼姐约了我们几个兄弟讨论这半个月的分工。我以为可能压力要来到我们这边了,有点紧张。但后来线上讨论的时候,她还是用很温柔、很商量式的口吻跟我们对齐了接下来的工作。那会我在负责模型量化这块,由于刚接触不久,因此总体还比较陌生,但琼姐也只是让我按照之前的节奏进行就可以,需要的话可能要额外帮其他同学分担一些工作。瞬间心中悬着的石头落下来了,感觉工作更有激情了。其实晓刚老师线下交流和蔼可亲,跟其他小老板们也谈笑风生,不知道这是不是为了让我们这些员工更加努力,在互相打配合。

共事三年来,我从没有见过琼姐发怒,不过情况多么紧急,就算产品经理和程序员要打起来了,她也是语气平和地让大家冷静,理清问题,解决问题。这可能跟她疫情之后一直被困在香港有关 (她 base 在香港),开会都是线上开,可能也感觉不到线下的气氛。作为一个初入职场的愣头青,有好几次临近项目发版,我都手忙脚乱出了不少问题,有一次刚好是琼姐在休假,她也只是平和地跟我了解情况,并建议我理清主次问题。

当然,我们组的同学背景都比较好,职业素养也比较高,如果换作是责任心不够的下属,她可能会是其他态度了。

她也是一个思维很敏捷的人,擅长抓住主要矛盾。每次开会,不管是讨论论文也好,还是讨论产品亦或是技术规划,她都能抓住问题的关键。有些时候是她不了解背景,或者介绍问题的人表述不清晰,但她都能快速抓住主要问题,这对她、对困在问题中的人而言,都能很好地理清思路。这项技能不知道跟天赋是不是有关系,但她博士期间受到的一些系统训练可能多少有些促进作用。

对外能顶住压力,对内保护好下属,短短几个字,但确实很难做到。你要能向上管理,知道你上面的人的目标是什么,你的极限能给到哪里。同时要能向下管理,既要给下属一定的压力,同时,作为管理者,你不可能什么技术细节都懂,又要想办法引导他们发挥主观能动性,能自己解决问题。这意味着你一定是一个情商很高的人,知道怎么扛住压力、化解压力,还能给别人输出鸡汤。同时技术上要有一定的视野,思路要很清晰,不能让下属觉得你太拉胯,要有一定的权威性,给下属一个信任你的理由。这实在是门学问。

为什么离开

离开商汤最主要的原因在于,我觉得做的事情天花板太低了,而且受制于人。

公司做的算法主要服务于各大手机产商,但这几年的手机出货量大家应该清楚,比较惨淡,趋势肯定是往下走的。大家都在极度内卷中厮杀,所以很多时候有一种投入和收获越来越失衡的感觉。手机厂的日子不好过,那算法提供商的日子肯定只会更难。

而且,手机厂商也有自己的算法团队。从某种意义上来说,他们既是裁判也是运动员。在算法方案竞标的时候,如果第三方提供商的性能没有比自家团队超出很多的话,人家当然会先选择自家的孩子。现在拍照被作为手机的核心卖点,他们肯定也更希望把核心算法掌握在自己手里。

640.jpeg

xiaomi12s,一部披着手机外皮的相机

这不行业里流传着「定金套 demo」的传说:即手机厂商用一点定金拿了算法提供商的方案做尝试,过一段时间说效果不行,暂时不用了,等再过一段时间,人家内部的算法团队就做出了类似的效果。这虽然没有什么因果关系,但你也说不准是不是有什么猫腻在里面。

还有一种情况,就是几家第三方提供商和人家内部的算法团队,共同竞标一个项目,这个过程可能会持续一段时间,经过几次 pk 来决定胜负。这里有一个对第三方提供商来说不是很公平的现象,就是每轮迭代 pk 的时候,客户那边会拿到每家算法的结果进行对比,作为第三方提供商,我们当然不知道其他家的进展,但客户自己的算法团队,是完全能了解到各家的情况的。而且,就如原子弹的核心机密就是原子弹是可以造出来的,算法有时候也类似,如果你发现别人可以做出来,那你做出来也只是时间问题了。毕竟技术上的大方向都是一样的,无非就是堆资源,把没踩的坑踩完而已。所以,有时候我们会发现,可能一开始我们有明显的优势,但随着几轮迭代和 pk,对手也越来越强。最后客户说大家效果都差不多,但考虑到算法集成的沟通成本,决定用自家团队的算法。我们将这种现象戏称为「陪太子读书」。虽然人家不一定受你的效果启发,但就算有,你也没办法。

另外,在 AI ISP 逐渐成为趋势的今天,单纯做软件算法,最终肯定干不过软硬协同的方案。传统的画质算法方案,虽然已经把算法集成到 ISP 中了,但软件和硬件在设计上并没有做深度融合,大部分情况下还是软件算法来适配硬件,在算法设计上的灵活度是比较差的。所以,很多产商开始自研 AI ISP 芯片,这其实是技术发展到一定瓶颈后很自然的选择。而作为算法提供商,我觉得在这种背景下,和手机厂商的合作会很别扭。一方面,你需要深入了解产商的芯片架构,才能更好地设计算法,但产商又不希望把核心机密泄漏给你。在这种情况下,软件算法不再是一个插件式开发的软件,可能是和硬件本身深度融合的方案,那产商肯定会花力气投入到自研算法中。

(老板们其实也知道这一点,所以很早以前就和索尼合作,希望把算法固化到 sensor 端,从源头控制整个产业,而且也开始在自研 AI ISP 芯片了)

其实之前做的升级版的人像修复算法,本质上已经接近 AI ISP 的范畴了。从这个角度看,也难怪很难和客户一起推进下去。这是一个更加庞大复杂的方案,不是简单把算法挪到 ISP 中间就可以的。在实际设计中经常遇到很多别扭的地方,比如 ISP 中间只开放了一些特定的节点给你接入算法,但这几个节点可能并不适合作为算法的输入输出,但你又没有其他办法去接入了。如果 ISP 芯片在设计之初就考虑到和软件算法的融合,整体方案会更好做一些。

说了这么多,可以整理为两点:手机摄影的赛道整体不太行,技术的发展趋势对软件算法提供商不利。而从我自己的角度找理由的话,在同一个产品上「磨」了近三年后,我感觉思维也开始疲倦了,每次看到客户发来的各种人像,都有点心累的感觉。在离职前的最后几个月,会感觉做事情没有热情,有时候忙了一天,都不知道在忙什么,以及不知道做这件事的意义在何处了。到这个时候,我觉得得换个环境,让自己换个心情,重新上路了。

最后

总之,作为第一段工作经历,商汤给我提供了足够高的起点。起码在看机会的时候,市场认可度还是比较高的,当然前提你不能浑浑噩噩混吃等死。

新公司是一家做自动驾驶芯片的公司,懂得都懂。今年并不是一个跳槽的好时节,除了自动驾驶和芯片外,其他方向非常惨淡,所以我基本没看大厂的机会 (也没啥机会)。今后一段时间应该会深耕自动驾驶方向了,运气好的话也可能一条路走到黑。

说起自动驾驶,我 18 年读研的时候还选了一门相关的课程,当时还有文远的工程师跑来传道顺便招人。我当时问了他一个问题:汽车上跑深度神经网络怎么解决功耗的问题?毕竟当时实验室放在我脚边的服务器很烫脚,我感觉汽车总不能扛着几个微波炉上路吧。然后那位工程师说,他们那个阶段只考虑效果,还没考虑功耗这些。我当时就觉得这玩意一段时间内是没戏的。随着这几个月在新公司掌握的一些资料,功耗这个问题目前靠芯片和算法优化已经缓解很多了。剩下的问题就是一些常被人诟病的老大难问题了,比如深度学习算法的不可解释性、算法的泛化能力 (可以归结为前一个问题) 等。虽然特斯拉这些大厂用数据挖掘和数据闭环的方式,希望从工程上把算法的稳定性硬怼上去,但一直被爆出的安全问题还是让大家惴惴不安。

关于自动驾驶如何才能大规模落地,我心里没底。但比较看好汽车这条产业链,比起手机产业,这个产业链足够大。而且,自动驾驶本身不够成熟,也说明这个方向还有足够的空间可以卷。说起来,我本以为我一个没有感知算法经验的人,应该很难跨进这一行,结果面试才发现,其实 ISP 画质算法很多行业都需要,毕竟计算机视觉算法的前提是,你要先能接收到视觉信号,而这个过程目前还离不开传感器和 ISP。

以后可能会分享一些新公司的见闻,以及对 AI 芯片以及自动驾驶算法的一些感想。

感谢大家一直以来的陪伴!

(对了,公众号名又改回「AI小男孩」了,我觉得还是这个名字比较符合我的调性^o^)



版权声明:

凡本网内容请注明来源:T媒体(http://www.cniteyes.com)”的所有原创作品,版权均属于易信视界(北京)信息科技有限公司所有,未经本网书面授权,不得转载、摘编或以其它方式使用上述作品。

本网书面授权使用作品的,应在授权范围内使用,并按双方协议注明作品来源。违反上述声明者,易信视界(北京)信息科技有限公司将追究其相关法律责任。

标签:

评论