前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >利用Multipass搭建k8s

利用Multipass搭建k8s

作者头像
是小张啊喂
发布于 2022-08-18 09:31:11
发布于 2022-08-18 09:31:11
1.1K00
代码可运行
举报
文章被收录于专栏:软件软件
运行总次数:0
代码可运行

Multipass如何使用可以参考之前的文章multipass使用初体验

搭建部署过程

关闭交换空间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ swapoff -a   

查看交换空间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ free -h

避免开机启动交换空间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vi /etc/fstab
注释掉swap开头的行

关闭防火墙

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ufw disable

安装docker

自行安装

安装Kubernetes必备工具

  • kubeadm
  • kubelet
  • kubectl

安装系统工具

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ apt-get update && apt-get install -y apt-transport-https

安装CPG证书

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg  | apt-key add -

写入软件源

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ apt-get update && apt-get install -y kubeadm kubelet kubectl
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
E: The repository 'https://download.docker.com/linux/ubuntu focal Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

清空 /etc/apt/sources.list.d/docker.list

重新安装,没有遇到直接跳过

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ apt-get update && apt-get install -y kubeadm kubelet kubectl

到此以上三台步骤需要全部执行,很重要

设置时区

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ dpkg-reconfigure tzdata

安装 ntpdate

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ apt-get install ntpdate

设置系统时间与网格同步

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ntpdate edu.ntp.org.cn

参考网址:http://www.ntp.org.cn/pool

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
将系统时间写入硬件时间
$ hwclock --systohc

修改cloud.cfg

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vi /etc/cloud/cloud.cfg
# 修改成 true
preserve_hostname: true

multipass 已经给做好了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ hostnamectl set-hostname master

$ cat >> /etc/hosts<<EOF
192.168.141.110 master
EOF

安装kubernetes

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cd /usr/local/
$ mkdir kubernetes
$ cd kubernetes
$ mkdir cluster
$ cd cluster

$ kubeadm config print init-defaults --kubeconfig ClusterConfiguration > kubeadm.yml

$ vim  kubeadm.yml
apiVersion: kubeadm.k8s.io/v1beta3
bootstrapTokens:
- groups:
  - system:bootstrappers:kubeadm:default-node-token
  token: abcdef.0123456789abcdef
  ttl: 24h0m0s
  usages:
  - signing
  - authentication
kind: InitConfiguration
localAPIEndpoint:
  advertiseAddress: 1.2.3.4
  bindPort: 6443
nodeRegistration:
  criSocket: /var/run/dockershim.sock
  imagePullPolicy: IfNotPresent
  name: node
  taints: null
---
apiServer:
  timeoutForControlPlane: 4m0s
apiVersion: kubeadm.k8s.io/v1beta3
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controllerManager: {}
dns: {}
etcd:
  local:
    dataDir: /var/lib/etcd
imageRepository: k8s.gcr.io
kind: ClusterConfiguration
kubernetesVersion: 1.23.0
networking:
  dnsDomain: cluster.local
  serviceSubnet: 10.96.0.0/12
scheduler: {}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
修改主机ip
advertiseAddress
  
修改镜像地址
k8s.gcr.io 为Google镜像地址
imageRepository:registry.aliyuncs.com/google_containers
注意:
kubernetesVersion 版本
#podSubnet :”10.224.0.0/16

查看需要下载哪些镜像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubeadm config images list --config kubeadm.yml
registry.aliyuscn.com/google_containers/kube-apiserver:v1.23.0
registry.aliyuncs.com/google_containers/kube-controller-manager:v1.23.0
registry.aliyuncs.com/google_containers/kube-scheduler:v1.23.0
registry.aliyuncs.com/google_containers/kube-proxy:v1.23.0
registry.aliyuncs.com/google_containers/pause:3.6
registry.aliyuncs.com/google_containers/etcd:3.5.1-0
registry.aliyuncs.com/google_containers/coredns:v1.8.6

拉取镜像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubeadm config images pull --config kubeadm.yml
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-apiserver:v1.23.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-controller-manager:v1.23.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-scheduler:v1.23.0
[config/images] Pulled registry.aliyuncs.com/google_containers/kube-proxy:v1.23.0
[config/images] Pulled registry.aliyuncs.com/google_containers/pause:3.6
[config/images] Pulled registry.aliyuncs.com/google_containers/etcd:3.5.1-0
[config/images] Pulled registry.aliyuncs.com/google_containers/coredns:v1.8.6
$ docker images

安装主节点

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubeadm init --config=kubeadm.yml --upload-certs | tee kubeadm-init.log

将其添加到/etc/docker/daemon.json,将dockercgroup驱动程序设置为systemd:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "exec-opts": ["native.cgroupdriver=systemd"]
}

此时的daemon.json

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "registry-mirrors": ["https://c8lfvm3n.mirror.aliyuncs.com"],
    "exec-opts": ["native.cgroupdriver=systemd"]
}

重新加载daemon.json,重启docker和kubelet

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
$ sudo systemctl restart kubelet
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[ERROR FileAvailable--etc-kubernetes-manifests-kube-apiserver.yaml]: /etc/kubernetes/manifests/kube-apiserver.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-controller-manager.yaml]: /etc/kubernetes/manifests/kube-controller-manager.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-scheduler.yaml]: /etc/kubernetes/manifests/kube-scheduler.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-etcd.yaml]: /etc/kubernetes/manifests/etcd.yaml already exists
[ERROR Port-10250]: Port 10250 is in use
[ERROR Port-2379]: Port 2379 is in use
[ERROR Port-2380]: Port 2380 is in use
[ERROR DirAvailable--var-lib-etcd]: /var/lib/etcd is not empty

遇到端口占用或者是加入失败,执行这个
$ kubeadm reset

$ kubeadm init --config=kubeadm.yml --upload-certs | tee kubeadm-init.log

Your Kubernetes control-plane has initialized successfully!

To start using your cluster, you need to run the following as a regular user:

  mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config

Alternatively, if you are the root user, you can run:

  export KUBECONFIG=/etc/kubernetes/admin.conf

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join 172.19.47.43:6443 --token abcdef.0123456789abcdef \
        --discovery-token-ca-cert-hash sha256:840bc14e93004e5cbffd30bfc4a7ea7a3be3c78eb02f1a24fb75d482da0d6dc5
        
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config    

$ kubectl get nodes
NAME   STATUS     ROLES                  AGE     VERSION
node   NotReady   control-plane,master   9m32s   v1.23.3

在其余node节点上执行上面的加入集群的命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubeadm join 172.19.47.43:6443 --token abcdef.0123456789abcdef \
        --discovery-token-ca-cert-hash sha256:840bc14e93004e5cbffd30bfc4a7ea7a3be3c78eb02f1a24fb75d482da0d6dc5
        
[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
W0128 11:22:03.577678   86042 utils.go:69] The recommended value for "resolvConf" in "KubeletConfiguration" is: /run/systemd/resolve/resolv.conf; the provided value is: /run/systemd/resolve/resolv.conf
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Starting the kubelet
[kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap...

This node has joined the cluster:
* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.

Run 'kubectl get nodes' on the control-plane to see this node join the cluster

$ kubectl get nodes
kubectl get nodes
NAME    STATUS     ROLES                  AGE     VERSION
node    NotReady   control-plane,master   31m     v1.23.3
node1   NotReady   <none>                 8m28s   v1.23.3
node2   NotReady   <none>                 34s     v1.23.3

到此节点已经全部安装完毕,现在需要准备kubernetes网络

安装网络插件 Calico

什么是Calico?

Calico 是一套开源的网络和网络安全方案,用于容器虚拟机、宿主机之前的网络连接,可以用在kubernetes、OpenShift、DockerEE、OpenStrack等PaaSIaaS平台上。 Calico 还提供网络安全规则的动态实施,使用Calico的简单策略语言,您可以实现对容器,虚拟机工作负载和裸机主机断点之间通信的细粒度控制

官方文档:http://docs.projectcalico.org

https://projectcalico.docs.tigera.io/getting-started/kubernetes/quickstart

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubectl apply -f http://docs.projectcalico.org/v3.8/manifests/calico.yaml
$ kubectl create -f https://docs.projectcalico.org/manifests/tigera-operator.yaml
$ kubectl create -f https://docs.projectcalico.org/manifests/custom-resources.yaml
$ kubectl get pods --all -namespances
$ watch kubectl get pods -n calico-system

Kubernetes 安装第一个容器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubectl get cs

主节点信息
$ kubectl cluster-info

检查Nodes状态
$ kubectl get nodes
NAME    STATUS   ROLES                  AGE    VERSION
node    Ready    control-plane,master   165m   v1.23.3
node1   Ready    <none>                 142m   v1.23.3
node2   Ready    <none>                 134m   v1.23.3

运行第一个容器实例
# 创建一个pod
$ kubectl run nginx --image=nginx --  --port=80
pod/nginx created

$ kubectl get pods
NAME    READY   STATUS    RESTARTS   AGE
nginx   1/1     Running   0          2m13s

# 部署一个nginx
$ kubectl create deployment nginx --image=nginx
pod/nginx created

# 获取部署额容器
$ kubectl get deployment
NAME                     READY   STATUS    RESTARTS   AGE
nginx-85b98978db-nsp5b   1/1     Running   0          56s

# 负载均衡器发布服务
$ kubectl expose deployment nginx --port=80 --type=LoadBalancer
service/nginx exposed

# 获取服务
$ kubectl get service
NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP      10.96.0.1       <none>        443/TCP        3h5m
nginx        LoadBalancer   10.96.168.113   <pending>     80:30948/TCP   13s

# 获取服务详情
$  kubectl describe service nginx
Name:                     nginx
Namespace:                default
Labels:                   app=nginx
Annotations:              <none>
Selector:                 app=nginx
Type:                     LoadBalancer
IP Family Policy:         SingleStack
IP Families:              IPv4
IP:                       10.96.168.113
IPs:                      10.96.168.113
Port:                     <unset>  80/TCP
TargetPort:               80/TCP
NodePort:                 <unset>  30948/TCP
Endpoints:                192.168.104.2:80
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

访问 http://172.19.46.74:30948/ 验证是否成功

# 删除部署部署
$ kubectl delete deployment nginx
deployment.apps "nginx" deleted

@ 删除部署的服务
$ kubectl delete service nginx
service "nginx" deleted

通过资源配置运行容器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubectl create -f
$ kubectl capply
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vim ngxin.yml

# API 版本号
apiVersion: apps/v1
# 类型 如:Pod/ReplicationController/Deployment/Service/Ingress
kind: Deployment
# 元数据
metadata:
  # Kind 的名称
  name: nginx-app
spec:
  # 部署的实例数量
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template: 
    metadata:  
      labels:
        # 容器标签名称,发布 Service 时,selector 需要和这里对应
        app: nginx
    spec:
      # 配置容器,数组类型,说明可以配置多个容器
      containers:
      # 容器名称
      - name: nginx
        # 容器镜像
        image: nginx:1.17
        # 只有镜像不存在时才会进行镜像拉取
        imagePullPolicy: IfNotPresent
        # 暴露端口
        ports:
        # Pod 端口
        - containerPort: 80
        
$ kubectl create -f nginx.yml
deployment.apps/nginx-app created

extensions/v1beta1 API从kubernetes1.6之后以后不再支持,转而使用apps/v1

https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/

spec.selector.matchLabels值和spec.template.metadata.lables值完全匹配

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubectl get pods
NAME                         READY   STATUS    RESTARTS   AGE
nginx-app-5757b68bb6-jqrsg   1/1     Running   0          3m30s
nginx-app-5757b68bb6-w8xvj   1/1     Running   0          3m30s

$ kubectl get deployment
NAME        READY   UP-TO-DATE   AVAILABLE   AGE
nginx-app   2/2     2            2           3m45s

$ kubectl get service
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   8h

没有service

imagePullPolicy拉取策略

  • Always:不管镜像是否存在都会进行一次拉取
  • Never:不管镜像是否存在都不会进行拉取
  • IfNotPresent:只有镜像不存在时才会进行镜像拉取

注意

  • 默认为IfNotPresent,但:latest标签的镜像默认为Always
  • 拉取镜像时Docker会进行校验,如果镜像中的MD5码没有变,则不会拉取镜像
  • 生产环境中应尽量避免使用:latest标签,而开发环境中可以借助:latest标签自动拉取最新的镜像

编辑nginx.yml

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# API 版本号
apiVersion: apps/v1
# 类型 如:Pod/ReplicationController/Deployment/Service/Ingress
kind: Deployment
# 元数据
metadata:
  # Kind 的名称
  name: nginx-app
spec:
  # 部署的实例数量
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template: 
    metadata:  
      labels:
        # 容器标签名称,发布 Service 时,selector 需要和这里对应
        app: nginx
    spec:
      # 配置容器,数组类型,说明可以配置多个容器
      containers:
      # 容器名称
      - name: nginx
        # 容器镜像
        image: nginx:1.17
        # 只有镜像不存在时才会进行镜像拉取
        imagePullPolicy: IfNotPresent
        # 暴露端口
        ports:
        # Pod 端口
        - containerPort: 80
---
# API 版本号
apiVersion: v1
# 类型 如:Pod/ReplicationController/Deployment/Service/Ingress
kind: Service
# 元数据
metadata:
  # Kind 的名称
  name: nginx-http
spec:
  # 暴露端口
  ports:
    # Service 暴露的端口
    - port: 80
      # Pod 上的端口这里是将 Service 暴露的端口转发到 Pod 端口上
      targetPort: 80
  type: LoadBalancer
  # 标签选择器
  selector:
    # 需要和上面部署的 Deployment 标签名对应
    name: nginx
    

$  kubectl delete -f nginx.yml 
deployment.apps "nginx-app" deleted

$ kubectl create -f nginx.yml
deployment.apps/nginx-app created
service/nginx-http created

$ kubectl get service
NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP      10.96.0.1       <none>        443/TCP        9h
nginx-http   LoadBalancer   10.97.228.234   <pending>     80:31641/TCP   114s

$ kubectl delete -f nginx.yml 
deployment.apps "nginx-app" deleted
service "nginx-http" deleted

注:以上搭建都是基于Ubuntu系统搭建,基于服务器联网环境下进行操作

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
「模仿学习」只会套话?解释微调+130亿参数Orca:推理能力打平ChatGPT
自ChatGPT API开放后,大量的研究都选择利用ChatGPT和GPT-4等大型基础模型(LFM)的输出作为训练数据,然后通过模仿学习来提升小模型的能力。
新智元
2023/08/05
2990
「模仿学习」只会套话?解释微调+130亿参数Orca:推理能力打平ChatGPT
2000元训练比肩ChatGPT的开源大模型!GPT-4亲自盖章认证,模型权重均可下载
鱼羊 编辑整理 量子位 | 公众号 QbitAI 2000块,调教出一个达到ChatGPT九成功力的开源大模型。 还是被GPT-4亲自盖章认证实力的那种。 这事儿,一群主要来自加州大学伯克利分校的研究人员做到了。 如图中所见,这个模型名叫Vicuna (小羊驼)。 没错,熟悉的配方,熟悉的味道 。Vicuna同样是基于Meta开源的LLaMA大模型(大羊驼)微调而来。 与此前斯坦福大学基于LLaMA的Alpaca(还是羊驼)不同的是,尽管也薅了ChatGPT羊毛——用了ChatGPT生成的数据,但Vic
量子位
2023/04/06
7820
2000元训练比肩ChatGPT的开源大模型!GPT-4亲自盖章认证,模型权重均可下载
用GPT4进行指令微调
代码:https://instruction-tuning-with-gpt-4.github.io/
西西嘛呦
2023/04/08
1.5K0
用GPT4进行指令微调
「羊驼」们走到哪一步了?研究表明:最好的能达到GPT-4性能的68%
最近,大型语言模型获得了前所未有的关注度。在更迭迅速的情况下,开源模型与闭源模型的发展并驾齐驱,同时呈现百花齐放的态势。
机器之心
2023/08/07
2060
「羊驼」们走到哪一步了?研究表明:最好的能达到GPT-4性能的68%
成本不到100美元!UC伯克利再开源类ChatGPT模型「考拉」:数据量大没有用,高质量才是王道
---- 新智元报道   编辑:LRS 【新智元导读】语言模型动物园加入新成员Koala,更符合真实用户需求! 自从Meta开源LLaMA之后,学术界内各种类ChatGPT模型如雨后春笋般开始发布。 先是斯坦福提出了70亿参数Alpaca,紧接着又是UC伯克利联手CMU、斯坦福、UCSD和MBZUAI发布的130亿参数Vicuna,在超过90%的情况下实现了与ChatGPT和Bard相匹敌的能力。 最近伯克利又发布了一个新模型「考拉Koala」,相比之前使用OpenAI的GPT数据进行指令微调,Koa
新智元
2023/05/09
3440
成本不到100美元!UC伯克利再开源类ChatGPT模型「考拉」:数据量大没有用,高质量才是王道
训练14分钟,超越Alpaca!华人团队发布「飞天羊驼」,基于LLM的数据过滤新范式
近期,指令微调(IFT)已经被作为预训练大语言模型(LLMs)获得指令遵循能力的关键训练阶段。
新智元
2023/08/07
3610
训练14分钟,超越Alpaca!华人团队发布「飞天羊驼」,基于LLM的数据过滤新范式
放弃RLHF吧!无需手动训练模型价值观,达特茅斯学院华人领衔发布全新对齐算法:「AI社会」是最好的老师
训练大型语言模型的最后一步就是「对齐」(alignment),以确保模型的行为符合既定的人类社会价值观。
新智元
2023/08/05
2550
放弃RLHF吧!无需手动训练模型价值观,达特茅斯学院华人领衔发布全新对齐算法:「AI社会」是最好的老师
一份来自Huggingface的大模型进化指南:没有必要完全复现GPT-4
ChatGPT爆火之后,AI界进行了一场“百模大战”。近日,Huggingface的机器学习科学家Nathan Lambert,在一篇博文中对当前入局大模型的力量,从开源视角进行了梳理,并提出了很多深刻的见解。
大数据文摘
2023/08/08
3370
一份来自Huggingface的大模型进化指南:没有必要完全复现GPT-4
GPT-4太烧钱,微软想甩掉OpenAI?曝出Plan B:千块GPU专训「小模型」,开启必应内测
今年,无数场微软AI大会上,CEO纳德拉台前激动地官宣,将GPT-4、DALL·E 3整合到微软「全家桶」。
新智元
2023/09/27
3780
GPT-4太烧钱,微软想甩掉OpenAI?曝出Plan B:千块GPU专训「小模型」,开启必应内测
300美元平替ChatGPT!斯坦福130亿参数「小羊驼」诞生,暴杀「草泥马」
---- 新智元报道   编辑:桃子 好困 【新智元导读】继草泥马(Alpaca)后,斯坦福联手CMU、UC伯克利等机构的学者再次发布了130亿参数模型骆马(Vicuna),仅需300美元就能实现ChatGPT 90%的性能。 继Meta的LLaMA模型开源后,AI界研究人员就在这个模型基础上衍生出许多版本。 前段时间,斯坦福发布了Alpaca,是由Meta的LLaMA 7B微调而来,仅用了52k数据,性能可以与GPT-3.5匹敌。 今天,斯坦福学者联手CMU、UC伯克利等,再次推出一个全新模型——1
新智元
2023/04/01
7810
300美元平替ChatGPT!斯坦福130亿参数「小羊驼」诞生,暴杀「草泥马」
IBM 入局:开源自对齐方法训练「单峰骆驼」,比GPT4更值得信赖
机器之心报道 编辑:Panda 用最少的人类监督,从零实现原则驱动的大语言模型的自对齐,IBM 研究院淦创团队在这方面取得了新的成果。他们的结果表明,仅仅通过不到300行的人工标注,他们的方法(即SELF-ALIGN)便能让一个65B的LLaMA基础语言模型在TruthfulQA上超越GPT-4。 大语言模型(LLM)除了性能强大之外,可靠且符合道德伦理也至关重要。为了确保大语言模型实现这些目标,需要它们的输出与人类的意图保持一致。我们通常把这个任务称为对齐(alignment)。 为了满足这一需求,Cha
机器之心
2023/05/09
6580
IBM 入局:开源自对齐方法训练「单峰骆驼」,比GPT4更值得信赖
用ChatGPT训练羊驼:「白泽」开源,轻松构建专属模型,可在线试玩
机器之心报道 编辑:泽南 高质量数据,由 ChatGPT「自我博弈」生成。 ChatGPT 出现之后,科技公司正在争相追赶,学界也在不断寻找开源且轻量的解决方案。 此前,人们基于 Meta 的 LLaMA 构建了一系列参数较少的新模型,只用几十亿参数就可以获得接近 GPT-3.5 的效果。然而从 ChatGPT 和 GPT-4 的发展中我们可以看到,高质量的标注数据至关重要,OpenAI 对数据和标注工作下了很大力气。 对于学界来说,很难在短期做同样的事。最近,有研究者尝试通过让 ChatGPT 自我对话生
机器之心
2023/04/06
6730
用ChatGPT训练羊驼:「白泽」开源,轻松构建专属模型,可在线试玩
IBM加入战局!任意大模型低成本变ChatGPT方法开源,个别任务超GPT-4
衡宇 发自 凹非寺 量子位 | 公众号 QbitAI 科幻中有机器人三原则,IBM说不够,要十六原则 。 最新大模型研究工作中,以十六原则为基础,IBM让AI自己完成对齐流程。 全程只需300行(或更少)人类标注数据,就把基础语言模型变成ChatGPT式的AI助手。 更重要的是,整个方法完全开源,也就是说,任何人都能按此方法,低成本把基础语言模型变成类ChatGPT模型。 以开源羊驼LLaMA为基础模型,IBM训练出Dromedary(单峰骆驼),在TruthfulQA数据集上甚至取得超越GPT-4的成绩
量子位
2023/05/12
3040
IBM加入战局!任意大模型低成本变ChatGPT方法开源,个别任务超GPT-4
微软教小模型推理进阶版:Orca 2性能媲美10倍参数模型,已开源
如你我所见,像 GPT-4、PaLM 等前沿语言模型已经展现了出色的推理能力,例如回答复杂问题、生成解释,甚至解决需要多步推理的问题,这些能力曾被认为是 AI 无法达到的。这样的能力在较小的语言模型中并不明显,因此现在的挑战就是如何利用对大型语言模型不断增长的知识,进而提升较小模型的能力。
机器之心
2023/12/05
3800
微软教小模型推理进阶版:Orca 2性能媲美10倍参数模型,已开源
开源大型语言模型(llm)总结
大型语言模型(LLM)是人工智能领域中的一个重要研究方向,在ChatGPT之后,它经历了快速的发展。这些发展主要涉及以下几个方面:
deephub
2023/08/30
5080
开源大型语言模型(llm)总结
重磅内幕:OpenAI即将开源新模型!开源社区的繁荣,全靠大厂「施舍」?
---- 新智元报道   编辑:Aeneas 好困 【新智元导读】OpenAI再次开源,是科技大厂的「施舍」还是开源社区的「救赎」? 就在刚刚,根据The Information的最新爆料,OpenAI即将发布一款全新的开源大语言模型。 虽然目前还不清楚,OpenAI是不是打算利用即将开源的模型,来抢占Vicuna或其他开源模型的市场份额。 但几乎可以肯定的是,新模型的能力大概率无法与GPT-4甚至GPT-3.5相竞争。 毕竟,270亿美元的估值也决定了,OpenAI最先进的模型将会被用于商业目的,
新智元
2023/05/22
1970
重磅内幕:OpenAI即将开源新模型!开源社区的繁荣,全靠大厂「施舍」?
低成本开源聊天机器人Vicuna:可达到ChatGPT/Bard 90%以上水平
出品 | OSC开源社区(ID:oschina2013) 大型语言模型 (LLM) 的快速发展彻底改变了聊天机器人系统,从而实现了前所未有的智能水平,譬如 OpenAI 的 ChatGPT。但 ChatGPT 的训练和架构细节仍不清楚,阻碍了该领域的研究和开源创新。受 Meta LLaMA 和 Stanford Alpaca 项目的启发,来自加州大学伯克利分校、CMU、斯坦福大学和加州大学圣地亚哥分校的成员,共同推出了一个 Vicuna-13B 开源聊天机器人,由增强的数据集和易于使用、可扩展的基础设施支持
程序猿DD
2023/04/11
7690
低成本开源聊天机器人Vicuna:可达到ChatGPT/Bard 90%以上水平
300美元复刻ChatGPT九成功力,GPT-4亲自监考,130亿参数开源模型「小羊驼」来了
机器之心报道 机器之心编辑部 OpenAI 的强大模型们,被开源社区复刻得差不多了。 过去几个月,OpenAI 的 ChatGPT 彻底改变了聊天机器人领域的格局,也成为其他研究赶超的对象。 以 Meta 开源 LLaMA(直译为「大羊驼」)系列模型为起点,斯坦福大学等机构的研究人员先后在其上进行「二创」,开源了基于 LLaMA 的 Alpaca(羊驼)、Alpaca-Lora、Luotuo(骆驼)等轻量级类 ChatGPT 模型,大大降低了这类模型的研究、应用门槛,训练、推理成本一再降低。 由于「二创」过
机器之心
2023/04/06
4560
300美元复刻ChatGPT九成功力,GPT-4亲自监考,130亿参数开源模型「小羊驼」来了
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?
过去几个月里,Meta的LLaMA引领了一场语言模型的开源狂潮,并且随着大众对语言模型训练研究的深入,很多问题也都有了答案。
新智元
2023/08/05
1.3K0
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?
超越GPT-4!华人团队爆火InstructBLIP抢跑看图聊天,开源项目横扫多项SOTA
---- 新智元报道   编辑:桃子 拉燕 【新智元导读】碾压GPT-4识图能力的多模态生成模型来了。华人团队最新提出的InstructBLIP在多项任务上实现SOTA。 GPT-4看图聊天还没上线,就已经被超越了。 近来,华人团队开源了多模态基础模型InstructBLIP,是从BLIP2模型微调而来的模型。 BLIP家族中增加了一个新成员:InstructBLIP 据介绍,InstructBLIP模型更擅长「看」、「推理」和「说」,即能够对复杂图像进行理解、推理、描述,还支持多轮对话等。 比如
新智元
2023/05/15
5690
超越GPT-4!华人团队爆火InstructBLIP抢跑看图聊天,开源项目横扫多项SOTA
推荐阅读
「模仿学习」只会套话?解释微调+130亿参数Orca:推理能力打平ChatGPT
2990
2000元训练比肩ChatGPT的开源大模型!GPT-4亲自盖章认证,模型权重均可下载
7820
用GPT4进行指令微调
1.5K0
「羊驼」们走到哪一步了?研究表明:最好的能达到GPT-4性能的68%
2060
成本不到100美元!UC伯克利再开源类ChatGPT模型「考拉」:数据量大没有用,高质量才是王道
3440
训练14分钟,超越Alpaca!华人团队发布「飞天羊驼」,基于LLM的数据过滤新范式
3610
放弃RLHF吧!无需手动训练模型价值观,达特茅斯学院华人领衔发布全新对齐算法:「AI社会」是最好的老师
2550
一份来自Huggingface的大模型进化指南:没有必要完全复现GPT-4
3370
GPT-4太烧钱,微软想甩掉OpenAI?曝出Plan B:千块GPU专训「小模型」,开启必应内测
3780
300美元平替ChatGPT!斯坦福130亿参数「小羊驼」诞生,暴杀「草泥马」
7810
IBM 入局:开源自对齐方法训练「单峰骆驼」,比GPT4更值得信赖
6580
用ChatGPT训练羊驼:「白泽」开源,轻松构建专属模型,可在线试玩
6730
IBM加入战局!任意大模型低成本变ChatGPT方法开源,个别任务超GPT-4
3040
微软教小模型推理进阶版:Orca 2性能媲美10倍参数模型,已开源
3800
开源大型语言模型(llm)总结
5080
重磅内幕:OpenAI即将开源新模型!开源社区的繁荣,全靠大厂「施舍」?
1970
低成本开源聊天机器人Vicuna:可达到ChatGPT/Bard 90%以上水平
7690
300美元复刻ChatGPT九成功力,GPT-4亲自监考,130亿参数开源模型「小羊驼」来了
4560
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?
1.3K0
超越GPT-4!华人团队爆火InstructBLIP抢跑看图聊天,开源项目横扫多项SOTA
5690
相关推荐
「模仿学习」只会套话?解释微调+130亿参数Orca:推理能力打平ChatGPT
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档