千万年薪招揽AI大牛!罗福莉加盟小米,将如何改变其大模型战略?
前端
近年来,人工智能(AI)领域发展迅速,其中大模型技术的突破更是引领着新一轮科技浪潮。AI代码生成器作为AI技术的重要应用,也正逐渐改变着软件开发的模式。1月18日,一则重磅消息震惊业界:DeepSeek开源大模型DeepSeek-V2的关键开发者之一罗福莉将加入小米,并可能领导小米大模型团队,年薪高达千万级别。这一举动不仅体现了小米对AI大模型技术的重视,也预示着小米在大模型领域的战略布局将迎来新
会捡垃圾、能干家务,元萝卜“视觉+机械臂”技术扫地机器人首秀
量子位
在2025开年科技盛宴CES(国际消费电子展)上,AI机器人无疑成为全场焦点,而其中来自中国科技企业展示和发布的仿生多关节机械手技术在扫地机器人产品上的应用,更获得了全球媒体的高度关注。通过将视觉感知与机械臂技术相结合,能够自主完成拾取垃圾入桶等任务,不仅展示了家用机器人发展的未来形态,也让大众看到了具身智能机器人融入家庭生活的广阔前景。随着大模型技术和具身智能浪潮汹涌而至,家用机器人正迎来全新发
Python异步: 什么时候使用异步?
后端python
从广义上讲,Asyncio是新的、流行的、讨论广泛的和令人兴奋的。然而,对于何时应该在项目中采用它存在很多困惑。我们什么时候应该在Python中使用asyncio?在Python中使用Asyncio的原因在Python项目中使用asyncio可能有3个原因:使用asyncio以便在您的程序中采用协程。使用asyncio以使用异步编程范例。使用asyncio以使用非阻塞I/O。1.1.使用协程我们可
【华为网络-配置-005】-单臂路由配置
郁闷的猴子哥哥
华为网络学习
要求:1、PC1能够和PC2互相通信一、AR1配置交换机LSW1这里不再进行vlan配置。可参考链接配置1、GE0/0/1:trunk,允许vlan1020通过2、GE0/0/2:access,默认vlan103、GE0/0/3:access,默认vlan20(站内链接:vlan配置方法)创建vlan1020。[AR1]vlanbatch1020进入物理接口的子接口(接口后跟个点表示子接口,子接口
【AIGC半月报】AIGC大模型启元:2024.07(上)
LeeZhao@
AIGC人工智能AIAgent
AIGC大模型启元:2024.07(上)(1)AIGVBench-T2V(文生视频基准测评)(2)Gen-3Alpha(Runway)(3)Step-2、Step-1.5V、Step-1X(阶跃星辰开源大模型)(4)InternVL2.0“书生·万象”(上海人工智能实验室)(5)CodeGeeX4-ALL-9B(智谱AI)(6)TTT(全新LLM架构)(1)AIGVBench-T2V(文生视频基准
大模型管理工具:Ollama
m0_37559973
大模型Ollama大模型管理工具
目录一、Ollama介绍二、Linux安装Ollama2.1一键安装2.2手动安装三、使用Ollama3.1配置模型下载路径3.2运行模型3.3常用命令四、模型管理4.1官方模型库4.2导入自定义模型五、RESTAPI六、WebUI一、Ollama介绍Ollama是一个基于Go语言开发的可以本地运行大模型的开源框架,同时提供RESTAPI管理和使用大模型。二、Linux安装Ollama2.1一键安
大模型GUI系列论文阅读 DAY2续2:《使用指令微调基础模型的多模态网页导航》
feifeikon
论文阅读
摘要自主网页导航的进展一直受到以下因素的阻碍:依赖于数十亿次的探索性交互(通常采用在线强化学习),依赖于特定领域的模型设计,难以利用丰富的跨领域数据进行泛化。在本研究中,我们探讨了基于视觉-语言基础模型的数据驱动离线训练方法,以改进网页代理的性能。我们提出了一种名为WebGUM的指令跟随多模态代理,该代理能够同时观察网页截图和HTML页面,并输出网页导航操作,例如点击和输入文本等。WebGUM通过
AI需要的基础数学知识
大囚长
机器学习大模型人工智能
AI(人工智能)涉及多个数学领域,以下是主要的基础数学知识:1.线性代数矩阵与向量:用于表示数据和模型参数。矩阵乘法:用于神经网络的前向传播。特征值与特征向量:用于降维和主成分分析(PCA)。奇异值分解(SVD):用于数据压缩和降维。2.微积分导数与偏导数:用于优化算法(如梯度下降)。链式法则:用于反向传播算法。积分:在概率和统计中有应用。3.概率与统计概率分布:如高斯分布、伯努利分布等。贝叶斯定
Ollama 完整教程:本地 LLM 管理、WebUI 对话、PythonJava 客户端 API 应用
web13765607643
java
随着大语言模型(LLM)的普及和应用场景的广泛扩展,Ollama提供了一个强大的本地LLM管理工具,支持WebUI对话功能,同时还为Python和Java提供了灵活的客户端API。本教程将详细介绍如何使用Ollama工具,涵盖从本地安装、模型管理、WebUI聊天界面到通过Python和Java进行集成的全方位应用。一、Ollama简介Ollama是一款用于本地运行大语言模型的工具,支持对LLM模型
大模型GUI系列论文阅读 DAY3:《GPT-4V(ision) is a Generalist Web Agent, if Grounded》
feifeikon
论文阅读
摘要近年来,大型多模态模型(LMMs)的发展,特别是GPT-4V(ision)和Gemini,迅速扩展了多模态模型的能力边界,不再局限于传统任务如图像描述和视觉问答。在本研究中,我们探讨了LMMs(如GPT-4V)作为通用网页代理的潜力,这类代理能够根据自然语言指令完成任意网站上的任务。我们提出了SEEACT,这是一种通用网页代理,利用LMMs的视觉理解能力,实现网页上的操作。我们在最新的MIND
Java 封装与继承:面向对象编程的两大支柱
来恩1003
Java从入门到精通java开发语言
Java学习资料Java学习资料Java学习资料引言在Java的面向对象编程(OOP)体系里,封装和继承是极为关键的概念。它们不仅是构建复杂软件系统的基础,也为代码的设计、维护与扩展提供了强大助力。接下来,我们将深入探究这两大支柱的内涵、实现方式及其在实际开发中的价值。封装封装的定义封装是把对象的属性和操作这些属性的方法捆绑在一起,形成一个独立的单元,并尽可能隐藏对象的内部实现细节,只向外部提供必
人工智能与人工计算的发展——孙凝晖院士
一位安分的码农
大语言模型人工智能
人工智能领域近年来正在迎来一场由生成式人工智能大模型引领的爆发式发展。2022年11月30日,OpenAI公司推出一款人工智能对话聊天机器人ChatGPT,其出色的自然语言生成能力引起了全世界范围的广泛关注,2个月突破1亿用户,国内外随即掀起了一场大模型浪潮,Gemini、文心一言、Copilot、LLaMA、SAM、SORA等各种大模型如雨后春笋般涌现,2022年也被誉为大模型元年。当前信息时代
第04章 06 VTK静态数据模型和动态数据模型示例
捕鲸叉
VTK编程学习VTK信息可视化
VTK(VisualizationToolkit)提供了多种数据模型来处理和表示各种类型的数据。其中,静态数据模型和动态数据模型是两种不同的数据表示方式,各自具有不同的特点和适用场合。静态数据模型特点静态数据模型是VTK中默认的数据模型,适用于数据不随时间变化的场景。数据结构稳定:在静态数据模型中,数据结构在创建后不发生改变,或者改变的频率很低。高效处理:由于数据结构稳定,VTK可以优化数据的存储
华为OD机试E卷 - 最大值(Java & Python& JS & C++ & C )
算法大师
最新华为OD机试华为odjavapythonjavascriptc++华为OD机试E卷C语言
最新华为OD机试真题目录:点击查看目录华为OD面试真题精选:点击立即查看题目描述给定一组整数(非负),重排顺序后输出一个最大的整数。示例1输入:[10,9]输出:910说明:输出结果可能非常大,所以你需要返回一个字符串而不是整数。输入描述数字组合输出描述最大的整数示例1输入109输出910说明解题思路题目要求是:给定一组
Objective-C语言的安全开发
萧澄华
包罗万象golang开发语言后端
Objective-C语言的安全开发引言在当今的信息技术时代,软件的安全性已成为开发者必须重视的重点。随着移动互联网的蓬勃发展,iOS作为重要的移动操作系统,受到越来越多开发者的关注。而Objective-C作为iOS应用开发的主要语言之一,其安全性问题也应引起重视。本文将探讨在Objective-C语言中进行安全开发的最佳实践,帮助开发者在应用编程过程中减少安全隐患,提高应用的安全性。一、了解O
java之小六壬算命代码实现——预知自己命运如何!
钮钴禄·爱因斯晨
java学习java开发语言AIGCgithub
我命由我,不由天,是魔是仙,算算就知道了~欢迎来访~个人主页欢迎各位佬们互三哦~互三必回!!#一、小六壬背景介绍1.文化起源小六壬作为中国古代占卜法,文化背景深厚。起源说法不一,流传较广的是唐代李淳风创立“六壬时课”,即小六壬,以区别“大六壬”。也有东汉起源、黄帝时代传说、马前课演化、鬼谷子传承等观点。其发展历程中,唐朝创立后在民间流传,用于日常生活预测;明朝刘基将其用于军事决策;清朝乾隆年间被记
判定树、判定表(软件工程)
匣中鲸
软件工程
1.判定树例题:某航空公司规定,乘客可以免费托运不超过20公斤的行李。当行李重量超过20公斤时,对头等舱的乘客超重部分每公斤收费4元,其它舱的乘客收费6元。对残疾乘客超重部分在舱位等次相同的情况下收费减半。判定树如下:分析清楚条件和结果,用树的形式表示出来。2.判定表判定表分为四个区域:左上方为条件,左下方为工作,右上方为条件判定,右下方为工作判定。(T表示条件成立,F表示不成立)下面是例题的判定
迷宫-广度策略 pta
wzx_Eleven
蓝桥杯算法职场和发展
一个陷入迷宫的老鼠如何找到出口的问题。老鼠希望系统性地尝试所有的路径之后走出迷宫。如果它到达一个死胡同,将原路返回到上一个位置,尝试新的路径。在每个位置上老鼠可以向八个方向运动,顺序是从正东开始按照顺时针进行。无论离出口多远,它总是按照这样的顺序尝试,当到达一个死胡同之后,老鼠将进行“回溯”。迷宫只有一个入口,一个出口,设计程序要求输出迷宫的一条通路。迷宫采用二维存储结构表示,1表示障碍,0表示通
【国产数据库】GBase学习⑨ - 存储引擎
洁癖丶
GBase学习数据库
【国产数据库】GBase学习⑨-存储引擎存储引擎存储方法存储方法的使用分区表表分片分区自动管理索引类型数据压缩事务存储引擎USTORE,表示表支持Inplace-Update存储引擎。(原文更新技术,类似mysql的on-do)ASTORE,表示表支持Append-Only存储引擎。(有表??的问题,↑解决这个问题)存储方法ROW:表示表的数据将以行式存储;行存储适合于OLTP业务,适用于点查询或
SG3525的使用(含原理图及阻容值)
白粥行
嵌入式硬件单片机嵌入式硬件
1引脚说明 相同颜色的引脚表示同一功能或同一类型。 1.1脚、2脚、9脚和16脚。这四个脚主要实现反馈和补偿。 2.3脚、8脚、10脚是功能引脚。 3.4脚、5脚、6脚、7脚决定了输出PWM波形的频率。 4.12脚、13脚和15脚是电源脚和地脚。 5.11脚和14脚是输出脚。 1脚和2脚分别是芯片内部误差放大器的反相输入端和同向输入端。当1脚电压比2脚电压高时,输出的PWM占空比增加
类与对象中的六大默认成员函数万字详解
kk\n
c++开发语言
目录1、类的6个默认成员函数2、构造函数2.1、概念2.2、特性3、析构函数3.1、概念3.2、特性4、拷贝构造函数4.1、概念4.2、特性5、赋值运算符重载5.1、运算符重载5.2、赋值运算符重载5.3、前置++和后置++重载1、类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。默认成员函数:用
AI时代,需要怎样的架构师?腾讯云架构师峰会来了!
架构
引言架构设计对应用有关键性的影响,不仅决定应用的整体品质,还直接影响开发、维护和扩展的难易度。卓越的架构设计不仅能够确保系统的稳定性、高效性和可扩展性,还能大幅提升研发效能,同时显著降低维护成本。在快速变化的技术环境中,架构师们面临业务需求快速迭代、数据量急剧膨胀以及系统复杂性不断提升等挑战。随着云计算、大数据、人工智能等前沿技术的蓬勃发展,一系列创新解决方案如微服务架构、AI大模型、自动化运维工
Alluxio在数据索引和模型分发中的核心价值与应用
人工智能大数据模型索引
在当前的技术环境下,搜索、推荐、广告、大模型、自动驾驶等领域的业务依赖于海量数据的处理和复杂模型的训练。这些任务通常涉及从用户行为数据和社交网络数据中提取大量信息,进行模型训练和推理。这一过程需要强大的数据分发能力,尤其是在多个服务器同时拉取同一份数据时,更是考验基础设施的性能。在这样的背景下,AlluxioEnterpriseAI在数据索引与模型分发/部署方面展示了其独特的优势,特别是在处理海量
npm publish 发布一个 Angular 库的时候报错以及解决方法
在多模态模型的架构上,ChatGPT的绘图能力主要依赖以下几个核心组件:跨模态编码器(Cross-ModalEncoder):跨模态编码器的作用是将文本和图像的特征进行对齐。GPT可以将用户输入的文本描述转换为文本特征表示,然后利用跨模态编码器将这些特征映射到图像特征空间。这种方式确保模型能够理解描述性语言中不同细节是如何与图像特征对应的。
继之前的线程循环加到窗口中运行
3213213333332132
javathreadJFrameJPanel
之前写了有关java线程的循环执行和结束,因为想制作成exe文件,想把执行的效果加到窗口上,所以就结合了JFrame和JPanel写了这个程序,这里直接贴出代码,在窗口上运行的效果下面有附图。
package thread;
import java.awt.Graphics;
import java.text.SimpleDateFormat;
import java.util
linux 常用命令
BlueSkator
linux命令
1.grep
相信这个命令可以说是大家最常用的命令之一了。尤其是查询生产环境的日志,这个命令绝对是必不可少的。
但之前总是习惯于使用 (grep -n 关键字 文件名 )查出关键字以及该关键字所在的行数,然后再用 (sed -n '100,200p' 文件名),去查出该关键字之后的日志内容。
但其实还有更简便的办法,就是用(grep -B n、-A n、-C n 关键
php heredoc原文档和nowdoc语法
dcj3sjt126com
PHPheredocnowdoc
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Current To-Do List</title>
</head>
<body>
<?
overflow的属性
周华华
JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
《我所了解的Java》——总体目录
g21121
java
准备用一年左右时间写一个系列的文章《我所了解的Java》,目录及内容会不断完善及调整。
在编写相关内容时难免出现笔误、代码无法执行、名词理解错误等,请大家及时指出,我会第一时间更正。
&n
[简单]docx4j常用方法小结
53873039oycg
docx
本代码基于docx4j-3.2.0,在office word 2007上测试通过。代码如下:
import java.io.File;
import java.io.FileInputStream;
import ja
Spring配置学习
云端月影
spring配置
首先来看一个标准的Spring配置文件 applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi=&q
Java新手入门的30个基本概念三
aijuans
java新手java 入门
17.Java中的每一个类都是从Object类扩展而来的。 18.object类中的equal和toString方法。 equal用于测试一个对象是否同另一个对象相等。 toString返回一个代表该对象的字符串,几乎每一个类都会重载该方法,以便返回当前状态的正确表示.(toString 方法是一个很重要的方法) 19.通用编程:任何类类型的所有值都可以同object类性的变量来代替。
《2008 IBM Rational 软件开发高峰论坛会议》小记
antonyup_2006
软件测试敏捷开发项目管理IBM活动
我一直想写些总结,用于交流和备忘,然都没提笔,今以一篇参加活动的感受小记开个头,呵呵!
其实参加《2008 IBM Rational 软件开发高峰论坛会议》是9月4号,那天刚好调休.但接着项目颇为忙,所以今天在中秋佳节的假期里整理了下.
参加这次活动是一个朋友给的一个邀请书,才知道有这样的一个活动,虽然现在项目暂时没用到IBM的解决方案,但觉的参与这样一个活动可以拓宽下视野和相关知识.
PL/SQL的过程编程,异常,声明变量,PL/SQL块
百合不是茶
PL/SQL的过程编程异常PL/SQL块声明变量
PL/SQL;
过程;
符号;
变量;
PL/SQL块;
输出;
异常;
PL/SQL 是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言PL/SQL 是对 SQL 的扩展,sql的执行时每次都要写操作
Mockito(三)--完整功能介绍
bijian1013
持续集成mockito单元测试
mockito官网:http://code.google.com/p/mockito/,打开documentation可以看到官方最新的文档资料。
一.使用mockito验证行为
//首先要import Mockito
import static org.mockito.Mockito.*;
//mo
精通Oracle10编程SQL(8)使用复合数据类型
bijian1013
oracle数据库plsql
/*
*使用复合数据类型
*/
--PL/SQL记录
--定义PL/SQL记录
--自定义PL/SQL记录
DECLARE
TYPE emp_record_type IS RECORD(
name emp.ename%TYPE,
salary emp.sal%TYPE,
dno emp.deptno%TYPE
);
emp_
【Linux常用命令一】grep命令
bit1129
Linux常用命令
grep命令格式
grep [option] pattern [file-list]
grep命令用于在指定的文件(一个或者多个,file-list)中查找包含模式串(pattern)的行,[option]用于控制grep命令的查找方式。
pattern可以是普通字符串,也可以是正则表达式,当查找的字符串包含正则表达式字符或者特
mybatis3入门学习笔记
白糖_
sqlibatisqqjdbc配置管理
MyBatis 的前身就是iBatis,是一个数据持久层(ORM)框架。 MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis对JDBC进行了一次很浅的封装。
以前也学过iBatis,因为MyBatis是iBatis的升级版本,最初以为改动应该不大,实际结果是MyBatis对配置文件进行了一些大的改动,使整个框架更加方便人性化。
Linux 命令神器:lsof 入门
ronin47
lsof
lsof是系统管理/安全的尤伯工具。我大多数时候用它来从系统获得与网络连接相关的信息,但那只是这个强大而又鲜为人知的应用的第一步。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lists openfiles)”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。
有趣的是,lsof也是有着最多
java实现两个大数相加,可能存在溢出。
bylijinnan
java实现
import java.math.BigInteger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class BigIntegerAddition {
/**
* 题目:java实现两个大数相加,可能存在溢出。
* 如123456789 + 987654321
Kettle学习资料分享,附大神用Kettle的一套流程完成对整个数据库迁移方法
Kai_Ge
Kettle
Kettle学习资料分享
Kettle 3.2 使用说明书
目录
概述..........................................................................................................................................7
1.Kettle 资源库管
[货币与金融]钢之炼金术士
comsci
金融
自古以来,都有一些人在从事炼金术的工作.........但是很少有成功的
那么随着人类在理论物理和工程物理上面取得的一些突破性进展......
炼金术这个古老
Toast原来也可以多样化
dai_lm
androidtoast
Style 1: 默认
Toast def = Toast.makeText(this, "default", Toast.LENGTH_SHORT);
def.show();
Style 2: 顶部显示
Toast top = Toast.makeText(this, "top", Toast.LENGTH_SHORT);
t
java数据计算的几种解决方法3
datamachine
javahadoopibatisr-languer
4、iBatis
简单敏捷因此强大的数据计算层。和Hibernate不同,它鼓励写SQL,所以学习成本最低。同时它用最小的代价实现了计算脚本和JAVA代码的解耦,只用20%的代价就实现了hibernate 80%的功能,没实现的20%是计算脚本和数据库的解耦。
复杂计算环境是它的弱项,比如:分布式计算、复杂计算、非数据
向网页中插入透明Flash的方法和技巧
dcj3sjt126com
htmlWebFlash
将
Flash 作品插入网页的时候,我们有时候会需要将它设为透明,有时候我们需要在Flash的背面插入一些漂亮的图片,搭配出漂亮的效果……下面我们介绍一些将Flash插入网页中的一些透明的设置技巧。
一、Swf透明、无坐标控制 首先教大家最简单的插入Flash的代码,透明,无坐标控制: 注意wmode="transparent"是控制Flash是否透明
ios UICollectionView的使用
dcj3sjt126com
UICollectionView的使用有两种方法,一种是继承UICollectionViewController,这个Controller会自带一个UICollectionView;另外一种是作为一个视图放在普通的UIViewController里面。
个人更喜欢第二种。下面采用第二种方式简单介绍一下UICollectionView的使用。
1.UIViewController实现委托,代码如
Eos平台java公共逻辑
蕃薯耀
Eos平台java公共逻辑Eos平台java公共逻辑
Eos平台java公共逻辑
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年6月1日 17:20:4
SpringMVC4零配置--Web上下文配置【MvcConfig】
hanqunfeng
springmvc4
与SpringSecurity的配置类似,spring同样为我们提供了一个实现类WebMvcConfigurationSupport和一个注解@EnableWebMvc以帮助我们减少bean的声明。
applicationContext-MvcConfig.xml
<!-- 启用注解,并定义组件查找规则 ,mvc层只负责扫描@Controller -->
<
解决ie和其他浏览器poi下载excel文件名乱码
jackyrong
Excel
使用poi,做传统的excel导出,然后想在浏览器中,让用户选择另存为,保存用户下载的xls文件,这个时候,可能的是在ie下出现乱码(ie,9,10,11),但在firefox,chrome下没乱码,
因此必须综合判断,编写一个工具类:
/**
*
* @Title: pro
挥洒泪水的青春
lampcy
编程生活程序员
2015年2月28日,我辞职了,离开了相处一年的触控,转过身--挥洒掉泪水,毅然来到了兄弟连,背负着许多的不解、质疑——”你一个零基础、脑子又不聪明的人,还敢跨行业,选择Unity3D?“,”真是不自量力••••••“,”真是初生牛犊不怕虎•••••“,••••••我只是淡淡一笑,拎着行李----坐上了通向挥洒泪水的青春之地——兄弟连!
这就是我青春的分割线,不后悔,只会去用泪水浇灌——已经来到
稳增长之中国股市两点意见-----严控做空,建立涨跌停版停牌重组机制
nannan408
对于股市,我们国家的监管还是有点拼的,但始终拼不过飞流直下的恐慌,为什么呢?
笔者首先支持股市的监管。对于股市越管越荡的现象,笔者认为首先是做空力量超过了股市自身的升力,并且对于跌停停牌重组的快速反应还没建立好,上市公司对于股价下跌没有很好的利好支撑。
我们来看美国和香港是怎么应对股灾的。美国是靠禁止重要股票做空,在
动态设置iframe高度(iframe高度自适应)
Rainbow702
JavaScriptiframecontentDocument高度自适应局部刷新
如果需要对画面中的部分区域作局部刷新,大家可能都会想到使用ajax。
但有些情况下,须使用在页面中嵌入一个iframe来作局部刷新。
对于使用iframe的情况,发现有一个问题,就是iframe中的页面的高度可能会很高,但是外面页面并不会被iframe内部页面给撑开,如下面的结构:
<div id="content">
<div id=&quo
用Rapael做图表
tntxia
rap
function drawReport(paper,attr,data){
var width = attr.width;
var height = attr.height;
var max = 0;
&nbs
HTML5 bootstrap2网页兼容(支持IE10以下)
xiaoluode
html5bootstrap
<!DOCTYPE html>
<html>
<head lang="zh-CN">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">