在华为开发者空间配合华为AskO3丝滑构建一个造数小程序【华为开发者空间】

举报
yd_267726237 发表于 2024/11/22 22:08:02 2024/11/22
【摘要】 在华为开发者空间配合华为AskO3丝滑构建一个造数小程序,顾名思义,提供一种简便、快捷的数据生成与处理工具。在日常办公,或者测试需要数据堆积时可以快速的构造数据,本篇也在抛砖引玉,有更好想法的同学可以去体验开发者空间和AakO3

          本篇旨在在华为开发者空间配合华为AskO3丝滑构建一个造数小程序,顾名思义,提供一种简便、快捷的数据生成与处理工具。在日常办公,或者测试需要数据堆积时可以快速的构造数据,本篇也在抛砖引玉,有更好想法的同学可以去体验开发者空间和AakO3

华为开发者空间:

华为开发者空间是华为云为全球开发者打造的专属开发空间,汇聚昇腾、鸿蒙、鲲鹏、GaussDB、欧拉等各项根技术的开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

  • 一站式开发环境‌:华为云开发者空间为每位开发者提供专属的云主机,预集成CodeArts IDE等工具,解决配置复杂、稳定性不足等问题,提升开发效率。
  • 丰富资源与支持‌:开发者可享受数百小时免费的云主机使用权、5GB云存储容量及定制化的场景模拟沙箱,还有海量技术赋能课程与专业认证资料。
  • 全面的生态体系‌:平台整合了鲲鹏、昇腾、鸿蒙等核心生态的开发资源,提供广泛的开源软件库、实用开发插件,覆盖从代码托管到应用运维的各个阶段。
  • 个性化技术支持‌:通过工单系统等多种渠道,为开发者提供及时的技术指导和解决方案,确保项目顺利推进。

可以节省本机资源,也可以无限次的试错,更方便的重置主机重头再来

附上领取地址:https://dev.huaweicloud.com/E2u9

AskO3:

是GTS基于盘古大模型构建的领域知识大模型,旨在提升伙伴知识获取效率和作业效率。它提供了三大核心应用:O3智能搜索、O3智能问答和O3智能助手。

  • O3智能搜索‌:基于官方统一、权威的知识库,结合ICT服务领域大模型,实现用户理解能力更强、答案呈现方式更优的搜索体验。
  • O3智能问答‌:利用大模型的智能问答能力,快速准确地回答用户问题,提供秒级答案。
  • O3智能助手‌:作为伙伴大模型助手,帮助用户更高效地完成作业,提升工作效率。

AskO3通过整合盘古大模型的强大能力,为GTS的伙伴提供了更加精准、便捷的知识获取和作业辅助工具

AskO3地址:https://o3community.huawei.com/community/o3RegisterCn.htm?inviteCode=knTmUvK7

AskO3智能助手地址:AskO3

一、领取云主机

1、领取主机

点开连接:https://dev.huaweicloud.com/E2u9 

跳转到开发空间页面领取

2、配置云主机

在配置云主机前先想好你做什么程序需要什么工具,java、python、js,如果选错了不要慌,可以重置一下(需要先关机哦)

总结一个解决乱码的办法

<<如果你也遇到了中文拷贝进去乱码问题,分享一个办法,你可以在可以的网站随意发一个帖子,然后在云主机打开,然后复制进去,记得要删除垃圾帖子啊>>

二、准备一个数据库

我准备了一个mysql的数据库,也可以用云上的rds更简单,开箱即用

sudo apt update
sudo apt install mysql-server

登录并创建用户,初始化表

#登录数据库
sudo mysql -u root -p
#创建用户
create user xx@'%' identified by 'xx';
#授权
grant all privileges on *.* to xx@'%' ;
#创建数据库
create database school;
#创建表
CREATE TABLE students (
    student_id INT AUTO_INCREMENT PRIMARY KEY COMMENT '学生ID',
    name VARCHAR(50) NOT NULL COMMENT '学生姓名',
    age INT COMMENT '年龄',
    major VARCHAR(100) COMMENT '专业',
    email VARCHAR(100) UNIQUE COMMENT '电子邮件'
);

mysql> create user xx@'%' identified by 'xx';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all privileges on *.* to xx@'%' ;
Query OK, 0 rows affected (0.01 sec)
mysql> create database school;
Query OK, 1 row affected (0.01 sec)
mysql> use school;
Database changed
mysql> show tables;
+------------------+
| Tables_in_school |
+------------------+
| students         |
+------------------+
1 row in set (0.00 sec)
mysql> select count(*) from students;
+----------+
| count(*) |
+----------+
|        0 |
+----------+
1 row in set (0.01 sec)


三、用AskO3智能助手构造代码

1、打开Aako3的智能编程助手

2、生成造数程序

这里我们就开始偷懒啦,使用如下提问让Asko3帮我们生成程序,我们只需要修改必须的信息,和对程序微调就可以使用了

<<如果你也遇到了中文拷贝进去乱码问题,分享一个办法,你可以在可以的网站随意发一个帖子,然后在云主机打开,然后复制进去,记得要删除垃圾帖子啊>>

CREATE TABLE students (
    student_id INT AUTO_INCREMENT PRIMARY KEY COMMENT '学生ID',
    name VARCHAR(50) NOT NULL COMMENT '学生姓名',
    age INT COMMENT '年龄',
    major VARCHAR(100) COMMENT '专业',
    email VARCHAR(100) UNIQUE COMMENT '电子邮件'
);
帮我用python 生成一个造数脚本,根据如上表结构,生成对应列的随机值,插入100万数据,使用并行插入,做一个前台页面可以设置造数的数据量

程序生成好了

3、生成的程序

from flask import Flask, request, render_template_string
import mysql.connector
from concurrent.futures import ThreadPoolExecutor

app = Flask(__name__)

# 配置数据库连接
config = {
    'user': 'root',
    'password': 'zzz',
    'host': 'zzz',
    'database': 'school',
    'raise_on_warnings': True
}

def insert_data(student):
    cnx = mysql.connector.connect(**config)
    cursor = cnx.cursor()
    query = "INSERT INTO students (name, age, major, email) VALUES (%s, %s, %s, %s)"
    cursor.execute(query, student)
    cnx.commit()
    cursor.close()
    cnx.close()

def generate_students(num_students):
    students = []
    for i in range(num_students):
        name = f"Student{i}"
        age = 20 + (i % 10)
        major = f"Major{i % 5}"
        email = f"{name.lower()}@example.com"
        students.append((name, age, major, email))
    return students

@app.route('/', methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        num_students = int(request.form['num_students'])
        students = generate_students(num_students)

        with ThreadPoolExecutor(max_workers=10) as executor:
            list(executor.map(insert_data, students))

        return f"成功插入 {num_students} 条数据!"

    return '''
        <form method="post">
            <label for="num_students">要插入的学生数量:</label>
            <input type="number" id="num_students" name="num_students" required>
            <button type="submit">插入数据</button>
        </form>
    '''

if __name__ == '__main__':
    app.run(debug=True)

四、运行代码

1、安装python包

直接在命令窗口安装

pip install flask
pip install mysql-connector-python

2、打开云主机CodeArts IDE for python并新建工程

直接把代码放进main.py里

3、运行代码

点击下方终端,在命令行运行代码

python3 main.py 

运行后会输出登录连接

4、运行效果

在浏览器输入上面的连接打开页面,输入插入数据量

五、总结

      利用华为开发者空间与华为AskO3丝滑的构建了一个小程序,华为开发者空间作为开发者的得力助手,提供了丰富的开发资源、工具和服务,不用本地搭建复杂的环境。而华为AskO3,作为GTS基于盘古大模型构建的领域知识大模型,其强大的智能搜索、智能问答和智能助手功能,便捷的生成了需要的代码,对于我们这种运维来说,本身代码能力比较弱,刚好可以弥补这方面能力

我正在参加【有奖征集 第34期】华为开发者空间一行代码快速上云,参与视频、文章投稿赢2000元开发者礼包
链接:https://bbs.huaweicloud.com/blogs/438987

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。