【腾讯云 HAI域探秘】基于高性能应用服务器HAI部署的 ChatGLM2-6B模型,我开发了AI办公助手,公司行政小姐姐用了都说好!

news2024/11/27 10:44:07

目录

前言

  一、腾讯云HAI介绍:

1、即插即用 · 轻松上手

 2、横向对比 · 青出于蓝

3、多种高性能应用部署场景

二、腾讯云HAI一键部署并使用ChatGLM2-6B快速实现开发者所需的相关API服务

1、登录 高性能应用服务 HAI 控制台

2、点击 新建 选择 AI模型,输入实例名称

3、等待创建完成后,查看相关状态(预计等待3-8分钟,等待时间不计费)

4、创建完成,查看相关状态

5、查看配置详情

6、(关键环节)使用 JupyterLab 启动 ChatGLM2-6B 提供的API 服务

三、AI办公助手代码开发

1、选择腾讯云的云开发编辑器Cloud Stuio,详细使用教程可以看博主另一篇文章

2、选择模板,快速生成项目

3、项目代码开发

 (1)项目生成后,集成并下载开发所需的依赖

(2)配置一下接口的代理,避免本地开发浏览器访问跨域(前端开发都懂)

(3)开发项目界面,这里详细的开发过程就不赘述~

(4)开发业务及交互逻辑

(5)开发完成后在浏览器中查看最终实现效果

四、常见问题

五、总结


前言

        常常听起公司的行政小姐姐反馈AI要是能帮助她们在部门员工考勤记录整理;各种活动文案编写;报表核算和员工培训这些方面提供便利就好了!正好博主最近在研究和学习AIGC,首先,我对新技术非常感兴趣,对于GPT模型也非常好奇。其次,企业越来越需要复合型人才,而GPT能够帮助我快速学习和成长。因此,我决定尝试借助GPT模型的能力来先开发一个简单的AI办公助手Demo试用,来帮助企业运营提升效率,正向反馈后,持续迭代,深度集成到公司内部的办公平台,打磨出一个完整的产品!

      当然了,AIGC拥有这么多的能力,那么我们才能独立部署体验呢?首先我们需要部署这些这些大模型,大模型处理的数据量巨大无比,整个处理过程可以分为训练(train)、微调(fine-tune)和推理(inference)。从算力消耗上来说,是训练>微调>推理,训练要比推理的算力消耗高至少3个数量级以上,训练和微调大型语言模型对于硬件资源的要求非常高,对于只是短期使用,自己购买硬件资源价格昂贵显然是不划算的。 

       最近腾讯云推出了一款“高性能应用服务HAI”,它基于腾讯云GPU云服务器底层算力,提供即插即用的高性能云服务。以应用为中心,匹配GPU云算力资源,助力中小企业及开发者快速部署LLM、AI作画、数据科学等高性能应用,部署起来非常省心!!!博主这次也是亲自体验了一番,从0到1使用腾讯云高性能应用服务 HAI 部署了ChatGLM2-6B 模型来辅助我开发【AI办公助手】,其中的智能生成SQL,智能生成Excel,英文助手等功能都是基于ChatGLM2-6B大模型的API来实现,工作效率提升很多,不到一天时间就完成了全部开发,这里也给大家先看看博主开发的作品成果:

场景1:智能生成sql,自主查询考勤记录及统计请假天数

 场景2:智能生成excel,自主计算统计复杂报表

 场景3:英文助手,辅助英文文案撰写  那么这次应用开发的亲身体验下来,博主还用到了腾讯云编辑器Cloud Studio云来做开发,HAI和Cloud Studio有何优势和便捷之处,以及我是如何来进行【AI办公助手】这款应用的开发呢,且听博主接下来为你娓娓道来~~~


  一、腾讯云HAI介绍:

         腾讯云高性能应用服务 HAI 是为开发者量身打造的澎湃算力平台。无需复杂配置,便可享受即开即用的GPU云服务体验。在 HAI 中,根据应用智能匹配并推选出最适合的GPU算力资源,以确保您在数据科学、LLM、AI作画等高性能应用中获得最佳性价比。

1、即插即用 · 轻松上手

基于腾讯云GPU云服务器底层算力,提供即插即用的高性能云服务。

 2、横向对比 · 青出于蓝

大幅降低GPU云服务器使用门槛,多角度优化产品使用体验,开箱即用

3、多种高性能应用部署场景

 腾讯云HAI功能如此强大,开箱即可上手, 接着博主就手把手教大家怎么快速搭建并使用AI模型 ChatGLM2-6B~~~    


二、腾讯云HAI一键部署并使用ChatGLM2-6B快速实现开发者所需的相关API服务

1、登录 高性能应用服务 HAI 控制台

2、点击 新建 选择 AI模型,输入实例名称

温馨提示:如果没有进阶型的算力方案(2.41元/小时),建议您购买基础型的算力方案(0.88元/小时),并在创建成功后参考实验过程中关闭 、重新开启 webui 功能的命令,以提高服务器的性能。

3、等待创建完成后,查看相关状态(预计等待3-8分钟,等待时间不计费)

4、创建完成,查看相关状态

5、查看配置详情

​​

6、(关键环节)使用 JupyterLab 启动 ChatGLM2-6B 提供的API 服务

(1)在 算力管理 页面,选择进入 jupyter_lab 页面

(2)选择 终端命令

温馨提示:如果您购买使用的是 基础型算力服务器(0.88元/小时) 请您在开始实验前输入以下关闭 webui 功能的命令,提高服务器的性能,以便后续实验能快速正常进行:

apt-get update && apt-get install sudo
sudo apt-get update  
sudo apt-get install psmisc
sudo fuser -k 6889/tcp #执行这条命令将关闭 HAI提供的 chatglm2_gradio webui功能

备注:如果需要重新开启 webui 服务执行以下命令

 python /root/ChatGLM2-6B/web_demo.py --listen --port 6889

(3)输入命令 ,用于开启 API 服务,到这一步咱们的大模型的调用api就正式开启了,接下来再把服务器的端口设置一下就可以正式调用API了:

cd ./ChatGLM2-6B
python api.py

(4) 回到算力管理界面—新增服务器端口规则

a、选择 编辑规则

b、选择 入站规则 中的添加规则

c、添加入站规则 (来源: 0.0.0.0/0 协议端口: TCP:8000)

(5)服务器端口规则设置完成后,咱们随手写一波python小脚本调用一下api看看能不能调的通

import requests

# 定义测试数据,以及FastAPI服务器的地址和端口
server_url = "http://0.0.0.0:8000"  # 请确保将地址和端口更改为您的API服务器的实际地址和端口
test_data = {
    "prompt": "'你好,发热了怎么办?'",
    "history": [],
    "max_length": 50,
    "top_p": 0.7,
    "temperature": 0.95
}

# 发送HTTP POST请求
response = requests.post(server_url, json=test_data)

# 处理响应
if response.status_code == 200:
    result = response.json()
    print("Response:", result["response"])
    print("History:", result["history"])
    print("Status:", result["status"])
    print("Time:", result["time"])
else:
    print("Failed to get a valid response. Status code:", response.status_code)

ok当看到控制台响应成功并打印了我们需要的数据之后,这里已经大功告成,可以调用服务器的公网IP+8000端口来访问大模型的API接口来开发我们的应用啦~~~


三、AI办公助手代码开发

1、选择腾讯云的云开发编辑器Cloud Stuio,详细使用教程可以看博主另一篇文章

【腾讯云Cloud Studio实战训练营】使用Cloud Studio迅捷开发一个3D家具个性化定制应用-CSDN博客文章浏览阅读1.1w次,点赞44次,收藏40次。Cloud Studio是一个基于云端的开发环境,它可以让程序员在云端进行编写和运行程序。相比传统的本地IDE,Cloud Studio具有以下优势。首先,由于Cloud Studio是基于云端的,只要保证网络连接正常,即使使用配置较低的电脑也可以编写和运行各种吃内存的程序,因为它使用的是云端的资源,与本地电脑的性能无关。其次,Cloud Studio提供了在线预览功能,可以方便地查看代码的效果和运行结果,无需频繁地切换窗口或启动本地服务器;集成AI助手,直接在 Cloud Studio 里唤起 AI代码助https://blog.csdn.net/m0_61243965/article/details/131997078

2、选择模板,快速生成项目

3、项目代码开发

 (1)项目生成后,集成并下载开发所需的依赖

(2)配置一下接口的代理,避免本地开发浏览器访问跨域(前端开发都懂)

(3)开发项目界面,这里详细的开发过程就不赘述~
  <div class="home">
    <div class="header">
      <div class="title">AI办公助手</div>
      <div class="menu">
        <div
          class="item"
          v-for="(item, index) in menuList"
          :key="index"
          :class="[activeMenu == item.title ? 'active' : '']"
          @click="selectMenu(item)"
        >
          {{ item.title }}
        </div>
      </div>
    </div>
    <div class="container">
      <div class="example">
        <div class="title">示例</div>
        <div
          class="item"
          @click="setInputValue(item.tip)"
          v-for="(item, index) in activeExample"
          :key="index"
        >
          {{ item.tip }}
        </div>
      </div>
      <div class="content">
        <div class="inputWrap">
          <div class="title">输入</div>
          <el-input
            v-model="inputText"
            :rows="20"
            type="textarea"
            placeholder="请输入"
          />
        </div>
        <div class="outputWrap">
          <div class="title">输出</div>
          <el-input
            v-model="outputText"
            :rows="20"
            type="textarea"
            :disabled="true"
            placeholder="智能生成结果展示"
          />
        </div>
      </div>
      <div class="footBtn">
        <el-button @click="clearAll">清空</el-button>
        <el-button type="primary" @click="chatPost">生成</el-button>
      </div>
    </div>
  </div>
(4)开发业务及交互逻辑
<script setup>
import { ref, onMounted, reactive, toRefs } from "vue";
import axios from "axios";
let menuList = ref([
  { id: 1, title: "智能生成SQL", key: "sql" },
  {
    id: 2,
    title: "智能生成Excel公式",
    key: "excel",
  },
  {
    id: 3,
    title: "英文助手",
    key: "English",
  },
]);
let exampleList = ref({
  sql: [
    {
      tip: "帮我生成查询本月A部门全部人员的考勤记录",
    },
  ],
  excel: [
    {
      tip: "帮我生成根据工时和单价计算项目费用的excel公式",
    },
  ],
  English: [
    {
      tip: "帮我生成一篇英文的活动邀请函,要求比较正式",
    },
  ],
});
let inputText = ref("");
let outputText = ref("");
let activeMenu = ref("智能生成SQL");
let activeExample = ref(null);
onMounted(() => {
  activeExample.value = exampleList.value["sql"];
  console.log(activeExample.value);
});
//选择导航
const selectMenu = (item) => {
  activeMenu.value = item.title;
  activeExample.value = exampleList.value[item.key];
};
//设置输入
const setInputValue = (tip) => {
  inputText.value = tip;
};
//重置
const clearAll = () => {
  // activeMenu.value='智能生成SQL';
  // activeExample.value='sql';
  inputText.value = "";
  outputText.value = "";
};
//gpt对话
const chatPost = () => {
  let test_data = {
    prompt: inputText.value,
    history: [],
    max_length: 5000,
    top_p: 0.7,
    temperature: 0.95,
  };
  axios
    .post("/api", test_data)
    .then(function (response) {
      console.log(response);
      outputText.value = response.data.response;
    })
    .catch(function (error) {
      console.log(error);
    });
};
</script>
(5)开发完成后在浏览器中查看最终实现效果

到这里博主借助高性能应用服务HAI快速开发的一款"AI办公助手"应用,已经全部完成,后续博主会把项目进行部署并把源代码整理开放出来供大家学习~~~


四、常见问题

1、HAI服务器计费问题,需要销毁才能停止计费,希望后续能优化

五、总结

        在过去的几个月里,随着ChatGPT、Midjourney、Stable Diffusion等国外产品的快速迭代,以及国内百度、阿里、飞书、网易等大厂发布的大模型,一些设计、研发、自媒体从业者开始感到自危,仿佛他们的工作在AI的洪流中瞬间会被取代。我们希望能借助AI的力量帮助我们解决真实场景中的问题~​        

        之所以选择开发这样一款AI办公助手应用,是根据企业的实际情况和需求,希望帮助公司行政考勤工作提升效率。通过这次使用腾讯云HAl一键部署ChatGLM2-6B 模型来辅助开发【AI办公助手】应用,我深刻感受到了腾讯云HAl在大模型应用部署方面的便捷,概括来说有以下几点:

1、智能匹配算力,多种算力套餐满足不同需求的计算性能。

2、预置主流AI作画模型和LLM大语言模型及常用插件,无需手动部署,支持即开即用。

3、动态更新模型版本,确保模型版本与时俱进,无需频繁操作。

4、支持可视化界面一键登录,方便调优。

可以让开发者高效便捷的使用大模型提供的能力,来提升解决实际场景中的问题。以博主开发的这款【AI办公助手】为例,其中的智能生成SQL,智能生成Excel,英文助手等功能都是基于ChatGLM2-6B大模型的API来实现,使的部分行政人事工作效率提升很多。

总而言之,腾讯云HAl这次给我的体验非常良好,后续会考虑探索腾讯云HAl更多的功能,为工作进行赋能~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1257312.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【GD32307E-START】RT-Thread移植测试

【GD32307E-START】RT-Thread移植测试 1. 软硬件平台 GD32F307E-START Board开发板MDK-ARM KeilGCC Makefile 2. 物联网RTOS—RT-Thread RT-Thread RT-Thread诞生于2006年&#xff0c;是一款以开源、中立、社区化发展起来的物联网操作系统。 RT-Thread主要采用 C 语言编写…

RH2288H V3服务器使用ISO安装系统

1.配置和服务器相同网段地址&#xff0c;RH2288H V3服务器bmc管理网口默认IP是192.168.2.100/24&#xff0c;默认用户root&#xff0c;默认Huawei12#$&#xff0c;网线连接BMC口&#xff0c;登录。默认密码可以在开机时按del键进入配置页面修改 2.配置raid&#xff0c;生产环境…

SpringCloud 微服务全栈体系(十八)

第十一章 分布式搜索引擎 elasticsearch 八、RestClient 查询文档 文档的查询同样适用 RestHighLevelClient 对象&#xff0c;基本步骤包括&#xff1a; 准备 Request 对象准备请求参数发起请求解析响应 1. 快速入门 以 match_all 查询为例 1.1 发起查询请求 代码解读&…

基于Java SSM框架+Vue实现药品销售进销存网站项目【项目源码+论文说明】

基于java的SSM框架Vue实现药品销售进销存网站演示 摘要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff1b;对于药品管理系统当然也不能排除在外&#xff0c;随着网络技术的不断成熟&#xff0c;带动了…

岂曰无衣 汉家衣裳再现锦绣美景

——福州第五届1122汉服节出行盛大开幕11月25日下午&#xff0c;闽江之心海丝广场&#xff0c;一场盛大的汉服文化节——福州第五届1122汉服节出行活动在这里隆重开幕。这个被誉为“穿在身上的历史”的传统文化&#xff0c;在这片古老而神秘的土地上焕发出新的生机与活力。据了…

Win10电脑用U盘重装系统的步骤

在Win10电脑中&#xff0c;用户遇到了无法解决的系统问题&#xff0c;用户这时候就可以考虑重装Win10系统&#xff0c;这样即可轻松解决问题&#xff0c;从而满足自己的操作需求。接下来小编给大家详细介绍关于Win10电脑中用U盘重装系统的教程步骤。 准备工作 1. 一台正常联网可…

group by

引入 日常开发中&#xff0c;我们经常会使用到group by。你是否知道group by的工作原理呢&#xff1f;group by和having有什么区别呢&#xff1f;group by的优化思路是怎样的呢&#xff1f;使用group by有哪些需要注意的问题呢&#xff1f; 使用group by的简单例子group by 工…

火力发电厂电气一次部分初步设计(论文+图纸)

1 原始资料 设计电厂为中型是凝汽式发电厂&#xff0c;共4台发电机组&#xff0c;2台75MW机组&#xff0c;2台50MW机组&#xff0c;总的装机容量为250MW&#xff0c;占系统容量的比例为&#xff1a; 250/(3500250)100%6.7%<15%&#xff0c;未超过电力系统的检修备用容量和…

深入理解JMM以及并发三大特性(2)

书接上文 文章目录 (1)CPU高速缓存(2)缓冲一致性(3)总线仲裁机制(4)总线窥探(Bus Snooping) 前面介绍到实现可见性&#xff0c;底层常用的一种方案是使用内存屏障&#xff0c;而内存屏障在汇编层面又是使用lock前缀指令来实现的&#xff0c;所以这里来介绍一下lock前缀指令。 …

skywalking 简单操作文档

1.1. 基础概念 1.1.1. 概述 SkyWalking是 apache基金会下面的一个开源 APM项目&#xff0c;为微服务架构和云原生架构系统设计。它通过探针自动收集所需的指标&#xff0c;并进行分布式追踪。通过这些调用链路以及指标&#xff0c;Skywalking APM会感知应用间关系和服务间关系…

酷开科技 | 酷开系统,让你与家人共度美好时光!

在日渐繁忙的生活中&#xff0c;我们常常会忽略和家人朋友的相处时光&#xff0c;有时候&#xff0c;我们亟需一种休闲方式&#xff0c;让家庭成员能够围坐在一起&#xff0c;享受无忧无虑的温馨和欢笑。酷开科技&#xff0c;致力于为消费者提供舒适的产品和服务内容&#xff0…

Windows11系统如何将此电脑和回收站图标放置在桌面上?

Windows11系统如何将此电脑和回收站图标放置在桌面上&#xff1f; 如下图所示&#xff0c;点击“开始”图标&#xff0c;&#xff0c;找到“设置”&#xff0c; 如下图所示&#xff0c;进入设置后&#xff0c;找到个性化—主题&#xff0c; 如下图所示&#xff0c;在个性化—主…

免费分享一套基于springboot的餐饮美食分享平台系统,挺漂亮的

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的基于springboot的餐饮美食分享平台系统&#xff0c;分享下哈。 项目视频演示 【免费】基于springboot的餐饮美食分享平台 Java毕业设计_哔哩哔哩_bilibili【免费】基于springboot的餐饮美食分享平台 Java毕…

校园导游程序及通信线路设计(结尾附着总源码)

校园导游程序及通信线路设计 摘  要 新生或来访客人刚到校园&#xff0c;对校园的环境不熟悉。就需要一个导游介绍景点&#xff0c;推荐到下一个景点的最佳路径等。随着科技的发展&#xff0c;社会的进步&#xff0c;人们对便捷的追求也越来越高。为了减少人力和时间。针对对…

VMWare虚拟机ubuntu克隆打不开

ubuntu克隆打不开 复制的存有ubuntu克隆的文件夹&#xff0c;导入vmware打不开 说找不到这个文件&#xff0c;那就到目录把它的删掉 的删掉 换000001.vmdk后缀的

好用的基于layui的免费开源后台模版layuimini

发现一个好用的后台模版 基于layui的免费开源后台模版layuimini layuimini - 基于Layui的后台管理系统前端模板 easyadmin开源项目 EasyAdmin是基于ThinkPHP6.0Layui的快速开发的后台管理系统。 演示站点 演示地址&#xff1a;跳转提示&#xff08;账号&#xff1a;admin&a…

C++学习之路(六)C++ 实现简单的工具箱系统命令行应用 - 示例代码拆分讲解

简单的工具箱系统示例介绍: 这个示例展示了一个简单的工具箱框架&#xff0c;它涉及了几个关键概念和知识点&#xff1a; 面向对象编程 (OOP)&#xff1a;使用了类和继承的概念。Tool 是一个纯虚类&#xff0c;CalculatorTool 和 FileReaderTool 是其派生类。 多态&#xff1…

JavaScript WebApi(二) 详解

监听事件 介绍 事件监听是一种用于在特定条件下执行代码的编程技术。在Web开发中&#xff0c;事件监听器可以用于捕获和响应用户与页面交互的各种操作&#xff0c;如点击、滚动、输入等。 事件监听的基本原理是&#xff0c;通过在特定元素上注册事件监听器&#xff0c;当事件…

Elastic Search的RestFul API入门:初识mapping

本节课旨在探讨Elasticsearch中Mapping的使用。在Elasticsearch中&#xff0c;Mapping是定义索引中字段&#xff08;Field&#xff09;的数据类型和属性的过程。它为Elasticsearch提供了一种途径&#xff0c;以解析和处理文档中的各个字段&#xff0c;以便在搜索、排序和聚合等…

【开源】基于Vue和SpringBoot的个人健康管理系统

项目编号&#xff1a; S 040 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S040&#xff0c;文末获取源码。} 项目编号&#xff1a;S040&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 健康档案模块2.2 体检档案模块2.3 健…