-
咨询项目调研完,客户提出一个问题:为什么不开发一个台风预测模型? 它既用于地质领域。既可以保护人身安全,也可以避免台风带来的山体滑坡自然灾害发生,减少经济损失。 在地质一体化平台上要开发这个台风预测模型,有一些共同的特点:首先要有一个厚重的云底座,底座上有强大的平台能力和数据存储能力,云数据库;除此之外,计算能力都非常强大,依赖于强大的计算硬件平台提供的算力,台风模型才可以迅速计算出台风相似路径的预测结果。 经过前期业界的了解,我们在项目中初步画出了云平台和台风模型二者之间的架构轮廓:上层应用是应用平台,调用中台的台风模型,模型层之下是坚实的平台能力,包括云平台和数据平台,AI工程平台;平台依托在下层的硬件平台之上,包括强大的计算平台、海量存储能力、高速网络和牢靠的安全能力。 依据这个轮廓,我们通过调研获悉,院内有地质云平台,但版本比较旧,3.0版本,很多高阶服务还不支持;还有院内各业务部门和上下级机关单位多年存储的业务数据,我们惊奇的发现这些数据非常宝贵,直接可以用来训练模型,存储量达15T之多。众所周知,大模型训练至少需要10000份数据,地质数据分为两类:调查文献资料和勘探地形地貌的GIS数据或向量数据。 调研之后就是着手开始写架构规划了,下回咱继续聊。 欢迎点赞原文和关注公众号“科技江河”,如果喜欢,欢迎打赏,感谢。
-
生成不同入场角度的二维航线1、Python实现给定一组经纬度坐标 ,生成不同入场角度的面状航线。2、对多边形区域进行顺时针旋转x度从而生成不同入场角度的航线,其中0度为正北方向。3、获取多边形区域的最小正外接矩形并进行扩框(生成的航点要在原来不规则多边形的基础上外扩),使用SAHI进行切分,切分区域大小为无人机拍摄画面大小,设置航线的重叠度。4、对生成的航点顺时针旋转360-x度得到航点经纬度坐标并返回各个航点之间的距离。算法详情可以运行Notebook:cid:link_0
-
进入活动链接:https://pangu.huaweicloud.com/gallery/asset-detail.html?id=c1cf0774-59ce-44fc-a4a8-8fcf026d2fec1、切换规格为64GB的限时免费规格2、点击执行3、然后执行:4、继续执行5、切换python版本,这个很重要!!!!,6、安装和启动运行7、最后生成了一个链接:Running on public URL: https://0dfb450b322dd89a40.gradio.live8、点击该URL,就可以开始使用了角色:man 活动: play basketball,选择风格类型使用效果1,这个是“线条艺术”这个是“油画”效果这个是“日本动画”风格该模型部署起来很方便,模型很强大,伙伴们可以多多探索,多少挖掘
-
比如我想将.pt/.onnx的模型转换为rknn格式的模型,每次都需要在notebook中运行写好的代码,其中涉及到某些自定义算子的转换,如果我想分享给别人用且不希望开源代码,不知道在AI Gallery创建好AI应用是否支持模型自定义转换和导出的功能,类似于创建模型推理的服务,直接将写好的代码和镜像打包成AI应用,这样上传模型就可以模型的实现一键转换,进而部署到不同设备上使用,即创建好的AI应用可以不仅限于内容生成,也可以上传模型并下载转换好的模型文件:
-
为什么从我的AI Gallery中下载之前上传数据集到自己的OBS桶中提示没有权限操作,换成其他的桶也是一样,显示下载完成但是桶路径下没有对应的文件?
-
要开发一个无人机,需要掌握哪些技能
-
MindSpore2.3.0+Ascend910A,镜像为swr.cn-north-4.myhuaweicloud.com/atelier/mindspore_2_3_ascend:mindspore_2.3.0-cann_8.0.rc2-py_3.9-euler_2.10.7-aarch64-snt9b-20240727152329-0f2c29a,运行测试样例报错RuntimeError: Call aclnnSub failed, detail:EZ9999: Inner Error!kernel没装全导致二进制算子操作报错。/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for <class 'numpy.float64'> type is zero. setattr(self, word, getattr(machar, word).flat[0])/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for <class 'numpy.float64'> type is zero. return self._float_to_str(self.smallest_subnormal)/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for <class 'numpy.float32'> type is zero. setattr(self, word, getattr(machar, word).flat[0])/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for <class 'numpy.float32'> type is zero. return self._float_to_str(self.smallest_subnormal)[ERROR] RUNTIME_FRAMEWORK(3361,ffff93dd11e0,python):2024-10-31-20:00:24.542.957 [mindspore/ccsrc/runtime/graph_scheduler/actor/actor_common.cc:327] WaitRuntimePipelineFinish] Wait runtime pipeline finish and an error occurred: Call aclnnSub failed, detail:EZ9999: Inner Error!EZ9999: 2024-10-31-20:00:24.531.850 Parse dynamic kernel config fail.[THREAD:3973] TraceBack (most recent call last): AclOpKernelInit failed opType[THREAD:3973] Op Sub does not has any binary.[THREAD:3973] Kernel Run failed. opType: 3, Sub[THREAD:3973] launch failed for Sub, errno:561000.[THREAD:3973]----------------------------------------------------- C++ Call Stack: (For framework developers)----------------------------------------------------mindspore/ccsrc/plugin/device/ascend/kernel/opapi/aclnn/sub_aclnn_kernel.h:36 RunOpTraceback (most recent call last): File "/home/ma-user/work/Test/test.py", line 36, in <module> out = net(x, y) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/nn/cell.py", line 703, in __call__ out = self.compile_and_run(*args, **kwargs) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/nn/cell.py", line 1074, in compile_and_run return _cell_graph_executor(self, *new_args, phase=self.phase) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/common/api.py", line 1860, in __call__ return self.run(obj, *args, phase=phase) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/common/api.py", line 1911, in run return self._exec_pip(obj, *args, phase=phase_real) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/common/api.py", line 185, in wrapper results = fn(*arg, **kwargs) File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.9/site-packages/mindspore/common/api.py", line 1891, in _exec_pip return self._graph_executor(args, phase)RuntimeError: Call aclnnSub failed, detail:EZ9999: Inner Error!EZ9999: 2024-10-31-20:00:24.531.850 Parse dynamic kernel config fail.[THREAD:3973] TraceBack (most recent call last): AclOpKernelInit failed opType[THREAD:3973] Op Sub does not has any binary.[THREAD:3973] Kernel Run failed. opType: 3, Sub[THREAD:3973] launch failed for Sub, errno:561000.[THREAD:3973]----------------------------------------------------- C++ Call Stack: (For framework developers)----------------------------------------------------mindspore/ccsrc/plugin/device/ascend/kernel/opapi/aclnn/sub_aclnn_kernel.h:36 RunOp
-
2024“数据要素×”大赛全国总决赛在北京中关村国际创新中心举行颁奖仪式,云南白药集团“中医药行业雷公大模型”斩获全国总决赛二等奖。国家数据局党委书记、局长刘烈宏,北京市委常委、常务副市长夏林茂等领导出席颁奖仪式。“数据要素×”大赛主题为“数据赋能,乘数而上”,是由国家数据局、北京市人民政府、中央网信办、工业和信息化部以及12个领域国家相关部门主办,是国内首个聚焦数据要素开发应用的全国性大赛。大赛共设置了工业制造、医疗健康、金融服务、科技创新、绿色低碳、城市治理等12个赛道,全国1.9万多支队伍参赛,全国总决赛660多支队伍共同角逐。旨在通过遴选出一批应用成效显著、创新性强、引领效应好的解决方案,推动相关技术产业发展。华为云与云南白药集团在2024年2月签署战略合作协议之后,在大模型、智慧差旅及灯塔工厂工业物联网建设等多个领域展开了全面合作,充分整合数据、技术、平台和算力资源。借助华为云盘古大模型的领先优势,构建了新的智能生产力体系,全面提升了云南白药集团的数字化能力。在双方项目合作的前期阶段,成果显著,不仅带动了销售增长,还节省了中药材的退换货成本;同时,解决了多源异构数据的应用难题,构建了高质量的数据集,推动了中医药行业的数字化转型与发展。盘古大模型,赋能智能生产;云端数据,驱动创新腾飞。华为云与云南白药集团本次联创的“中医药行业雷公大模型”,联合权威数据提供方,利用华为云先进的人工智能和大模型技术,致力于提升中医药行业全产业链的效率和质量。本项目充分响应国家推动传统中医药与现代科学相结合、相促进的政策,旨在实现中医药全行业、全产业链、全流程数据的有效贯通。通过构建中医行业高质量数据集,项目不仅推动了人工智能与中医药全产业链数据要素的深度融合,还积极参与国家数据局高质量数据整理与交易工作,充分发挥中医药数据的行业价值。华为云的技术支持为中医药行业的数字化转型与高效发展提供了强大动能,展现了其在推动产业创新中的重要作用。此次获奖不仅高度认可了云南白药集团在中医药现代化探索中的突出成就,也肯定了其利用大数据、人工智能等前沿科技赋能传统中医药行业的创新实践,展示了在中医药领域数字化转型中的深远影响和领导力。华为云将继续与云南白药集团紧密合作,进一步探索和应用大模型、人工智能等前沿技术,持续为云南省数字经济的发展注入新的活力。转自华为云公众号
-
Atlas 200I A2用于EP侧,安装了驱动,可以通过串口进入Atlas 200I A2的系统,但是每次重启Atlas 200I A2的系统,我在里面写的脚本就会被还原
-
大模型的浪潮让AI开发和应用有了全新的面貌,大家有什么想法可以分享
-
一张图来看目前AI Gallery的定位。个人感觉,它应该是在越来越找准自己的定位的状态中了....
-
AI Gallery中的免费GPU算力最多同时支持多少人在线?
-
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simpleWARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 503 Service Unavailable'))': /simple/gradio/WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 503 Service Unavailable'))': /simple/gradio/WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 503 Service Unavailable'))': /simple/gradio/WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 503 Service Unavailable'))': /simple/gradio/WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 503 Service Unavailable'))': /simple/gradio/ERROR: Could not find a version that satisfies the requirement gradio==4.16.0ERROR: No matching distribution found for gradio==4.16.0
-
/home/ma-user/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/gradio_client/documentation.py:103: UserWarning: Could not get documentation group for <class 'gradio.mix.Parallel'>: No known documentation group for module 'gradio.mix' warnings.warn(f"Could not get documentation group for {cls}: {exc}")/home/ma-user/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/gradio_client/documentation.py:103: UserWarning: Could not get documentation group for <class 'gradio.mix.Series'>: No known documentation group for module 'gradio.mix' warnings.warn(f"Could not get documentation group for {cls}: {exc}")Running on local URL: http://127.0.0.1:7860IMPORTANT: You are using gradio version 3.39.0, however version 4.29.0 is available, please upgrade.--------Running on public URL: https://4bf68ac779bd610ca7.gradio.liveThis share link expires in 72 hours. For free permanent hosting and GPU upgrades, run `gradio deploy` from Terminal to deploy to Spaces (https://huggingface.co/spaces)---------------------------------------------------------------------------TimeoutError Traceback (most recent call last)File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connectionpool.py:537, in HTTPConnectionPool._make_request(self, conn, method, url, body, headers, retries, timeout, chunked, response_conn, preload_content, decode_content, enforce_content_length) 536 try:--> 537 response = conn.getresponse() 538 except (BaseSSLError, OSError) as e:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connection.py:466, in HTTPConnection.getresponse(self) 465 # Get the response from http.client.HTTPConnection--> 466 httplib_response = super().getresponse() 468 try:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/http/client.py:1374, in HTTPConnection.getresponse(self) 1373 try:-> 1374 response.begin() 1375 except ConnectionError:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/http/client.py:318, in HTTPResponse.begin(self) 317 while True:--> 318 version, status, reason = self._read_status() 319 if status != CONTINUE:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/http/client.py:279, in HTTPResponse._read_status(self) 278 def _read_status(self):--> 279 line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") 280 if len(line) > _MAXLINE:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/socket.py:705, in SocketIO.readinto(self, b) 704 try:--> 705 return self._sock.recv_into(b) 706 except timeout:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/ssl.py:1274, in SSLSocket.recv_into(self, buffer, nbytes, flags) 1271 raise ValueError( 1272 "non-zero flags not allowed in calls to recv_into() on %s" % 1273 self.__class__)-> 1274 return self.read(nbytes, buffer) 1275 else:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/ssl.py:1130, in SSLSocket.read(self, len, buffer) 1129 if buffer is not None:-> 1130 return self._sslobj.read(len, buffer) 1131 else:TimeoutError: The read operation timed outThe above exception was the direct cause of the following exception:ReadTimeoutError Traceback (most recent call last)File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/adapters.py:589, in HTTPAdapter.send(self, request, stream, timeout, verify, cert, proxies) 588 try:--> 589 resp = conn.urlopen( 590 method=request.method, 591 url=url, 592 body=request.body, 593 headers=request.headers, 594 redirect=False, 595 assert_same_host=False, 596 preload_content=False, 597 decode_content=False, 598 retries=self.max_retries, 599 timeout=timeout, 600 chunked=chunked, 601 ) 603 except (ProtocolError, OSError) as err:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connectionpool.py:847, in HTTPConnectionPool.urlopen(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, preload_content, decode_content, **response_kw) 845 new_e = ProtocolError("Connection aborted.", new_e)--> 847 retries = retries.increment( 848 method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2] 849 ) 850 retries.sleep()File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/util/retry.py:470, in Retry.increment(self, method, url, response, error, _pool, _stacktrace) 469 if read is False or method is None or not self._is_method_retryable(method):--> 470 raise reraise(type(error), error, _stacktrace) 471 elif read is not None:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/util/util.py:39, in reraise(tp, value, tb) 38 raise value.with_traceback(tb)---> 39 raise value 40 finally:File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connectionpool.py:793, in HTTPConnectionPool.urlopen(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, preload_content, decode_content, **response_kw) 792 # Make the request on the HTTPConnection object--> 793 response = self._make_request( 794 conn, 795 method, 796 url, 797 timeout=timeout_obj, 798 body=body, 799 headers=headers, 800 chunked=chunked, 801 retries=retries, 802 response_conn=response_conn, 803 preload_content=preload_content, 804 decode_content=decode_content, 805 **response_kw, 806 ) 808 # Everything went great!File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connectionpool.py:539, in HTTPConnectionPool._make_request(self, conn, method, url, body, headers, retries, timeout, chunked, response_conn, preload_content, decode_content, enforce_content_length) 538 except (BaseSSLError, OSError) as e:--> 539 self._raise_timeout(err=e, url=url, timeout_value=read_timeout) 540 raiseFile ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/urllib3/connectionpool.py:370, in HTTPConnectionPool._raise_timeout(self, err, url, timeout_value) 369 if isinstance(err, SocketTimeout):--> 370 raise ReadTimeoutError( 371 self, url, f"Read timed out. (read timeout={timeout_value})" 372 ) from err 374 # See the above comment about EAGAIN in Python 3.ReadTimeoutError: HTTPSConnectionPool(host='4bf68ac779bd610ca7.gradio.live', port=443): Read timed out. (read timeout=3)During handling of the above exception, another exception occurred:ReadTimeout Traceback (most recent call last)Cell In[4], line 29 25 submitBtn.click(reset_user_input, [], [user_input]) 27 emptyBtn.click(reset_state, outputs=[chatbot, history, past_key_values], show_progress=True)---> 29 demo.queue().launch(share=True, inbrowser=True)File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/gradio/blocks.py:1974, in Blocks.launch(self, inline, inbrowser, share, debug, enable_queue, max_threads, auth, auth_message, prevent_thread_lock, show_error, server_name, server_port, show_tips, height, width, encrypt, favicon_path, ssl_keyfile, ssl_certfile, ssl_keyfile_password, ssl_verify, quiet, show_api, file_directories, allowed_paths, blocked_paths, root_path, _frontend, app_kwargs) 1971 from IPython.display import HTML, Javascript, display # type: ignore 1973 if self.share and self.share_url:-> 1974 while not networking.url_ok(self.share_url): 1975 time.sleep(0.25) 1976 display( 1977 HTML( 1978 f'<div><iframe src="{self.share_url}" width="{self.width}" height="{self.height}" allow="autoplay; camera; microphone; clipboard-read; clipboard-write;" frameborder="0" allowfullscreen></iframe></div>' 1979 ) 1980 )File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/gradio/networking.py:202, in url_ok(url) 200 with warnings.catch_warnings(): 201 warnings.filterwarnings("ignore")--> 202 r = requests.head(url, timeout=3, verify=False) 203 if r.status_code in (200, 401, 302): # 401 or 302 if auth is set 204 return TrueFile ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/api.py:100, in head(url, **kwargs) 89 r"""Sends a HEAD request. 90 91 :param url: URL for the new :class:`Request` object. (...) 96 :rtype: requests.Response 97 """ 99 kwargs.setdefault("allow_redirects", False)--> 100 return request("head", url, **kwargs)File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/api.py:59, in request(method, url, **kwargs) 55 # By using the 'with' statement we are sure the session is closed, thus we 56 # avoid leaving sockets open which can trigger a ResourceWarning in some 57 # cases, and look like a memory leak in others. 58 with sessions.Session() as session:---> 59 return session.request(method=method, url=url, **kwargs)File ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/sessions.py:589, in Session.request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json) 584 send_kwargs = { 585 "timeout": timeout, 586 "allow_redirects": allow_redirects, 587 } 588 send_kwargs.update(settings)--> 589 resp = self.send(prep, **send_kwargs) 591 return respFile ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/sessions.py:703, in Session.send(self, request, **kwargs) 700 start = preferred_clock() 702 # Send the request--> 703 r = adapter.send(request, **kwargs) 705 # Total elapsed time of the request (approximately) 706 elapsed = preferred_clock() - startFile ~/anaconda3/envs/python-3.10.10/lib/python3.10/site-packages/requests/adapters.py:635, in HTTPAdapter.send(self, request, stream, timeout, verify, cert, proxies) 633 raise SSLError(e, request=request) 634 elif isinstance(e, ReadTimeoutError):--> 635 raise ReadTimeout(e, request=request) 636 elif isinstance(e, _InvalidHeader): 637 raise InvalidHeader(e, request=request)ReadTimeout: HTTPSConnectionPool(host='4bf68ac779bd610ca7.gradio.live', port=443): Read timed out. (read timeout=3)
-
用yolov5训练完自己的数据集后,ai应用创建好,最后在开始部署上线时报错File "/home/mind/model/customize_service.py", line 2, inimport cv2File "/home/modelarts/.local/lib/python3.7/site-packages/cv2/__init__.py", line 5, infrom .cv2 import *ImportError: libGL.so.1: cannot open shared object file: No such file or directory[2024-05-27 13:25:47 +0000] [44] [ERROR] Exception in worker processTraceback (most recent call last):File "/home/mind/model_service/model_service.py", line 167, in load_servicespec.loader.exec_module(module)File "", line 728, in exec_moduleFile "", line 219, in _call_with_frames_removedFile "/home/mind/model/customize_service.py", line 2, inimport cv2File "/home/modelarts/.local/lib/python3.7/site-packages/cv2/__init__.py", line 5, infrom .cv2 import *ImportError: libGL.so.1: cannot open shared object file: No such file or directory好像是导入opencv的问题
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签