前言
也是出息了哈哈哈哈哈,来测评一下阿里云的智能助手OS Copilot
到底怎么样。之前使用的自然语言大模型主要还是ChatGPT
。国内的一些大模型因为是汉语训练的,所以在汉语言处理的方面还是比ChatGPT
有优势,但是在代码输出、连续对话能力等方面还是略逊一筹。本次要使用的OS Copilot
是阿里云基于大模型构建的操作系统智能助手,支持自然语言问答、辅助命令执行、系统运维调优等功能。在官方文档里面介绍的功能很强大。
我个人也是使用过一年的阿里云轻量服务器,现在也正在阿里云的ECS实例,准备包年使用了,本身是学生,包年价格也是比较便宜,打算长期使用。我用的阿里云的ECS来搭建的我的个人博客,既然是长期使用必然会有运维上的需求,但是我自己不是很懂怎么去运维,正好也就借这个机会使用一下咱家的智能助手,帮我做一下网站维护等工作。
支持的操作系统
|
|
|
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
我的ECS配置
我的操作系统是CentOS7.8
产品优势
-
智能
OS Copilot通过不断学习您的使用习惯,提高准确性并作出预测。
-
专业
OS Copilot可以专业地帮助您回答操作系统相关问题。
-
高效
OS Copilot可以帮助您在系统诊断、调优、编程等场景进行相关问题处理。
-
协作
通过OS Copilot管理您在阿里云上的资源,享受到阿里云上一体化的服务。
功能介绍
-
命令行自然语言问答
通过命令行自然语言问答,OS Copilot能够使用户在操作系统的命令行中直接输入自然语言表述的问题,从而提供与日常使用及操作系统领域相关的专业解答,提高用户的操作效率和整体体验。
-
辅助命令执行
Linux操作系统主要通过命令行进行日常使用和维护等操作。OS Copilot提供了辅助命令执行功能,帮助Linux的新手用户迅速掌握基本的使用技能。
-
阿里云CLI调用
阿里云CLI(Command Line Interface)是基于阿里云开放API建立的管理工具。借助此工具,您可以通过调用阿里云开放API来管理阿里云产品。OS Copilot支持用户在操作系统内便捷地调用阿里云CLI,能够通过命令行简单地查询ECS信息。
-
系统运维和调优
在操作系统使用中的重要场景是系统的运维和调优,操作系统的表现对于业务有着非常大的影响。OS Copilot可以通过自然语言调用相关系统运维及调优工具(特别是阿里云自研的系统工具),帮助用户轻松使用系统工具定位系统问题,提升系统性能。
OS Copilot安装
软件安装
注意下面的命令需要使用root
用户进行操作
先看清使用的什么操作系统,官方文档里面存在两类命令形式
我的系统是CentOS7
再查看本机架构
uname -m
-
x86_64
curl -#S https://mirrors.aliyun.com/os-copilot/os-copilot-all-in-one-latest.sh | bash
-
aarch64
curl -#S https://mirrors.aliyun.com/os-copilot/os-copilot-all-in-one-arm-latest.sh | bash
安装成功
认证信息配置
我使用的ECS实例角色认证
使用前提
-
在阿里云ECS上运行。
使用限制
-
ECS实例的网络类型必须是专有网络VPC。 -
一台ECS实例只能被授予一个RAM角色。
登录RAM控制台,创建RAM角色并授权。
-
创建可信实体为阿里云服务的RAM角色。
选择身份管理 > 角色,单击创建角色
然后命名角色名称,选择受信服务为云服务器
然后新增授权,添加
然后为ECS实例授予RAM角色
左侧导航栏,选择实例与镜像>实例
找到要操作的ECS实例,选择实例设置
下滑到其他信息选择 授予/收回RAM角色
选择创建好的实例RAM角色
单击确定。
OS Copilot软件升级
这个就没什么好说的了,OS Copilot的更新策略就是卸掉原来的,重新安装就是最新的
非root用户加sudo别忘了
rm -f /bin/co /bin/copilot /etc/profile.d/os-copilot_fix_command_tool_config.sh
安装体验感受
说实话这个安装方式还是偏傻瓜方式的,对用户来说很友好。不想一些别的软件,还得安装这个文件运行那个程序的。一些服务器小白还是很简单上手的。除了在管理控制台和RAM控制台上的少数操作,感觉在官方文档里面写的不是很准确。比如那个授予/收回RAM角色的操作上,感觉一些对阿里云云服务器控制台不熟悉的人可能会费时间找一阵子。其他的地方的安装体验还是很舒服的,著需要看官方文档就可以了。
整个安装过程不到五分钟也就搞定了,很赞。
OS Copilot使用
命令详解
单命令模式
单命令就是只运行一下,执行一个命令之后直接退出
如图可见,OS Copilot
支持的参数还不少,以下是常见的参数使用
解释一下各参数含义
-
prompt
:输入查询或问题(即关于Linux操作系统的提问)。如果不输入内容,将进入交互模式。
可选参数:
-
-h, --help
:显示帮助信息并退出。 -
-v, -V, --version
:显示版本信息并退出。 -
-t, -T, --tool
:激活该选项,允许LLM根据需要使用工具来回答问题。 -
-f FILE, --file FILE
:从指定的文件中获取输入内容作为prompt。 -
--notool
:激活该选项,获取不使用工具的LLM原始响应。注意,如果同时使用--tool
选项,--notool
将不起作用。
在官方文档里面还有一个管道符的使用办法
cat /etc/my.cnf | co 用汉语解释下各个参数
这个管道符并行命令的模式还是很惊艳的,说实话还没想过这助手还能这么用
好用好用,太好用了哈哈哈哈哈哈
-t
参数
-t参数在官方文档的解释是这样的:指定进入agent
模式,使得OS Copilot自动调用注册工具完成任务;否则,将由大模型判断是否使用agent
模式。
至于什么是agent
模式,解释如下:在 AI 系统中,Agent 模式是指一个自动化的助手或代理角色,能够基于预定义的工具、算法或逻辑主动执行任务。"Agent 模式" 允许模型在处理请求时主动调用工具、访问外部服务等。也就是说,比如你想查一个什么模糊东西,指定-t
参数可以让大模型自己执行命令,否则大模型只会告诉你你可以执行什么什么命令
当不使用-t
参数时
使用-t
参数时
使用体验
确实好用,正常我在使用云服务器的过程中,遇到什么都是问GPT,然后一个一个复制粘贴再回车。
我属于新手菜鸡类型的,但是很多老手也需要一个字母一个字母的打,现在有了这个,可以直接提出需求然后静等AI操作就可以了。节省时间也节省脑子。
当然,-t是指定Agent
模式,在不使用-t
的情况下,OS Copilot也会自动判断是否使用Agent
,在使用过程中如果提到了具体的操作而不是模糊的命令的话,OS Copilot也会自动调用Agent来进行操作。
边界感也不错,对于一些高权限的命令也会进行询问,得到营运之后才会继续操作。对于服务器本身的数据安全来说也有不错的保护。一些企业用户如果要使用的话也可以放心了,不至于说服务器的权限杯莫名其妙的给出去了,最根本的权限还是在你自己手里的。
-f
参数
这就是OS Copilot设置的一个执行复杂命令的参数了,把想要执行的详细操作放到文件里面,然后由OS Copilot来进行执行
图片看不清可以看我复制出来的Copilot运行过程的命令行
[root@iZf8zbbvl1i9o47yh67qacZ ~]# cat test-task然后读取我服务器上网站的web运行日志最近的900条,日志位置在/www/wwwlogs/access.log先将日志最近900条复制出来保存为新文件1.log再生成一个python脚本,分析网站受到的攻击种类python脚本保存为1.py分析结果按照攻击形式分类,每一种攻击类型要列出下面的三个项目漏洞种类 该漏洞个数 利用该漏洞的URL个数分析结果保存为1.txt
[root@iZf8zbbvl1i9o47yh67qacZ ~]# co -f test-task -t[Copilot]: 我需要先执行命令来提取最近的900条日志记录并保存到新的文件1.log中。然后,我需要创建一个Python脚本来分析这些日志,识别攻击类型,并将结果保存到1.txt文件中。 [Copilot]: 现在我已经成功地从/www/wwwlogs/access.log中提取了最近的900条日志记录,并将其保存到了1.log文件中。接下来,我需要创建一个Python脚本来分析这些日志记录,识别攻击类型, 并将结果保存到1.txt文件中。 Expecting ',' delimiter: line 1 column 959 (char 958)[Copilot]: 看起来我在编写Python脚本时遇到了一些格式问题。我需要确保脚本中的字符串和正则表达式正确无误。我将重新编写并验证脚本。 [Copilot]: 现在我已经成功地创建了Python脚本1.py,该脚本将分析日志文件1.log并生成分析结果到1.txt文件中。接下来,我需要运行这个Python脚本来生成分析结果。 [Copilot]: 看起来在运行Python脚本时遇到了错误。可能是由于Python版本不兼容或其他原因导致的。为了确保脚本能够正常运行,我将使用python3来执行脚本。 [Copilot]: 看起来即使使用 python3 仍然遇到了错误。为了进一步诊断问题,我需要查看具体的错误信息。我将尝试捕获并显示脚本的详细错误信息。 [Copilot]: 看起来即使将错误输出重定向到 error.log 文件,仍然没有解决问题。为了更好地理解错误原因,我将直接查看 error.log 文件的内容。 [Copilot]: 看起来在Python脚本中存在语法错误。具体来说,问题是由于在格式化字符串中使用了单引号嵌套导致的。我需要修正这个问题。 [Copilot]: 现在我已经修正了Python脚本中的语法错误。接下来,我将再次运行这个脚本来生成分析结果。 [Copilot]: 现在脚本已经成功运行,分析结果应该已经被写入到 1.txt 文件中。我将读取 1.txt 文件的内容,以确认分析结果。 [Copilot]: I now know the final answer [Copilot]: 日志文件 1.log 中的最近900条记录已经通过Python脚本 1.py 进行了分析,并将结果保存到了 1.txt 文件中。根据分析结果,以下是网站受到的攻击种类及其统计信息: 漏洞种类 该漏洞个数 利用该漏洞的URL个数 SQL Injection 0 0 XSS 0 0 Directory Traversal 0 0 Remote Code Execution 0 0 File Inclusion 0 0 Path Disclosure 0 0
通过上面的测评来看,Copilot
针对复杂任务的处理还是十分游刃有余的。包括通过官方文档展示的Demo
来看,Copilot
的代码编写能力,和在我测试过程的截图中针对报错的处理能力都十分优秀。
在我的测评过程中,可以看到Copilot
在不断纠错处理错误,如对脚本格式的处理,python环境的灵活应对,还有语法错误。
管道符
这个就是利用管道符进行并行命令了
这个功能我是真喜欢,少了复制黏贴的那一步,可以直接利用管道符,省了很多事情
命令纠错
这个模式对于我这种只记得有这个命令但是各种参数啥的都记不清的人来说简直了,谁懂啊家人们,命令输着输着忘了该怎么拼的是什么感受。(ps:要是我的期末考试能用这个东西该有多好,根本不担心挂科)
先导入一下
source /etc/os-copilot/fix_command_config.sh
然后当你输错一个命令又想不起来这个命令具体怎么拼
咱就直接纠错多好,还省得上网查了
交互模式
说实话,这个交互模式是我们日常在使用AI语言大模型最常用的功能。就目前而言,Copilot的连续对话能力是我最关注的点。因为国产AI与OpenAI在日常使用中最大的差距就是连续对话能力。说白了就是AI的上下文理解能力。ChatGPT是基本能做到全文阅读并且理解。而国内的某言,某火,连续对话能力惨不忍睹,往往上下四句开外就没办法联系了。Copilot的连续对话能力现在看起来是没毛病的,只能说牛掰。
总结
我现在是一名大三学生,平常是经常在自学网络安全领域的知识,也利用了阿里云的ECS搭建了我个人的第一个博客网站,平常也有在维护但是经常是笨手笨脚的,现在是直接懒得维护了。我的博客是在2024年8月份搭建的。感觉如果当时就有Copilot的话应该不至于花费了半个月才把我的博客搭起来。
在使用这-t/-f/管道符
的功能的过程中,个人感觉还是十分强大的。我正常在使用其他大模型的时候都是读文件,然后Ctrl+A,Ctrl+C,Ctrl+V 再回车,我现在用的双屏,还算好使,但是大部分用户使用的是单屏,就没有那么好使了,这里你甚至只需要输入一个命令然后直接就能问,对于普通用户来言可以说是神器了。
这里建议用Copilot的用户都配置一个SSH服务,然后用shell软件去连接。当然我记得阿里云的ECS防火墙是默认开放22端口的,去用Shell软件连接一下就好了。因为如果直接在控制台远程连接的话可能会有一些浏览器没有办法输入中文,在使用Copilot的时候会有一些问题。如下图我输入法就是中文,但是没办法输入进去。
还有一个点就是AI大模型的通病,就是在执行复杂任务时会直接断掉,如图所示。但是我说实话,如果其他用户在使用过程中遇到这个问题也不要抱怨。强如OpenAI,在遇到复杂的任务也会宕机。而Copilot做的已经很棒了。因为Copilot发生的运行断掉的情况是我不断给任务加码才最终出现的。我在使用ChatGPT的时候都会经常宕机。但是Copilot再正常运行过程中想要宕机还是很难的。就按用户的正常需求来说,Copilot带给我的体验已经远超我的预期了。
建议
要说建议呢,就我目前试用下来,Copilot的三类模式:但命令模式,命令纠错,交互模式单独拿出来就是很强大的。但是我希望可不可以让命令模式和交互模式融合一下。让我在交互模式中可以直接进行命令执行。比如我在交互模式中想要安装docker,然后可以在交互模式下开始安装docker。
原文始发于微信公众号(云淡纤尘):【AI大模型】OS Copilot测评
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论