简介 Chinese-LLaMA-Alpaca-2基于Meta发布的可商用大模型Llama-2开发, 是中文LLaMA&Alpaca大模型的第二期项目.
量化 模型的下载还是应用脚本
bash hfd.sh hfl/chinese-alpaca-2-13b --tool aria2c -x 8 应用llama.cpp进行量化, 主要参考该教程.
其中比较折腾的是与BLAS一起编译.
OpenBLAS 这个真是一言难尽, 非常折腾也没起作用(issue1 & issue2). 而且提升很小, 后续再尝试能不能成功.
cuBLAS 这个提升较为明显, 在有Nvidia GPU的情况下, 需要折腾应该就只有非root用户手动安装一下CUDA toolkit, 然后在CMakeLists.txt中指定一下路径即可.
手动安装CUDA toolkit和cuDnn后, 在CMakeLists.txt中加入:
# ${cuda path}示例: /home/orange/software/cuda-118 set(CUDA_TOOLKIT_ROOT_DIR ${cuda path}) 进行编译即可
mkdir build cd build cmake .. -DLLAMA_CUBLAS=ON cmake --build . --config Release 量化 编译完成llama.cpp后, 进行量化
python convert.py zh-models/chinese-alpaca-2-7b/ ./build/bin/quantize ./zh-models/chinese-alpaca-2-7b/ggml-model-f16.gguf ./zh-models/chinese-alpaca-2-7b/ggml-model-q8_0.gguf q8_0 部署测试 直接使用./build/bin/main -m ./zh-models/chinese-alpaca-2-7b/ggml-model-q8_0.gguf不能进行对话, 加入参数-i表示交互模式, 也可以使用教程中的脚本形式.
按照tutorial, 新建chat.
参考自:neo4j的python.py2neo操作入门
官方文档:The Py2neo Handbook — py2neo 2021.1
安装:pip install py2neo -i https://pypi.tuna.tsinghua.edu.cn/simple
1 节点 / 关系 / 属性 / 路径 节点(Node)和关系(relationship)是构成图的基础,节点和关系都可以有多个属性(property),并且均可以作为实体
重点:
节点:在图数据库中,节点代表实体,可以拥有属性和标签。节点通常用来表示实际的数据实体,比如人、地点、事件等关系:关系描述了节点之间的连接或关联,必须包含两个节点,且具有方向:start node →end node路径:路径是由节点和关系组成的序列,描述了节点之间的连接路径。路径是一个完整的图形结构,由起始节点、关系和结束节点组成,表示了实体之间的关系和连接方式属性:键-值(key-value),键是字符串类型,值,可以是原数据,也可以由原数据同类型的数组对于一个节点来说,与之相连的关系是有输入和输出两个方向。(如node2有输入关系和输出关系:node1→node2→node3),这个特性对于遍历图很重要一个节点可以有一个关系是指向自己的 2 连接neo4j 前置安装:
配套资料:配套资料
安装Neo4j
下载配套资料中的neo4j-community-3.5.5-windows和jdk-11.0.2_windows-x64_bin
neo4j解压即可,jdk就常规安装
完成之后需要将neo4j和jdk的bin目录都配置为环境变量(即path中,若不懂请自行百度)
验证安装:
cmd窗口下 java -version
注: 若之前配置过jdk,需要将新配置的jdk上移到环境变量的最上方,或者直接删除以前配置过的jdk,然后重新打开cmd窗口进行验证安装
cmd下启动Neo4j
neo4j.bat console
访问http://localhost:7474/,用户名和密码都输入neo4j,并连接(注意命令行窗口不能关闭),之后重新设置密码(建议设置为123456)
#cmd窗口下
neo4j.bat console
浏览器访问 http://localhost:7474/
3 创建图对象 from py2neo import Graph, Subgraph from py2neo import Node, Relationship, Path # 连接数据库 # graph = Graph('http://localhost:7474', username='neo4j', password='123456') # 旧版本 graph = Graph('bolt://localhost:7687', auth=('neo4j', '123456')) # 删除所有已有节点 graph.
ChatGPT的出现带动了Copilot等AI办公工具迅速出圈,Copilot基于大语言模型(LLM),相当于智能化的office办公助手。
你只需说几句话,做出指示,Copilot就可以自动创建类似人类撰写的文本和其他内容。
Copilot的出现让我想起曾经用过的Tableau ask data功能。
Tableau等BI工具有一种ask data功能,大概功能是你只需要输入:
帮我统计下近三年各区域的利润率。BI就会自动帮你把数据拉出来,并做成报表。
这种功能还不成熟,系统只是机械的把语言翻译成BI拉数的逻辑,很多时候会出现错误。
但Copilot的出现直接把这种功能体验感拉满,它能自动提供公式、格式、分析方法的建议,你只需要按确认,就能帮你瞬间搞定。
比如你在excel里想算“增长率的变化将如何影响我的毛利率”。
Copilot不仅文字回答,连相关数据模型也可以直接拉出来。
Office+AI的结合或许是一种生产力革命,和电脑、手机的出现一样,带来意想不到的社会变化。
在没有个人电脑和Excel等工具之前,只能用笔纸记录数据,一个生产企业一天的数据量可能就几张纸,完全没法通过数据提升效率。
而数字化普及的今天,现在哪怕一个小超市,也可以通过Excel、Access来搭建自己的数据中心,做库存管理、商品管理、顾客分析,几乎能帮助到运营的每一个环节。
但现在的office只能说是一个毫无感情和智商的机器人,效率是提升了,但做什么、怎么做、做的更好,都需要人亲自来做。
Chatgpt、Copilot这种AI的出现,已经开始不需要人就能自己独立完成工作。
配合office应用,AI能解决大部分重复性高、复杂度低、非协作类的问题,比如制作业务报表、电子合同、宣传海报、会议纪要、通知邮件等等。
可怕的是,AI的知识储备和计算能力,能让它突破人脑的限制,做很多人做不了的事,人能做的就是promot了。
我是觉得这几年会是AI发展的临界点,Chatgpt、Copilot等为代表的AI应用会渗透到生活工作的每一个方面。
所有人都应该思考,AI时代我应该做什么?
Copilot官网有一段话:
人类天生就爱梦想、创造、创新。但今天,我们花太多时间被繁重的工作所消耗,花在消耗我们时间、创造力和精力的任务上。为了重新触及我们工作的真谛,我们不仅需要一种更好的方式来做同样的事情,更需要一种全新的工作方式。
通过Copilot,你的话就变成了地球上最强大的生产力工具。
R语言绘制相关性热图全总结 引言 相关性热图是科研论文中一种常见的可视化手段,而在地学领域,我们常常需要分析一些环境因素之间的相关性,来判断环境生物因素中是否存在相关性情况。
尤其是在进行多变量分析时,分析目标因素和各变量之间的关系,往往需要首先考察变量之间的相关性,再考虑主成分等相关问题。地学环境生态领域常常用相关性热图的形式进行展示。总而言之,往大了说,任何表征相关性的数值都可以用相关性热图来进行绘制。
我们先来看看下面这张图,这是一篇发表在 ISME Journal ( IF = 11) 上的文章图,展示了生物和非生物因素的相关性。之间的相关性,其中红色的颜色代表负相关,蓝色代表正相关。每一格的数字代表相关系数。
Wijaya, W., Suhaimi, Z., Chua, C.X. et al. Frequent pulse disturbances shape resistance and resilience in tropical marine microbial communities. ISME COMMUN. 3, 55 (2023). https://doi.org/10.1038/s43705-023-00260-6
下图是一篇发表在 PLoS Medicine ( IF = 11.048) 上的文章图,展示了 22 种免疫细胞群体之间的相关性:
img 下图是发表在Scientific reports期刊上的一张相关性图,该图展示了微生物参数和土壤理化性质参数的Pearson相关性。
Ozlu, E., Sandhu, S.S., Kumar, S. et al. Soil health indicators impacted by long-term cattle manure and inorganic fertilizer application in a corn-soybean rotation of South Dakota.
1. 数据采集 首先,我们需要通过网络爬虫技术从招聘网站上获取数据。爬虫可以自动地访问网站并抓取所需的数据,例如职位信息、公司信息、薪资水平等。在选择爬虫工具时,需要考虑目标网站的结构和反爬虫机制,确保能够稳定高效地获取数据。
import csv import time import requests import execjs from storage.csv2mysql import sync_data2db def read_js_code(): f= open('/Users/shareit/workspace/chart_show/demo.js',encoding='utf-8') txt = f.read() js_code = execjs.compile(txt) ckId = js_code.call('r',32) return ckId def post_data(): read_js_code() url = "https://api-c.liepin.com/api/com.liepin.searchfront4c.pc-search-job" headers = { 'Accept': 'application/json, text/plain, */*', 'Accept-Encoding': 'gzip, deflate, br' } list = ["H01$H0001","H01$H0002", "H01$H0003","H01$H0004","H01$H0005", "H01$H0006","H01$H0007","H01$H0008", "H01$H0009","H01$H00010","H02$H0018","H02$H0019","H03$H0022", "H03$H0023","H03$H0024","H03$H0025","H04$H0030","H04$H0031", "H04$H0032","H05$H05","H06$H06","H07$H07","H08$H08"] for name in list: print("-------{}---------".format(name)) for i in range(10): print("------------第{}页-----------".format(i)) data = {"data": {"
希望你开心,希望你健康,希望你幸福,希望你点赞!
最后的最后,关注喵,关注喵,关注喵,佬佬会看到更多有趣的博客哦!!!
喵喵喵,你对我真的很重要!
目录
前言
建立和管理索引
认识索引
索引分类
索引的设计原则
创建表时创建
用CREATE INDEX语句创建
创建普通索引
创建唯一性索引
创建多列索引
注
通过ALTER TABLE语句创建索引
通过ALTER TABLE语句创建索引
索引的查看
索引的删除
索引的删除
总结
前言 来了来了,回来了~
本任务将从认识索引、索引的分类以及索引的设计原则等方面着手,介绍创建和管理索引的方法。 索引并不是越多越好,要正确认识索引的重要性和设计原则,创建合适的索引。 建立和管理索引 认识索引 索引是一种特殊的数据库结构,可以用来快速查询数据库表中的特定记录。 在MySQL 中,所有的数据类型都可以被索引。 MySQL支持的索引主要有 Hash 索引和 B-Tree 索引 。但大部分都是以 B- 树( BTREE )方式存储, B-Tree 索引的存储结构在数据库的数据检索中有着非常优异的表现。 MySQL Hash 索引相对于 B-Tree 索引,检索效率要高上不少。 (1)MYISAM里所有键的长度仅支持1000字节,INNODB是767。
(2)BLOB和TEXT字段仅支持前缀索引。
(3)使用“! =”以及“<>”的时候,MySQL不使用索引。
(4)当字段使用函数的时候,MySQL无法使用索引;在连接条件字段类型不一致的时候,MySQL无法使用索引;在组合索引里使用非第一个索引时也不使用索引。
(5)在使用LIKE的时候,以“%”开头,即“%***”的时候无法使用索引;在使用OR的时候,要求or前后字段都有索引。
(6)索引是一个简单的表,MySQL将一个表的索引都保存在同一个索引文件中,所以索引也是要占用物理空间的。如果有大量的索引,索引文件可能会比数据文件更快地达到最大的文件尺寸。
(7)在更新表中索引列上的数据时,MySQL会自动地更新索引,索引树总是和表的内容保持一致。这样就降低了添加、删除、修改和其他写入操作的效率。表中的索引越多,则更新表的时间就越长。
(8)如果从表中删除了列,则索引可能会受到影响。如果所删除的列为索引的组成部分,则该列也会从索引中删除。如果组成索引的所有列都被删除,则整个索引将被删除。
索引分类 (1)普通索引(INDEX)
索引的关键字是INDEX,这是最基本的索引,它没有任何关键字限制。
(2)唯一性索引(UNIQUE)
索引列的值必须唯一,允许有空值。如果是组合索引,则列值的组合必须唯一。在一个表上可以创建多个UNIQUE索引。
(3)主键索引(PRIMARY KEY)
一种特殊的唯一索引,不允许有空值。一般在建表时同时,一个表只能有一个主键索引。
(4)全文索引(FULLTEXT)
只能对CHAR、VARCHAR和TEXT类型的列编制索引,并且只能在MyISAM表中编制。全文索引是一种特殊类类型索引,它查找的是文本中的关键词,而不是直接比较索引中的值。在MySQL默认情况下,对于中文作用不大。
目录
一、回溯法与深度优先搜索(DFS)
二、DFS与二叉树的前序遍历
2.1、二叉树的前序遍历
2.2、DFS
全排列
2.3、分析
三、N皇后问题
四、2N皇后问题
dfsblack
dfswhite
一、回溯法与深度优先搜索(DFS) 1. 回溯法:
是一种通过探索所有可能的候选解来找出所有解的算法。如果候选解被确认不是一个解的话(或者至少不是最后一个解),回溯法会通过在上一步进行一些变化来摆脱当前不正确的解,重新尝试其他的可能性。它通常用于解决决策问题,如排列、组合、子集等。回溯法可以隐式地处理图或树,即这些结构并不需要事先构建出来,而是在搜索过程中动态生成。 2. 深度优先搜索(DFS):
是一种用于遍历或搜索树或图的算法。在树中,这种算法搜索最深的节点,而在图中,它将回溯到未探索过的路径。DFS从根(或在图中的某个任意节点)开始,探索尽可能深的分支,直到达到目标节点,或者当前分支没有更多的节点可以访问。然后,搜索回溯到开始探索的路径上的下一个节点。DFS通常使用栈或递归来实现,其中递归实现更为常见和直观。 关系:
回溯法通常使用DFS作为其基本的搜索策略。在回溯法中,DFS用于系统地遍历所有可能的解空间。当我们说“一条路走到黑”时,我们实际上是在描述DFS的特性,即尽可能深入地搜索图的分支,直到达到叶节点或无法继续为止。 在排列型问题中,DFS用于生成所有可能的排列,而在子集型问题中,它用于生成所有可能的子集。 尽管在很多情况下回溯法和DFS是紧密相关的,但它们并不总是等价的。回溯法更侧重于问题的求解策略,而DFS更侧重于图的遍历策略。然而,在实际应用中,这两个概念经常交织在一起。
二、DFS与二叉树的前序遍历 2.1、二叉树的前序遍历 前序遍历的步骤如下:
// 先序遍历二叉树 void PrevOrder(BTNode* root) { // 如果当前节点为空,则打印"NULL"并返回 if (root == NULL) { printf("NULL "); return; } // 访问当前节点的数据 printf("%c ", root->data); // 递归遍历左子树 PrevOrder(root->left); // 递归遍历右子树 PrevOrder(root->right); } 2.2、DFS 基本模型:
void dfs(int step){ 判断边界 枚举每一种可能 for(i=1;i<=n;i++){ 继续下一步 dfs(step+1) } } 全排列 题目:
输入一个数n,将数字1~n排成一排,按字典序输出所有排列方法。
简介 [Axios] ,是一个基于 promise 的网络请求库,可以运行 node.js 和浏览器中。本库基于[Axios]原库v1.3.4版本进行适配,使其可以运行在 OpenHarmony,并沿用其现有用法和特性。
http 请求Promise APIrequest 和 response 拦截器转换 request 和 response 的 data 数据自动转换 JSON data 数据 下载安装 ohpm install @ohos/axios 需要权限 ohos.permission.INTERNET 接口和属性列表 接口列表
接口参数功能axios(config)[config]:请求配置发送请求axios.create(config)[config]:请求配置创建实例axios.request(config)[config]:请求配置发送请求axios.get(url[, config])url:请求地址 [config]:请求配置发送get请求axios.delete(url[, config])url:请求地址 [config]:请求配置发送delete请求axios.post(url[, data[, config]])url:请求地址 data:发送请求体数据 [config]:请求配置发送post请求axios.put(url[, data[, config]])url:请求地址 data:发送请求体数据 [config]:请求配置发送put请求 属性列表
属性描述axios.defaults[‘xxx’]默认设置 。值为请求配置 [config] 中的配置项 例如 axios.defaults.headers 获取头部信息axios.interceptors拦截器。参考 [拦截器] 的使用 使用示例 使用前在demo中entry–>src–>main–>ets–>common–>Common.ets文件中改为正确的服务器地址,在entry–>src–>main–>resources–>rawfile目录下添加正确的证书,才可正常的使用demo。
发起一个 GET 请求
axios支持泛型参数,由于ArkTS不再支持any类型,需指定参数的具体类型。 如:axios.get<T = any, R = AxiosResponse, D = any>(url)
目录
一、登陆注册实现思路
二、实现具体步骤
1. 设计数据库表结构
2. 创建Spring Boot项目
3. 编写实体类
4. 编写Repository接口
5. 编写Service层
6. 创建Controller
7. 编写前端页面
Register.html:
login.html:
8.进行测试登陆注册模块
三、总结
博主介绍:✌专注于前后端领域开发的优质创作者、秉着互联网精神开源贡献精神,答疑解惑、坚持优质作品共享。本人是掘金/腾讯云/阿里云等平台优质作者、擅长前后端项目开发和毕业项目实战,深受全网粉丝喜爱与支持✌有需要可以联系作者我哦!
🍅文末三连哦🍅
👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
一、登陆注册实现思路 实现登录和注册功能可以分为以下几个步骤:
设计数据库表结构:首先,你需要设计用户表,包含用户名、密码等字段。你也可以考虑使用加密算法存储密码,比如BCrypt。
创建Spring Boot项目:使用Spring Initializr创建一个新的Spring Boot项目,并添加相应的依赖,比如Spring Web、Spring Data JPA等。
编写实体类:根据数据库表结构,在Java中创建相应的实体类,用于映射数据库表。
编写Repository接口:创建一个Repository接口,用于执行数据库操作,比如查询用户信息、保存用户信息等。
编写Service层:创建一个Service层,包含业务逻辑,比如验证用户登录、注册新用户等。在这个层次你可以加入密码加密、验证等逻辑。
创建Controller:创建Controller来处理用户的登录和注册请求。Controller接收请求参数,调用Service层方法完成相应的业务逻辑。
编写前端页面:创建HTML页面用于用户登录和注册。可以使用表单来收集用户信息,并通过Ajax或者普通的表单提交来发送数据到后端。
测试和调试:在完成上述步骤后,进行测试和调试,确保功能的正常运行。
登录页面
注册页面 运行页面截图 二、实现具体步骤 1. 设计数据库表结构 CREATE TABLE user ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL ); 2. 创建Spring Boot项目 使用Spring Initializr创建一个新的Spring Boot项目,添加Spring Web和Spring Data JPA依赖。
我下载的是MySQL 5.7.43 ,以下是详细下载安装过程
一、下载过程步骤
1、进入官方网站:https://www.mysql.com/
2、首页滑到最下面,找到MySQL Community server
3、选择你想要的版本和电脑对应配置进行下载
4、下载完后,保存解压自己想要的位置
二、配置环境
1.右键此电脑->属性—>高级系统设置—>环境变量—>系统变量
2.新建系统变量
变量名:MYSQL_HOME
变量值:D:\MySQL\mysql-5.7.43-winx64(自己之前保存解压的地址)
3. 将新建的系统变量添加到Path
%MYSQL_HOME%\bin
4. 配置my.ini文件
新建一个my.ini文件
[mysqld] #端口号 port = 3306 #mysql-5.7.43-winx64的路径 basedir=D:\MySQL\mysql-5.7.43-winx64 #mysql-5.7.43-winx64的路径+\data datadir=D:\MySQL\mysql-5.7.43-winx64\data #最大连接数 max_connections=200 #编码 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] #编码 default-character-set=utf8 注意:basedir是自己之前保存解压的地址
5.安装MySQL
搜索框输入cmd,以管理员身份运行
②在cmd中进入MySQL安装目录 D:\MySQL\mysql-5.7.43-winx64
输入安装命令:mysqld -install,若出现Service successfully installed,证明安装成功;如出现Install of the Service Denied,则说明没有以管理员权限来运行cmd:
继续输入命令:mysqld --initialize,初始化数据库
再输入启动命令:net start mysql,出现以下提示证明MySQL启动成功:
6.设置MySQL密码
设置密码主要用于解决ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)的问题停止MySQL服务,输入命令行 net stop mysql:找到刚才新建的my.
Java语言的强大之处在于它提供了多种多样的类库,从而大大提高了程序的编程效率和质量。
一、枚举 事先考虑到某一变量可能的取值,尽可能用自然语言忠表意清楚的单词来表示它的每一个值,用这中思路定义的类型被称为枚举类型。
枚举事由一组固定的常量组成的类型。在Java中每个枚举都继承java.lang.Enum类,使用关键字enum定义。
语法格式:
访问修饰符 enum 枚举名{ 常量1[,常量2……[ ; ]] //[其他成员] } 在枚举中可以定义多个常量,表示不同的枚举值,即枚举元素,之间用逗号隔开。在枚举中可以定义其他成员,包括构造方法等,置于枚举常量之后。可以使用“枚举名.常量名”的形式取出枚举中的指定内容。 代码示例:
public enum Gender{ Male,Female; } 在以上代码中,Gender中自定义的枚举类型里包含Male、Female两个数据。
在Java中,通常使用枚举表示一组有限的值,实现对输入的值进行约束。下面通过示例学习在程序中如何定义和使用枚举。
代码示例:
public enum Week { MON,TUE,WED,THU,FRI,SAT,SUN; } public class WeekTest { public void doWhat(Week day) { switch (day) { case MON: case TUE: case WED: case THU: case FRI: System.out.println("工作日,努力写代码!"); break; case SAT: System.out.println("星期六,休息!看电影!"); break; case SUN: System.out.println("星期日,休息!打篮球!"); break; default: System.out.println("地球上一个星期就7天。"); } } public static void main(String[] args) { WeekTest t=new WeekTest(); t.
这些宝藏AI 写作神器,我不允许你还不知道~国内外免费付费都有,还有AI写作小程序分享,大幅度提高写文章、写报告的效率,快来一起试试吧!
1.七燕写作 这是一个微信公众号,可以进行AI对话、AI创作、AI绘画、AI训练,内置智能对话机器人、图片设计、AI模型训练、文案生成、方案创作、营销内容创作等数十项AIGC功能,并且包含海量提示词和AI模型库。
面向专业写作领域的ai写作工具,写作助手包括,ai论文,ai开题报告、ai公文写作、ai商业计划书、文献综述、ai生成、ai文献推荐、AI论文摘要,帮助用户在线快速生成。
写作主打简单、易操作,200+写作模板,小白也能快速上手。只要输入简单的要求和描述,就能自动生成各种高质量文稿内容。
写作功能特色:
多场景写作模板,不限于某个领域, 12+ 种职位的 100+ 工作场景,10秒即可生成一篇专业文章。无论你需要修改简历、撰写公文,还是分享工作心得,我们都能让写作变得轻松无压力。
AI文档续写:策划活动方案卡壳,写小说灵感枯竭。只需上传你的文档,AI 就能帮你续写、修改、扩展和润色。笔灵AI写作轻松解决写作焦虑。
与AI对话:除了AI 改写、 AI续写,AI 一键生成文案,笔灵AI写作还支持 AI 聊天机器人、AI专家对话,全面满足你的 AI 使用需求。
七燕写作支持一键智能快速写作,AI生成器一键伪原创,AI智能改写,续写,伪原创工具,原创文案生成器智能写作,智能创作,软文写作,文章生成工作报告等。
2.元芳写作 这是一个微信公众号
面向专业写作领域的ai写作工具,写作助手包括,ai论文,ai开题报告、ai公文写作、ai商业计划书、文献综述、ai生成、ai文献推荐、AI论文摘要,帮助用户在线快速生成。
写作主打简单、易操作,200+写作模板,小白也能快速上手。只要输入简单的要求和描述,就能自动生成各种高质量文稿内容。
写作功能特色:
多场景写作模板,不限于某个领域, 12+ 种职位的 100+ 工作场景,10秒即可生成一篇专业文章。无论你需要修改简历、撰写公文,还是分享工作心得,我们都能让写作变得轻松无压力。
AI文档续写:策划活动方案卡壳,写小说灵感枯竭。只需上传你的文档,AI 就能帮你续写、修改、扩展和润色。笔灵AI写作轻松解决写作焦虑。
与AI对话:除了AI 改写、 AI续写,AI 一键生成文案,笔灵AI写作还支持 AI 聊天机器人、AI专家对话,全面满足你的 AI 使用需求。
ai写作生成器: 5秒一篇原创文章的AI写作工具。基于AI文章生成器、Al论文生成器、AI作文生成器、AI文案生成器、AI创作生成器、AI创作工具等的ai智能写作生成器
3.豆豆一键去水印工具 一个微信小程序
短视频一键去水印工具,无限次,抖音水印、快手水印、小红书水印等等一键去水印,全网通用,免费一键图集视频去水印222
4.猫啃网 猫啃网致力于为广大设计师不定期提供新,全且免费的,可商用,无版权问题的免费字体下载。
猫啃网致力于为广大设计师不定期提供新最全且免费的,可商用,无版权问题的免费字体下载。
猫啃网,设计师应该都知道。这里面的字体非常多,一共收集了五百多块免费的中文字体全部都有详细的分类,而且为了让用户下载更方便,能商用的字体都一一标注好了,猫啃网也是我目前看到过的免费可商用字体网站里面对字体的各种具体协议以及相关制作者整理得最清楚的那个,放心下载就行。
5.AI产品榜 ai产品榜精心筛选分析了5000+ AI 产品(web),覆盖了从访问量、时长、增长速度到营收等关键数据。更进一步,我们将这些 AI 产品分门别类,涵盖了100个AI 细分领域,为您呈现这份内容丰富、观点独到的AI产品榜。
AI产品榜适合谁看?
如果您是投资人:本榜单为您提供最具潜力和市场吸引力的AI产品的清晰快照,助您更精准地判断和布局下一步的投资。
如果您是AI公司创始人|高管 产品经理 开发者 战略:从这里,您可以了解到竞争对手的动态和当前市场的趋势,从而更好地制定自家产品的战略和发展方向。
如果您是普通AI产品使用者:您将发现哪些产品最受大众欢迎,以及哪些隐藏的“黑马”值得您一试。
6.新CG儿-Newcger 新CG儿-Newcger数字视觉分享平台,致力于为广大影视后期设计师打造相互交流、分享作品与经验的互动平台,海量视频模板一键免费下载。
新CG儿-Newcger数字视觉分享平台,致力于为广大影视后期设计师打造相互交流、分享作品与经验的互动平台。新CG儿同时还提供了免费AE模板素材下载和国内外CG佳作供CG儿学习与参考。
报错信息 [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: DioException [connection error]: The connection errored: Connection failed This indicates an error which most likely cannot be solved by the library. Error: SocketException: Connection failed (OS Error: Operation not permitted, errno = 1), address = rap2api.taobao.org, port = 80 解决方法 在macos/macos/Runner/DebugProfile.entitlements文件中添加如下代码
<key>com.apple.security.network.client</key> <true/>
一、Linux环境安装&启动Redis 1. 安装步骤 第一步:在官网下载好Redis安装包,上传到Linux中并进行解压到相应(如/opt/software/)目录中;(注意:完成了第二步后,即安装了C/C++语言编译器后,再进行解压,否则执行make编译命令时会报错有个目录没有!)
第二步:执行如下命令,安装C/C++语言编译器;(官网下载的Redis安装包是需要编译后才可以安装的,而Redis是用C/C++语言编写的,CentOS7是没有安装这两款编译器的,所以需要先安装这两款编译器)
yum -y install gcc gcc-c++ 执行以上命令时,报错找不到镜像。以下为解决方案: (1)首先,根据百度AI给出的上面图片中的方法执行后,再执行上面安装编译器的命令还是报错,报错信息为:Cannot find a valid baseurl for repo: base/7/x86_64 ;
(2)然后,根据下面两篇文章的内容,又执行命令 ping 114.114.114.114 能ping通,说明电脑可以上网;再执行 nslookup www.baidu.com(或 ping www.baidu.com)发现无法解析或连接,说明是DNS配置的问题。
(3)针对DNS配置问题的解决步骤依次为:
进入目录 cd /etc/sysconfig/network-scripts/打开该目录下的文件并编辑 vi ifcfg-ens33新加一行,如下图: 重启网络:systemctl restart network.service再次执行 ping www.baidu.com时,发现OK了。 最后再安装编译器就没问题了。
参考文章:
centos7 yum安装使用时提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法(亲测有效☆)_cannot find a valid baseurl for repo: base/7/x86_6-CSDN博客
Linux 用yum安装软件提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法_cannot find a valid baseurl for repo: base/7/x86_6-CSDN博客
文章目录 1. 推导式1.1 列表推导式1.2 集合推导式1.3 字典推导式2.4 生成器推导式 2. 条件表达式3. Lambda函数 按照国际惯例,首先声明:本文只是我自己学习的理解,虽然参考了他人的宝贵见解及成果,但是内容可能存在不准确的地方。如果发现文中错误,希望批评指正,共同进步。
本文总结在Python编程中会使用到的三个(高阶)小技巧:推导式,条件表达式和Lambda函数,并通过实例说明其使用方法。
这三者都是用来简化代码的工具,但可能会影响代码的可读性,在实际编码中要综合考虑是否采用这三种方法。
1. 推导式 Python中的推导式是一种简洁且强大的语法结构,用于从一个或多个可迭代对象高效地创建新的列表、集合、字典或生成器对象。以下是四种主要类型的推导式:
1.1 列表推导式 列表推导式用于快速生成列表,它可以包含一个或多个循环以及条件表达式。
基本语法:
new_list = [expression for item in iterable if condition] 例如:
squares = [x**2 for x in range(10)] # 创建一个包含前10个整数平方的列表 even_squares = [x**2 for x in range(10) if x % 2 == 0] # 创建只包含偶数平方的列表 print输出为:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] [0, 4, 16, 36, 64] 1.
一. 什么是Agent AI Agent(人工智能代理)是一种能够感知环境、进行决策和执行动作的智能实体。 AI Agent也可以称为“智能体”,也可理解为“智能业务助理”,指在大模型技术驱动下,让人们以自然语言为交互方式高自动化地执行和处理专业或繁复的工作任务,从而极大程度释放人员精力。
为了更好地解释这个概念,我们可以从以下几个方面来展开:
自主性(Autonomy):一个Agent具有一定程度的自主性,意味着它能够独立地做出决策,而不需要外部的直接控制。这种自主性可以是完全的,也可以是部分的,取决于agent的设计和应用场景。感知能力(Perception):Agent能够通过传感器或者数据输入来感知其所处的环境。这些感知可以是视觉、听觉、触觉等,或者是通过分析数据集来获得的信息。决策能力(Decision-making):基于感知到的信息,agent能够进行决策。这些决策可以是简单的条件反射,也可以是复杂的基于概率的推理过程。行动能力(Action):决策之后,agent能够执行相应的行动。这些行动可以是物理的,如机器人移动或操作物体,也可以是虚拟的,如软件程序中的数据处理。交互性(Interactivity):Agent通常需要与其他agent或用户进行交互。这种交互可以是协作,也可以是竞争,取决于agent的目标和环境。适应性(Adaptability):一个好的agent能够根据环境的变化和经验来调整自己的行为,以更好地实现目标。这种适应性可能通过学习算法实现,如强化学习。目标导向(Goal-oriented):Agent设计时通常会设定一个或多个目标,其行为和决策都是为了实现这些目标。目标可以是短期的,也可以是长期的,可以是单一的,也可以是多目标优化。 举个通俗的比喻,你有一个魔法机器人朋友,它叫做“小助手”。这个“小助手”非常特别,因为它能够听你说话,看你周围的环境,然后根据它看到和听到的东西来帮你做一些事情。
听和看(感知):就像你的眼睛可以看到世界和耳朵可以听到声音,“小助手”也有它的“眼睛”和“耳朵”。比如,它可以听到你问它天气怎么样,或者看到外面是不是下雨了。思考(决策):当“小助手”听到你问问题或者看到某些事情时,它会在自己的“大脑”里快速思考,就像你在想要不要出去玩,或者选择吃什么零食一样。行动(执行):思考之后,“小助手”会做出决定并行动起来。比如,如果你问它今天的天气,它可能会告诉你需要穿外套,或者如果它看到外面下雨了,它可能会帮你关掉窗户。学习(适应性):随着时间的推移,“小助手”会学习你的喜好和习惯,就像你学会骑自行车后知道怎么保持平衡一样。它可能会开始预测你什么时候想要听音乐,或者在你回家前帮你打开灯。帮助你(目标导向):“小助手”的最终目标是帮助你,让你的生活更简单、更有趣。无论是提醒你做作业,还是和你一起玩游戏,它都会尽力做到最好。 二. Agent应用 个人智能助手(如Siri、Google Assistant):
这些智能助手可以看作是用户界面上的agent,它们能够理解用户的语音指令,提供信息查询、日程管理、设备控制等服务。它们通过自然语言处理(NLP)技术来理解用户的意图,并做出相应的决策和行动。自动驾驶汽车:
自动驾驶汽车是一个复杂的agent,它通过搭载的传感器(如摄像头、雷达、激光雷达)来感知周围环境,使用机器学习算法来做出驾驶决策,并控制车辆的行驶。它的目标是安全、高效地将乘客从一个地方运送到另一个地方。在线客服聊天机器人:
这些聊天机器人通常在网站上提供客户支持服务。它们能够理解用户的文本输入,通过预设的对话流程或机器学习模型来生成回复,帮助用户解决问题或提供信息。它们的目标是提供快速、准确的客户服务,减轻人工客服的负担。智能玩具机器人:
想象你有一个可以走路和说话的小机器人。当你告诉它你想听一个故事时,它会从它的“大脑”(内置的计算机)里选择一个故事来讲给你听。这个机器人就是一个agent,因为它能听懂你的请求并做出回应。智能家居系统:
智能家居系统中的agent可以控制家中的各种设备,如灯光、恒温器、安全摄像头等。它们通过用户的指令或根据环境传感器的数据(如温度、湿度、光线)来自动调节家居环境,提高居住舒适度和能效。
这些例子展示了agent在不同领域的应用,从个人设备到复杂的交通系统,从在线服务到智能玩具,再到家庭自动化,agent的概念贯穿于现代技术的各个方面。 大家会发现有一些其实已经存在很长时间的技术了,但是大模型的出现,让这些有了更多的可能性,也变得更加智能。
接下来,我们将体验并创建第一个Agent!!!
三、体验并创建第一个Agent
进入零代码创建界面
通过对话,复刻一个Agent!
2.1 通过对话创建智能体
完全不需要任何基础,只需要你有idea!
2.2 创建成功,进入【配置】界面补充信息
填写必要信息!
目录 问题描述软件版本原因分析解决方案总结 问题描述 本人在启动Pycharm时一直会弹出【Error launching PyCharm】的弹窗,弹窗信息为【The environment variable JAVA_HOME (with the value of D:Java\jdk-1.8) does not point to a valid JVM installation.】,这个问题困扰了我很久,尝试了网上所有的解决方案无一成功,今天本人终于把这个问题给解决了,特地写下这篇文章向大家分享我的解决方案。
软件版本 以下是我做测试时所用到的软件版本:
Pycharm:PyCharm Community Edition 2023.2.6
JDK:jdk-1.8、jdk-11 和 jdk-17
原因分析 这是我一直都在使用的jdk-1.8,在CMD中也能查看到当前jdk的版本信息,说明配置的环境变量肯定是没有问题的。但不管我怎么修改环境变量的配置,启动Pycharm时仍然会弹出弹窗。
既然不是环境变量的问题,那我猜想是不是新版的Pycharm不支持旧版JDK的原因,于是我去查阅了官方文档,果然让我找到了!
如下图所示:当前IDE版本至少需要Java17才能运行!
附官方文档地址:Selecting the JDK version the IDE will run under
找到原因后,我立马下载了jdk-17,安装后重新修改了环境变量,但是测试结果却让我大失所望!
CMD测试Java版本没问题,说明环境配置的没问题,但打开Pycharm依然会弹出弹窗。
明明已经按照官方的要求,安装JDK17了,还是没有成功,我想是不是我安装的路径不对,实在没辙了,于是我抱着最后一丝幻想重新安装了jdk-17,终于成功了,正确的解决方案如下!
解决方案 官网下载 jdk-17; JDK官方下载地址:Java Downloads
安装jdk到默认路径; 注意:不要修改安装路径,直接点击下一步即可!
配置环境变量; (1)新建JAVA_HOME变量,变量值为默认安装路径;
其实只配置一个JAVA_HOME,Pycharm就已经可以正常运行了,但是此时在CMD中是不能使用JDK的,所以为了避免日后出现不必要的麻烦,建议大家继续配置Path变量。
(2)编辑Path,安装jdk时会默认给配置一条路径,直接删除该路径即可;
(3)新建两条路径,点击确定即可!
到此时弹窗问题就已经完美解决辣!
总结 本人对安装在默认路径下的jdk-1.8、jdk-11和jdk-17 分别进行了测试,除了jdk-1.8不能用,11和17版本都是可以解决该问题的,可能是因为我的Pycharm不是最新版导致的,所以我建议大家直接使用jdk-17,毕竟jdk-17也是一个长期支持版本,或者也可以像我一样,同时安装多个jdk,想使用的时候随时切换也很方便!
最后,真心希望大家在遇到困难和坎坷时,不要放弃,勇于尝试,相信自己,你总归能克服的!
文章目录 前言1. 安装sql server2. 局域网测试连接3. 安装cpolar内网穿透4. 将sqlserver映射到公网5. 公网远程连接6.固定连接公网地址7.使用固定公网地址连接 前言 简单几步实现在Linux centos环境下安装部署sql server数据库,并结合cpolar内网穿透工具,创建安全隧道将其映射到公网上,获取公网地址,实现在外异地远程连接家里/公司的sqlserver数据库,而无需公网IP,无需设置路由器,亦无需云服务器。
1. 安装sql server 下载 SQL Server 2022 (16.x) Red Hat 存储库配置文件:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo 运行以下命令以安装 SQL Server:
sudo yum install -y mssql-server 然后等待安装完成
包安装完成后,使用其完整路径运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。
sudo /opt/mssql/bin/mssql-conf setup 前面三个版本是免费提供许可的:Evaluation、Developer 和 Express 版,我们选择第二个作为测试使用
然后同意一下许可条款,输入yes
选择中文语言
然后设置管理员密码,把密码记住,不要忘了
然后安装完成,会自动启动
完成配置后,验证服务是否正在运行:
systemctl status mssql-server 默认的 SQL Server 端口为1433,TCP协议。 如果为防火墙使用的是FirewallD,则可以使用以下命令:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent 设置完重启防火墙
sudo firewall-cmd --reload 此时,安装完成了。
想象一下,在人工智能(AI)算法不断突破中文写作疆界的今天,我们正步入一个怎样的未来
通义千问与文心一言4.0,作为AI写作领域的两大翘楚,其在编写写作指导与教程时各具何种特色与实力?这不仅是一次技术层面的对决,更是在深入理解和广泛展现中文语言魅力上的严峻考验。
究竟哪一方更能精准把握并传达中文写作的精粹,进而成为广大写作爱好者及专业写作者的首选助手?本文将为您剖析通义千问在文字语言表达力方面的独特优势。
为了公平比较,我们向两者输入了相同的提示语:
写作风格:指南、教程型,是什么样子的?
文心4.0给出了如下回应:
而通义千问的结果如下:
经过初步观察,通义千问的回答显得更为专业详尽,采用列表形式呈现,便于读者迅速抓取关键信息。
接着,我们请双方分别展示一份指南教程型写作风格的实例:
请给出一个简明案例,展示指南、教程型写作风格:【如何制作一杯完美的拿铁咖啡】
文心一言4.0的输出为:
通义千问的答案是:
随后,我们请最强大的AI评测者GPT4对此进行评估。
请帮忙分析以下两篇文章内容的质量,然后我分别输入了通义千问的回答,以及文心一言4.0的回答
gpt4回复
在对通义千问和文心一言4.0生成的文章进行逐一分析后,GPT4回复道:
两篇文章都提供了在家制作拿铁咖啡的实用指南,但各有侧重点和风格。
通义千文以其详细的步骤、清晰的材料和器材列表、以及实用的注意事项脱颖而出,更适合追求完美和细节的读者。文心一言则通过简洁的步骤说明、灵活的材料选择和个性化的调味选项,提供了一个快速且具有一定自由度的制作方法,适合时间有限或喜欢尝试不同风味的读者。 总体来说,第一篇文章在教学深度和细节处理上更胜一筹,而第二篇文章则在简洁性和灵活性方面表现得更好。根据读者的不同需求和偏好,两篇文章各有各的优点和适用场景。
尽管GPT4并未明确偏袒任何一方,但从实际观察来看,通义千问在本例中可能略显优势,而且值得注意的是,通义千问的服务目前是免费的,而文心一言4.0则需要付费使用。
那么,如果是您,在了解这些之后,会选择通义千问还是文心一言作为您的写作助手呢?
如果你觉得本文有用,请点赞。如果本文可能对你的朋友有帮助,请转发给他们。
最后,如果你想了解更多类似工具的信息,欢迎关注我们的微信公众号“医码先锋”,我们会不定期分享更多实用的技术工具和资源。
【Docker】golang操作容器使用rename动态更新容器的名字 大家好 我是寸铁👊
总结了一篇golang操作容器使用rename动态更新容器的名字✨
喜欢的小伙伴可以点点关注 💝
前言 今天遇到一个新的需求,要动态改变运行中的容器名字。
可以考虑先把容器删除再重新创建容器
那这里要考虑一个问题:
假设我容器有业务在跑,那我是不能先把容器删除再重新创建一个容器的!
所以这种方法是不可取的!
那有没有什么方法可以动态改变名字呢?
下面跟着寸铁一起来看看吧!
cmd docker怎么修改容器名称?
在docker实际操作中,我们难免会对已经运行的容器的名字不满意。那么这时候,需要的就是容器改名操作。对于docker容器进行改名的方法,就是docker rename命令。
1.先查看容器列表
docker ps 命令可以查看所有正在运行的容器列表。查找所有状态的容器如下命令:
docker ps -a 2.进行改名操作
查看列表的目的,就是查看 container id和name。
因为docker rename的第一个参数可以是id,还可以是name。
docker rename <my_old_container> <my_new_container> go实现 思路: 与上面的思路一致,先进行查询要改名的容器信息,再将该容器的名字用新的容器名字进行替换即可,api与cmd的名字一致。
demo package main import ( "context" "fmt" "log" "github.com/docker/docker/client" ) func main() { cli, err := client.NewClientWithOpts(client.WithHost("tcp://172.30.140.72:2375"), client.WithAPIVersionNegotiation()) if err != nil { log.Fatal(err) } defer cli.Close() // 提供要修改的容器的名称或ID containerName := "